Home
last modified time | relevance | path

Searched full:nand (Results 1 – 25 of 966) sorted by relevance

12345678910>>...39

/linux/Documentation/devicetree/bindings/mtd/
H A Dbrcm,brcmnand.yaml7 title: Broadcom STB NAND Controller
15 The Broadcom Set-Top Box NAND controller supports low-level access to raw NAND
27 -- Additional SoC-specific NAND controller properties --
29 The NAND controller is integrated differently on the variety of SoCs on which
31 bits with which to control the 8 exposed NAND interrupts, as well as hardware
35 interesting ways, sometimes with registers that lump multiple NAND-related
39 register resources within the NAND controller node above.
58 - description: BCMBCA SoC-specific NAND controller
60 - const: brcm,nand
[all...]
H A Dnvidia-tegra20-nand.txt
H A Ddenali,nand.yaml4 $id: http://devicetree.org/schemas/mtd/denali,nand.yaml#
7 title: Denali NAND controller
15 - altr,socfpga-denali-nand
16 - socionext,uniphier-denali-nand-v5a
17 - socionext,uniphier-denali-nand-v5b
38 nand: controller core clock
42 - const: nand
53 nand: controller core reset
57 - const: nand
59 - const: nand
[all …]
H A Datmel-nand.txt1 Atmel NAND flash controller bindings
3 The NAND flash controller node should be defined under the EBI bus (see
5 One or several NAND devices can be defined under this NAND controller.
6 The NAND controller might be connected to an ECC engine.
8 * NAND controller bindings:
12 "atmel,at91rm9200-nand-controller"
13 "atmel,at91sam9260-nand-controller"
14 "atmel,at91sam9261-nand-controller"
15 "atmel,at91sam9g45-nand-controller"
16 "atmel,sama5d3-nand-controller"
[all …]
H A Dhisi504-nand.txt1 Hisilicon Hip04 Soc NAND controller DT binding
7 NAND controller's registers. The second contains base
8 physical address and size of NAND controller's buffer.
10 - nand-bus-width: See nand-controller.yaml.
11 - nand-ecc-mode: Support none and hw ecc mode.
17 - nand-ecc-strength: Number of bits to correct per ECC step.
18 - nand-ecc-step-size: Number of data bytes covered by a single ECC step.
22 - nand-ecc-strength = <16>, nand-ecc-step-size = <1024>
29 nand: nand@4020000 {
33 nand-bus-width = <8>;
[all …]
H A Dfsmc-nand.txt2 NAND Interface
5 - compatible : "st,spear600-fsmc-nand", "stericsson,fsmc-nand"
12 - nand-skip-bbtscan: Indicates the BBT scanning should be skipped
13 - timings: array of 6 bytes for NAND timings. The meanings of these bytes
27 NAND flash in response to SMWAITn. Zero means 1 cycle,
32 - bank: default NAND bank to use (0-3 are valid, 0 is the default).
33 - nand-ecc-mode : see nand-controller.yaml
34 - nand-ecc-strength : see nand-controller.yaml
35 - nand-ecc-step-size : see nand-controller.yaml
43 compatible = "st,spear600-fsmc-nand";
[all …]
H A Dmediatek,mtk-nfc.yaml7 title: MediaTek(MTK) SoCs raw NAND FLASH controller (NFC)
42 "^nand@[a-f0-9]$":
43 $ref: raw-nand-chip.yaml#
48 nand-ecc-mode:
52 - $ref: nand-controller.yaml#
61 "^nand@[a-f0-9]$":
63 nand-ecc-step-size:
65 nand-ecc-strength:
76 "^nand@[a-f0-9]$":
78 nand-ecc-step-size:
[all …]
H A Dingenic,nand.yaml4 $id: http://devicetree.org/schemas/mtd/ingenic,nand.yaml#
7 title: Ingenic SoCs NAND controller
13 - $ref: nand-controller.yaml#
19 - ingenic,jz4740-nand
20 - ingenic,jz4725b-nand
21 - ingenic,jz4780-nand
25 - description: Bank number, offset and size of first attached NAND chip
26 - description: Bank number, offset and size of second attached NAND chip
27 - description: Bank number, offset and size of third attached NAND chip
28 - description: Bank number, offset and size of fourth attached NAND chip
[all …]
H A Dti,gpmc-nand.yaml4 $id: http://devicetree.org/schemas/mtd/ti,gpmc-nand.yaml#
7 title: Texas Instruments GPMC NAND Flash controller.
14 GPMC NAND controller/Flash is represented as a child of the
21 - ti,am64-nand
22 - ti,omap2-nand
36 ti,nand-ecc-opt:
41 ti,nand-xfer-type:
52 nand-bus-width:
54 Bus width to the NAND chip
61 GPIO connection to R/B signal from NAND chip
[all …]
H A Drockchip,nand-controller.yaml4 $id: http://devicetree.org/schemas/mtd/rockchip,nand-controller.yaml#
7 title: Rockchip SoCs NAND FLASH Controller (NFC)
10 - $ref: nand-controller.yaml#
58 "^nand@[0-7]$":
60 $ref: raw-nand-chip.yaml
66 nand-ecc-mode:
69 nand-ecc-step-size:
72 nand-ecc-strength:
88 nand-bus-width:
98 Only used in combination with 'nand-is-boot-medium'.
[all …]
H A Dnand-controller.yaml4 $id: http://devicetree.org/schemas/mtd/nand-controller.yaml#
7 title: NAND Controller Common Properties
14 The NAND controller should be represented with its own DT node, and
15 all NAND chips attached to this controller should be defined as
16 children nodes of the NAND controller. This representation should be
21 pattern: "^nand-controller(@.*)?"
35 NAND controller (even if they are not used). As many additional
37 lines. 'reg' entries of the NAND chip subnodes become indexes of
43 "^nand@[a-f0-9]$":
45 $ref: raw-nand-chip.yaml#
[all …]
H A Dnand-chip.yaml4 $id: http://devicetree.org/schemas/mtd/nand-chip.yaml#
7 title: NAND Chip Common Properties
16 This file covers the generic description of a NAND chip. It implies that the
17 bus interface should not be taken into account: both raw NAND devices and
18 SPI-NAND devices are concerned by this description.
25 nand-ecc-engine:
29 1/ The ECC engine is part of the NAND controller, in this
31 2/ The ECC engine is part of the NAND part (on-die), in this
37 nand-use-soft-ecc-engine:
41 nand-no-ecc-engine:
[all …]
H A Draw-nand-chip.yaml4 $id: http://devicetree.org/schemas/mtd/raw-nand-chip.yaml#
7 title: Raw NAND Chip Common Properties
13 - $ref: nand-chip.yaml#
19 {size} bytes for a particular raw NAND chip.
28 pattern: "^nand@[a-f0-9]$"
34 nand-ecc-placement:
44 nand-ecc-mode:
52 nand-bus-width:
54 Bus width to the NAND chip
59 nand-on-flash-bbt:
[all …]
H A Dtechnologic,nand.yaml4 $id: http://devicetree.org/schemas/mtd/technologic,nand.yaml#
7 title: Technologic Systems NAND controller
13 - $ref: nand-controller.yaml
18 - const: technologic,ts7200-nand
21 - technologic,ts7300-nand
22 - technologic,ts7260-nand
23 - technologic,ts7250-nand
24 - const: technologic,ts7200-nand
37 nand-controller@60000000 {
38 compatible = "technologic,ts7200-nand";
[all …]
H A Dmxic-nand.txt
/linux/drivers/mtd/nand/raw/
H A Dnuvoton-ma35d1-nand-controller.c148 struct ma35_nand_info *nand = nand_get_controller_data(chip); in ma35_clear_spare() local
152 writel(0xff, nand->regs + MA35_NFI_REG_NANDRA0); in ma35_clear_spare()
155 static inline void read_remaining_bytes(struct ma35_nand_info *nand, u32 *buf, in read_remaining_bytes() argument
158 u32 value = readl(nand->regs + MA35_NFI_REG_NANDRA0 + offset); in read_remaining_bytes()
170 struct ma35_nand_info *nand = nand_get_controller_data(chip); in ma35_read_spare() local
176 read_remaining_bytes(nand, buf, off, 4 - len, 1); in ma35_read_spare()
182 *buf++ = readl(nand->regs + MA35_NFI_REG_NANDRA0 + off + (i * 4)); in ma35_read_spare()
184 read_remaining_bytes(nand, buf, off + (size & ~3), size % 4, 0); in ma35_read_spare()
189 struct ma35_nand_info *nand = nand_get_controller_data(chip); in ma35_write_spare() local
195 writel(*buf++, nand->regs + MA35_NFI_REG_NANDRA0 + j); in ma35_write_spare()
[all …]
H A Dmeson_nand.c3 * Amlogic Meson Nand Flash Controller Driver
101 /* nand flash controller delay 3 ns */
124 struct nand_chip nand; member
258 static struct meson_nfc_nand_chip *to_meson_nand(struct nand_chip *nand) in to_meson_nand() argument
260 return container_of(nand, struct meson_nfc_nand_chip, nand); in to_meson_nand()
263 static void meson_nfc_select_chip(struct nand_chip *nand, int chip) in meson_nfc_select_chip() argument
265 struct meson_nfc_nand_chip *meson_chip = to_meson_nand(nand); in meson_nfc_select_chip()
266 struct meson_nfc *nfc = nand_get_controller_data(nand); in meson_nfc_select_chip()
306 static int meson_nfc_is_boot_page(struct nand_chip *nand, int page) in meson_nfc_is_boot_page() argument
308 const struct meson_nfc_nand_chip *meson_chip = to_meson_nand(nand); in meson_nfc_is_boot_page()
[all …]
H A Dnand_ids.c25 * Some incompatible NAND chips share device ID's and so must be
68 LEGACY_ID_NAND("NAND 4MiB 5V 8-bit", 0x6B, 4, SZ_8K, SP_OPTIONS),
69 LEGACY_ID_NAND("NAND 4MiB 3,3V 8-bit", 0xE3, 4, SZ_8K, SP_OPTIONS),
70 LEGACY_ID_NAND("NAND 4MiB 3,3V 8-bit", 0xE5, 4, SZ_8K, SP_OPTIONS),
71 LEGACY_ID_NAND("NAND 8MiB 3,3V 8-bit", 0xD6, 8, SZ_8K, SP_OPTIONS),
72 LEGACY_ID_NAND("NAND 8MiB 3,3V 8-bit", 0xE6, 8, SZ_8K, SP_OPTIONS),
74 LEGACY_ID_NAND("NAND 16MiB 1,8V 8-bit", 0x33, 16, SZ_16K, SP_OPTIONS),
75 LEGACY_ID_NAND("NAND 16MiB 3,3V 8-bit", 0x73, 16, SZ_16K, SP_OPTIONS),
76 LEGACY_ID_NAND("NAND 16MiB 1,8V 16-bit", 0x43, 16, SZ_16K, SP_OPTIONS16),
77 LEGACY_ID_NAND("NAND 16MiB 3,3V 16-bit", 0x53, 16, SZ_16K, SP_OPTIONS16),
[all …]
/linux/drivers/mtd/nand/
H A Decc-sw-bch.c14 #include <linux/mtd/nand.h>
15 #include <linux/mtd/nand-ecc-sw-bch.h>
19 * @nand: NAND device
23 int nand_ecc_sw_bch_calculate(struct nand_device *nand, in nand_ecc_sw_bch_calculate() argument
26 struct nand_ecc_sw_bch_conf *engine_conf = nand->ecc.ctx.priv; in nand_ecc_sw_bch_calculate()
30 bch_encode(engine_conf->bch, buf, nand->ecc.ctx.conf.step_size, code); in nand_ecc_sw_bch_calculate()
42 * @nand: NAND device
49 int nand_ecc_sw_bch_correct(struct nand_device *nand, unsigned char *buf, in nand_ecc_sw_bch_correct() argument
52 struct nand_ecc_sw_bch_conf *engine_conf = nand->ecc.ctx.priv; in nand_ecc_sw_bch_correct()
53 unsigned int step_size = nand->ecc.ctx.conf.step_size; in nand_ecc_sw_bch_correct()
[all …]
H A Dbbt.c10 #define pr_fmt(fmt) "nand-bbt: " fmt
12 #include <linux/mtd/nand.h>
17 * @nand: NAND device
23 int nanddev_bbt_init(struct nand_device *nand) in nanddev_bbt_init() argument
26 unsigned int nblocks = nanddev_neraseblocks(nand); in nanddev_bbt_init()
28 nand->bbt.cache = bitmap_zalloc(nblocks * bits_per_block, GFP_KERNEL); in nanddev_bbt_init()
29 if (!nand->bbt.cache) in nanddev_bbt_init()
38 * @nand: NAND device
42 void nanddev_bbt_cleanup(struct nand_device *nand) in nanddev_bbt_cleanup() argument
44 bitmap_free(nand->bbt.cache); in nanddev_bbt_cleanup()
[all …]
H A Decc-realtek.c8 #include <linux/mtd/nand.h>
19 * It can run for arbitrary NAND flash chips with different block and OOB sizes. Currently there
20 * are only two known devices in the wild that have NAND flash and make use of this ECC engine
99 static inline void *nand_to_ctx(struct nand_device *nand) in nand_to_ctx() argument
101 return nand->ecc.ctx.priv; in nand_to_ctx()
104 static inline struct rtl_ecc_engine *nand_to_rtlc(struct nand_device *nand) in nand_to_rtlc() argument
106 struct nand_ecc_engine *eng = nand->ecc.engine; in nand_to_rtlc()
114 struct nand_device *nand = mtd_to_nanddev(mtd); in rtl_ecc_ooblayout_ecc() local
115 struct rtl_ecc_ctx *ctx = nand_to_ctx(nand); in rtl_ecc_ooblayout_ecc()
129 struct nand_device *nand = mtd_to_nanddev(mtd); in rtl_ecc_ooblayout_free() local
[all …]
/linux/drivers/mtd/nand/raw/atmel/
H A Dnand-controller.c13 * Derived from drivers/mtd/nand/autcpu12.c (removed in v3.8)
24 * (u-boot-1.1.5/board/atmel/at91sam9263ek/nand.c)
30 * Add Nand Flash Controller support for SAMA5 SoC
201 struct atmel_nand *nand);
203 int (*setup_interface)(struct atmel_nand *nand, int csline,
205 int (*exec_op)(struct atmel_nand *nand,
337 dev_err(nc->base.dev, "Waiting NAND R/B Timeout\n"); in atmel_nfc_wait()
462 "Failed to send NAND command (err = %d)!", in atmel_nfc_exec_op()
471 static void atmel_nand_data_in(struct atmel_nand *nand, void *buf, in atmel_nand_data_in() argument
476 nc = to_nand_controller(nand in atmel_nand_data_in()
495 atmel_nand_data_out(struct atmel_nand * nand,const void * buf,unsigned int len,bool force_8bit) atmel_nand_data_out() argument
519 atmel_nand_waitrdy(struct atmel_nand * nand,unsigned int timeout_ms) atmel_nand_waitrdy() argument
528 atmel_hsmc_nand_waitrdy(struct atmel_nand * nand,unsigned int timeout_ms) atmel_hsmc_nand_waitrdy() argument
544 atmel_nand_select_target(struct atmel_nand * nand,unsigned int cs) atmel_nand_select_target() argument
550 atmel_hsmc_nand_select_target(struct atmel_nand * nand,unsigned int cs) atmel_hsmc_nand_select_target() argument
573 atmel_smc_nand_exec_instr(struct atmel_nand * nand,const struct nand_op_instr * instr) atmel_smc_nand_exec_instr() argument
610 atmel_smc_nand_exec_op(struct atmel_nand * nand,const struct nand_operation * op,bool check_only) atmel_smc_nand_exec_op() argument
635 struct atmel_nand *nand = to_atmel_nand(chip); atmel_hsmc_exec_cmd_addr() local
664 struct atmel_nand *nand = to_atmel_nand(chip); atmel_hsmc_exec_rw() local
682 struct atmel_nand *nand = to_atmel_nand(chip); atmel_hsmc_exec_waitrdy() local
700 atmel_hsmc_nand_exec_op(struct atmel_nand * nand,const struct nand_operation * op,bool check_only) atmel_hsmc_nand_exec_op() argument
790 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_pmecc_enable() local
809 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_pmecc_disable() local
817 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_pmecc_generate_eccbytes() local
852 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_pmecc_correct_data() local
905 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_pmecc_write_pg() local
987 struct atmel_nand *nand = to_atmel_nand(chip); atmel_hsmc_nand_pmecc_write_pg() local
1048 struct atmel_nand *nand = to_atmel_nand(chip); atmel_hsmc_nand_pmecc_read_pg() local
1116 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_pmecc_init() local
1239 atmel_smc_nand_prepare_smcconf(struct atmel_nand * nand,const struct nand_interface_config * conf,struct atmel_smc_cs_conf * smcconf) atmel_smc_nand_prepare_smcconf() argument
1484 atmel_smc_nand_setup_interface(struct atmel_nand * nand,int csline,const struct nand_interface_config * conf) atmel_smc_nand_setup_interface() argument
1509 atmel_hsmc_nand_setup_interface(struct atmel_nand * nand,int csline,const struct nand_interface_config * conf) atmel_hsmc_nand_setup_interface() argument
1542 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_setup_interface() local
1563 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_exec_op() local
1572 atmel_nand_init(struct atmel_nand_controller * nc,struct atmel_nand * nand) atmel_nand_init() argument
1596 atmel_smc_nand_init(struct atmel_nand_controller * nc,struct atmel_nand * nand) atmel_smc_nand_init() argument
1621 atmel_nand_controller_remove_nand(struct atmel_nand * nand) atmel_nand_controller_remove_nand() argument
1641 struct atmel_nand *nand; atmel_nand_create() local
1742 atmel_nand_controller_add_nand(struct atmel_nand_controller * nc,struct atmel_nand * nand) atmel_nand_controller_add_nand() argument
1777 struct atmel_nand *nand, *tmp; atmel_nand_controller_remove_nands() local
1794 struct atmel_nand *nand; atmel_nand_controller_legacy_add_nands() local
1894 struct atmel_nand *nand; atmel_nand_controller_add_nands() local
1995 struct atmel_nand *nand = to_atmel_nand(chip); atmel_nand_attach_chip() local
2656 struct atmel_nand *nand; atmel_nand_controller_resume() local
[all...]
/linux/Documentation/devicetree/bindings/pinctrl/
H A Dmarvell,kirkwood-pinctrl.txt24 mpp0 0 gpio, nand(io2), spi(cs)
25 mpp1 1 gpo, nand(io3), spi(mosi)
26 mpp2 2 gpo, nand(io4), spi(sck)
27 mpp3 3 gpo, nand(io5), spi(miso)
28 mpp4 4 gpio, nand(io6), uart0(rxd), ptp(clk)
29 mpp5 5 gpo, nand(io7), uart0(txd), ptp(trig)
45 mpp18 18 gpo, nand(io0)
46 mpp19 19 gpo, nand(io1)
62 mpp0 0 gpio, nand(io2), spi(cs)
63 mpp1 1 gpo, nand(io3), spi(mosi)
[all …]
H A Dlantiq,pinctrl-xway.txt56 ebu wait, nand ale, nand cs1, nand cle, spi_di, spi_do, spi_clk, spi_cs1,
67 ebu cs1, ebu wait, nand ale, nand cs1, nand cle, nand rdy, nand rd,
79 ebu cs1, ebu wait, nand ale, nand cs1, nand cle, nand rdy, nand rd,
93 exin0, exin1, exin2, exin4, nand ale, nand cs0, nand cs1, nand cle,
94 nand rdy, nand rd, nand_d0, nand_d1, nand_d2, nand_d3, nand_d4, nand_d5,
95 nand_d6, nand_d7, nand_d1, nand wr, nand wp, nand se, spi_di, spi_do,
/linux/drivers/mtd/nand/raw/brcmnand/
H A DKconfig2 tristate "Broadcom STB NAND controller"
6 Enables the Broadcom NAND controller driver. The controller was
13 tristate "Broadcom BCM63xx NAND controller glue"
16 Enables the BRCMNAND glue driver to register the NAND controller
20 tristate "Broadcom BCMA NAND controller"
29 tristate "Broadcom BCMBCA NAND controller glue"
32 Enables the BRCMNAND glue driver to register the NAND controller
36 tristate "Broadcom STB Nand controller glue"
39 Enables the BRCMNAND glue driver to register the NAND controller
43 tristate "Broadcom iProc NAND controller glue"
[all …]

12345678910>>...39