/Linux-v6.1/Documentation/devicetree/bindings/mtd/ |
D | nand-chip.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mtd/nand-chip.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Miquel Raynal <miquel.raynal@bootlin.com> 15 SPI-NAND devices are concerned by this description. 20 Contains the chip-select IDs. 22 nand-ecc-engine: 24 A phandle on the hardware ECC engine if any. There are 26 1/ The ECC engine is part of the NAND controller, in this [all …]
|
D | gpmi-nand.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mtd/gpmi-nand.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale General-Purpose Media Interface (GPMI) binding 10 - Han Xu <han.xu@nxp.com> 14 flash chips. The device tree may optionally contain sub-nodes 21 - enum: 22 - fsl,imx23-gpmi-nand 23 - fsl,imx28-gpmi-nand [all …]
|
/Linux-v6.1/drivers/mtd/nand/raw/gpmi-nand/ |
D | gpmi-nand.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2010-2015 Freescale Semiconductor, Inc. 18 #include <linux/dma/mxs-dma.h> 19 #include "gpmi-nand.h" 20 #include "gpmi-regs.h" 21 #include "bch-regs.h" 24 #define GPMI_NAND_GPMI_REGS_ADDR_RES_NAME "gpmi-nand" 52 while ((readl(addr) & mask) && --timeout) in clear_poll_bit() 96 while ((!(readl(reset_addr) & MODULE_CLKGATE)) && --timeout) in gpmi_reset_block() 116 return -ETIMEDOUT; in gpmi_reset_block() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/arm/ |
D | l2c2x0.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rob Herring <robh@kernel.org> 16 models (Note 1). Some of the properties that are just prefixed "cache-*" are 22 cache controllers as found in e.g. Cortex-A15/A7/A57/A53. These 28 - $ref: /schemas/cache-controller.yaml# 33 - enum: 34 - arm,pl310-cache 35 - arm,l220-cache [all …]
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | imx6ull-myir-mys-6ulx-eval.dts | 1 // SPDX-License-Identifier: GPL-2.0 7 /dts-v1/; 9 #include "imx6ull-myir-mys-6ulx.dtsi" 12 model = "MYiR i.MX6ULL MYS-6ULX Single Board Computer with NAND"; 13 compatible = "myir,imx6ull-mys-6ulx-eval", "fsl,imx6ull"; 17 fsl,use-minimum-ecc;
|
D | imx6ull-colibri.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 3 * Copyright 2018-2022 Toradex 16 compatible = "pwm-backlight"; 17 brightness-levels = <0 4 8 16 32 64 128 255>; 18 default-brightness-level = <6>; 19 enable-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; 20 pinctrl-names = "default"; 21 pinctrl-0 = <&pinctrl_gpio_bl_on>; 22 power-supply = <®_3v3>; 27 gpio-keys { [all …]
|
/Linux-v6.1/drivers/mtd/nand/raw/ |
D | mtk_nand.c | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 6 * Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> 10 #include <linux/dma-mapping.h> 20 #include <linux/mtd/nand-ecc-mtk.h> 90 #define MTK_NAME "mtk-nand" 147 struct mtk_ecc *ecc; member 186 return (u8 *)p + i * chip->ecc.size; in data_ptr() 198 if (i < mtk_nand->bad_mark.sec) in oob_ptr() 199 poi = chip->oob_poi + (i + 1) * mtk_nand->fdm.reg_size; in oob_ptr() 200 else if (i == mtk_nand->bad_mark.sec) in oob_ptr() [all …]
|
D | denali.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright © 2009-2010, Intel Corporation and its suppliers. 6 * Copyright (c) 2017-2019 Socionext Inc. 12 #include <linux/dma-mapping.h> 23 #define DENALI_NAND_NAME "denali-nand" 31 #define DENALI_MAP10 (2 << 26) /* high-level control plane */ 39 #define DENALI_BANK(denali) ((denali)->active_bank << 24) 41 #define DENALI_INVALID_BANK -1 50 return container_of(chip->controller, struct denali_controller, in to_denali_controller() 55 * Direct Addressing - the slave address forms the control information (command [all …]
|
D | pl35x-nand-controller.c | 1 // SPDX-License-Identifier: GPL-2.0 33 #define PL35X_NANDC_DRIVER_NAME "pl35x-nand-controller" 60 /* SMC ECC status register (RO) */ 63 /* SMC ECC configuration register */ 70 /* SMC ECC command 1 register */ 76 /* SMC ECC command 2 register */ 82 /* SMC ECC value registers (RO) */ 128 * struct pl35x_nandc - NAND flash controller driver structure 136 * @ecc_buf: Temporary buffer to extract ECC bytes 164 if (section >= chip->ecc.steps) in pl35x_ecc_ooblayout16_ecc() [all …]
|
D | tegra_nand.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright (C) 2014-2015 Lucas Stach <dev@lynxeye.de> 10 #include <linux/dma-mapping.h> 34 #define COMMAND_TRANS_SIZE(size) ((((size) - 1) & 0xf) << 20) 40 #define COMMAND_CLE_SIZE(size) ((((size) - 1) & 0x3) << 4) 41 #define COMMAND_ALE_SIZE(size) ((((size) - 1) & 0xf) << 0) 156 #define OFFSET(val, off) ((val) < (off) ? 0 : (val) - (off)) 185 struct mtd_oob_region ecc; member 207 int bytes_per_step = DIV_ROUND_UP(BITS_PER_STEP_RS * chip->ecc.strength, in tegra_nand_ooblayout_rs_ecc() 211 return -ERANGE; in tegra_nand_ooblayout_rs_ecc() [all …]
|
D | marvell_nand.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Author: Miquel RAYNAL <miquel.raynal@free-electrons.com> 13 * The main visible difference is that NFCv1 only has Hamming ECC 14 * capabilities, while NFCv2 also embeds a BCH ECC engine. Also, DMA 17 * The ECC layouts are depicted in details in Marvell AN-379, but here 21 * or 4) and each chunk will have its own ECC "digest" of 6B at the 28 * +-------------------------------------------------------------+ 29 * | Data 1 | ... | Data N | ECC 1 | ... | ECCN | Free OOB bytes | 30 * +-------------------------------------------------------------+ 33 * ECC) sections and potentially an extra one to deal with [all …]
|
D | renesas-nand-controller.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Evatronix/Renesas R-Car Gen3, RZ/N1D, RZ/N1S, RZ/N1L NAND controller driver 11 #include <linux/dma-mapping.h> 121 #define TIMINGS_ASYN_TRWP(x) FIELD_PREP(GENMASK(3, 0), max((x), 1U) - 1) 122 #define TIMINGS_ASYN_TRWH(x) FIELD_PREP(GENMASK(7, 4), max((x), 1U) - 1) 125 #define TIM_SEQ0_TCCS(x) FIELD_PREP(GENMASK(5, 0), max((x), 1U) - 1) 126 #define TIM_SEQ0_TADL(x) FIELD_PREP(GENMASK(13, 8), max((x), 1U) - 1) 127 #define TIM_SEQ0_TRHW(x) FIELD_PREP(GENMASK(21, 16), max((x), 1U) - 1) 128 #define TIM_SEQ0_TWHR(x) FIELD_PREP(GENMASK(29, 24), max((x), 1U) - 1) 131 #define TIM_SEQ1_TWB(x) FIELD_PREP(GENMASK(5, 0), max((x), 1U) - 1) [all …]
|
/Linux-v6.1/include/linux/mtd/ |
D | rawnand.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright © 2000-2010 David Woodhouse <dwmw2@infradead.org> 73 #define NAND_CMD_NONE -1 82 #define NAND_DATA_IFACE_CHECK_ONLY -1 85 * Constants for Hardware ECC 87 /* Reset Hardware ECC for read */ 89 /* Reset Hardware ECC for write */ 91 /* Enable Hardware ECC before syndrome is read back from flash */ 96 * ecc.correct() returns -EBADMSG. 122 * Chip requires ready check on read (for auto-incremented sequential read). [all …]
|
/Linux-v6.1/drivers/mtd/nand/ |
D | ecc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Generic Error-Correcting Code (ECC) engine 10 * This file describes the abstraction of any NAND ECC engine. It has been 11 * designed to fit most cases, including parallel NANDs and SPI-NANDs. 13 * There are three main situations where instantiating this ECC engine makes 15 * - external: The ECC engine is outside the NAND pipeline, typically this 16 * is a software ECC engine, or an hardware engine that is 18 * - pipelined: The ECC engine is inside the NAND pipeline, ie. on the 20 * controllers. In the pipeline case, the ECC bytes are 23 * - ondie: The ECC engine is inside the NAND pipeline, on the chip's side. [all …]
|
/Linux-v6.1/arch/s390/include/uapi/asm/ |
D | pkey.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 31 /* Minimum size of a key blob */ 40 /* the newer ioctls use a pkey_key_type enum for type information */ 50 /* the newer ioctls use a pkey_key_size enum for key size information */ 58 /* some of the newer ioctls use these flags */ 113 __u16 cardnr; /* in: card to use or FFFF for any */ 124 __u16 cardnr; /* in: card to use or FFFF for any */ 136 __u16 cardnr; /* in: card to use or FFFF for any */ 230 * (return -1 with errno ENODEV). You may use the PKEY_APQNS4KT ioctl to 234 * generating CCA cipher keys you can use one or more of the PKEY_KEYGEN_* [all …]
|
/Linux-v6.1/drivers/spi/ |
D | spi-mtk-snfi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Driver for the SPI-NAND mode of Mediatek NAND Flash Interface 7 // This driver is based on the SPI-NAND mtd driver from Mediatek SDK: 13 // like the following: (sizeof(FDM + ECC) = snf->nfi_cfg.spare_size) 14 // +---------+------+------+---------+------+------+-----+ 16 // +---------+------+------+---------+------+------+-----+ 17 // With auto-format turned on, DMA only returns this part: 18 // +---------+---------+-----+ 20 // +---------+---------+-----+ 21 // The FDM data will be filled to the registers, and ECC parity data isn't [all …]
|
/Linux-v6.1/drivers/crypto/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 34 Use VIA PadLock for AES algorithm. 39 called padlock-aes. 48 Use VIA PadLock for SHA1/SHA256 algorithms. 53 called padlock-sha. 61 Say 'Y' here to use the AMD Geode LX processor on-board AES 65 will be called geode-aes. 104 down the use of the available crypto hardware. 113 kernel or userspace applications may use these functions. 131 AES cipher algorithms for use with protected key. [all …]
|
/Linux-v6.1/Documentation/admin-guide/ |
D | ras.rst | 33 ------------- 44 * Memory – add error correction logic (ECC) to detect and correct errors; 47 Self-Monitoring, Analysis and Reporting Technology (SMART). 55 --------------- 57 Most mechanisms used on modern systems use technologies like Hamming 68 * **Correctable Error (CE)** - the error detection mechanism detected and 72 * **Uncorrected Error (UE)** - the amount of errors happened above the error 73 correction threshold, and the system was unable to auto-correct. 75 * **Fatal Error** - when an UE error happens on a critical component of the 79 * **Non-fatal Error** - when an UE error happens on an unused component, [all …]
|
/Linux-v6.1/drivers/mtd/nand/raw/brcmnand/ |
D | brcmnand.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2010-2015 Broadcom Corporation 17 #include <linux/dma-mapping.h> 89 #define FLASH_DMA_MODE_STOP_ON_ERROR BIT(1) /* stop in Uncorr ECC error */ 237 /* List of NAND hosts (one for each chip-select) */ 240 /* EDU info, per-transaction */ 261 /* in-memory cache of the FLASH_CACHE, used only for some commands */ 267 const u8 *cs_offsets; /* within each chip-select */ 277 /* for low-power standby/resume only */ 297 /* use for low-power standby/resume only */ [all …]
|
/Linux-v6.1/include/linux/ |
D | edac.h | 6 * 2006-2008 (c) MontaVista Software, Inc. This file is licensed under 26 #define EDAC_OPSTATE_INVAL -1 60 * enum dev_type - describe the type of memory DRAM chips used at the stick 93 * enum hw_event_mc_err_type - type of the detected error 95 * @HW_EVENT_ERR_CORRECTED: Corrected Error - Indicates that an ECC 97 * @HW_EVENT_ERR_UNCORRECTED: Uncorrected Error - Indicates an error that 98 * can't be corrected by ECC, but it is not 101 * it for example, by re-trying the operation). 102 * @HW_EVENT_ERR_DEFERRED: Deferred Error - Indicates an uncorrectable 108 * @HW_EVENT_ERR_FATAL: Fatal Error - Uncorrected error that could not [all …]
|
/Linux-v6.1/drivers/net/ethernet/intel/e1000e/ |
D | defines.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright(c) 1999 - 2018 Intel Corporation. */ 46 #define E1000_CTRL_EXT_IAME 0x08000000 /* Int ACK Auto-mask */ 100 #define E1000_MANC_SMBUS_EN 0x00000001 /* SMBus Enabled - RO */ 101 #define E1000_MANC_ASF_EN 0x00000002 /* ASF Enabled - RO */ 147 /* Use byte values for the following shift parameters 183 #define E1000_CTRL_ASDE 0x00000020 /* Auto-speed detect enable */ 185 #define E1000_CTRL_ILOS 0x00000080 /* Invert Loss-Of Signal */ 238 /* 1000/H is not supported, nor spec-compliant. */ 292 #define E1000_TCTL_RTLC 0x01000000 /* Re-transmit on late collision */ [all …]
|
/Linux-v6.1/drivers/edac/ |
D | amd64_edac.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * Set by command line parameter. If BIOS has enabled the ECC, this override is 9 * cleared to prevent re-enabling the hardware by this driver. 20 if (!fam_type->flags.zn_regs_v2) in get_umc_reg() 33 /* Per-node stuff */ 41 * bandwidth to a valid bit pattern. The 'set' operation finds the 'matching- 83 func, PCI_FUNC(pdev->devfn), offset); in __amd64_read_pci_cfg_dword() 96 func, PCI_FUNC(pdev->devfn), offset); in __amd64_write_pci_cfg_dword() 108 amd64_read_pci_cfg(pvt->F1, DCT_CFG_SEL, ®); in f15h_select_dct() 109 reg &= (pvt->model == 0x30) ? ~3 : ~1; in f15h_select_dct() [all …]
|
/Linux-v6.1/drivers/mtd/ |
D | sm_ftl.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2009 - Maxim Levitsky 16 #include <linux/mtd/nand-ecc-sw-hamming.h> 31 MODULE_PARM_DESC(debug, "Debug level (0-2)"); 34 /* ------------------- sysfs attributes ---------------------------------- */ 47 strncpy(buf, sm_attr->data, sm_attr->len); in sm_attr_show() 48 return sm_attr->len; in sm_attr_show() 61 vendor = kstrndup(ftl->cis_buffer + SM_CIS_VENDOR_OFFSET, in sm_create_sysfs_attributes() 62 SM_SMALL_PAGE - SM_CIS_VENDOR_OFFSET, GFP_KERNEL); in sm_create_sysfs_attributes() 72 sysfs_attr_init(&vendor_attribute->dev_attr.attr); in sm_create_sysfs_attributes() [all …]
|
/Linux-v6.1/drivers/mtd/ubi/ |
D | io.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 10 * UBI input/output sub-system. 12 * This sub-system provides a uniform way to work with all kinds of the 18 * sub-system validates every single header it reads from the flash media. 24 * (i.e. aligned to the minimum I/O unit size). Data starts next to the VID 35 * @ubi->mtd->writesize field. But as an exception, UBI admits use of another 41 * headers at one NAND page. Thus, UBI may use "sub-page" size as the minimal 42 * I/O unit for the headers (the @ubi->hdrs_min_io_size field). But it still 43 * reports NAND page size (@ubi->min_io_size) as a minimal I/O unit for the UBI 46 * Example: some Samsung NANDs with 2KiB pages allow 4x 512-byte writes, so [all …]
|
/Linux-v6.1/fs/pstore/ |
D | platform.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Persistent Storage - platform driver interface parts. 5 * Copyright (C) 2007-2008 Google, Inc. 39 * We defer making "oops" entries appear in pstore - see 43 static int pstore_update_ms = -1; 46 "(default is -1, which means runtime updates are disabled; " 57 "powerpc-ofw", 58 "powerpc-common", 60 "powerpc-opal", 81 MODULE_PARM_DESC(backend, "specific backend to use"); [all …]
|