• Home
  • Raw
  • Download

Lines Matching +full:len +full:- +full:or +full:- +full:define

10 The generic NAND driver supports almost all NAND and AG-AND based chips
15 board drivers or filesystem drivers suitable for NAND devices.
31 --------------------------
37 - [MTD Interface]
43 - [NAND Interface]
48 - [GENERIC]
53 - [DEFAULT]
65 -------------------------------
71 - [INTERN]
77 - [REPLACEABLE]
86 - [BOARDSPECIFIC]
92 - [OPTIONAL]
105 -------------
109 using kmalloc or you can allocate it statically. The NAND chip structure
131 -----------------
133 If you want to divide your device into partitions, then define a
138 #define NUM_PARTITIONS 2
150 -------------------------
153 NAND chip(s). The access can be done by GPIO pins or by address lines.
183 case NAND_CTL_SETCLE: this->legacy.IO_ADDR_W |= CLE_ADRR_BIT; break;
184 case NAND_CTL_CLRCLE: this->legacy.IO_ADDR_W &= ~CLE_ADRR_BIT; break;
185 case NAND_CTL_SETALE: this->legacy.IO_ADDR_W |= ALE_ADRR_BIT; break;
186 case NAND_CTL_CLRALE: this->legacy.IO_ADDR_W &= ~ALE_ADRR_BIT; break;
192 ---------------------
195 connected to a GPIO or other accessible I/O pin, this function is used
200 and the function pointer this->legacy.dev_ready is set to NULL.
203 -------------
223 err = -ENOMEM;
233 err = -EIO;
238 this->legacy.IO_ADDR_R = baseaddr;
239 this->legacy.IO_ADDR_W = baseaddr;
241 this->hwcontrol = board_hwcontrol;
243 this->legacy.chip_delay = CHIP_DEPENDEND_COMMAND_DELAY;
245 this->legacy.dev_ready = board_dev_ready;
246 this->eccmode = NAND_ECC_SOFT;
250 err = -ENXIO;
268 -------------
302 ---------------------
341 this->legacy.IO_ADDR_R &= ~BOARD_NAND_ADDR_MASK;
342 this->legacy.IO_ADDR_W &= ~BOARD_NAND_ADDR_MASK;
345 this->legacy.IO_ADDR_R |= BOARD_NAND_ADDR_CHIP0;
346 this->legacy.IO_ADDR_W |= BOARD_NAND_ADDR_CHIP0;
350 this->legacy.IO_ADDR_R |= BOARD_NAND_ADDR_CHIPn;
351 this->legacy.IO_ADDR_W |= BOARD_NAND_ADDR_CHIPn;
358 --------------------
365 - NAND_ECC_HW3_256
369 - NAND_ECC_HW3_512
373 - NAND_ECC_HW6_512
377 - NAND_ECC_HW8_512
386 - enable_hwecc
389 or initialize the hardware generator in this function. The function
393 - calculate_ecc
400 - correct_data
404 corrected. If the error is not correctable return -1. If your
412 Many hardware ECC implementations provide Reed-Solomon codes and
414 standard Reed-Solomon syndrome before calling the error correction code
415 in the generic Reed-Solomon library.
422 code. Provide a matching oob-layout in this case. See rts_from4.c and
429 -----------------------
440 - Per device
445 - Per chip
450 - Fixed offset
455 - Automatic placed
458 the end or at the beginning of a chip (device)
460 - Mirrored tables
477 It may be desired or necessary to keep a bad block table in FLASH. For
478 AG-AND chips this is mandatory, as they have no factory marked bad
493 nand chip structure before calling nand_scan(). For AG-AND chips is
498 - Store bad block table per chip
500 - Use 2 bits per block
502 - Automatic placement at the end of the chip
504 - Use mirrored tables with version numbers
506 - Reserve 4 blocks at the end of the chip
520 options field. The options define most of the table properties. Use the
521 predefined constants from rawnand.h to define the options.
523 - Number of bits per block
527 - Table per chip
533 - Table location is absolute
535 Use the option constant NAND_BBT_ABSPAGE and define the absolute
540 the fields pattern, veroffs, offs, len can be left uninitialized
542 - Table location is automatically detected
544 The table can either be located in the first or the last good blocks
550 the pattern has to be stored in len and the offset in the spare area
554 - Table creation
560 - Table write support
571 - Table version control
582 - Save block contents on write
591 - Number of reserved blocks
601 --------------------------
606 - Placement defined by fs driver
608 - Automatic placement
630 - useecc
633 file include/mtd/mtd-abi.h contains constants to select ecc and
639 - eccbytes
643 - eccpos
648 - oobfree
691 ----------------------------------------
736 0x08 - 0x0F Autoplace 0 - 7
750 0x02-0x27 Autoplace 0 - 37
810 it again, are restricted to 1-3 writes, depending on the manufacturers
814 or hold a writebuffer to collect smaller writes until they sum up to
826 - flasherase, flasheraseall: Erase and format FLASH partitions
828 - nandwrite: write filesystem images to NAND FLASH
830 - nanddump: dump the contents of a NAND FLASH partitions
843 ---------------------
848 These constants are defined in rawnand.h. They are OR-ed together to
852 #define NAND_BUSWIDTH_16 0x00000002
854 #define NAND_NO_PADDING 0x00000004
856 #define NAND_CACHEPRG 0x00000008
858 #define NAND_COPYBACK 0x00000010
861 #define NAND_IS_AND 0x00000020
864 #define NAND_4PAGE_ARRAY 0x00000040
870 These constants are defined in rawnand.h. They are OR-ed together to
875 * data bytes. Applies for DOC and AG-AND Renesas HW Reed Solomon generators */
876 #define NAND_HWECC_SYNDROME 0x00020000
880 -----------------------
885 #define NAND_ECC_NONE 0
887 #define NAND_ECC_SOFT 1
889 #define NAND_ECC_HW3_256 2
891 #define NAND_ECC_HW3_512 3
893 #define NAND_ECC_HW6_512 4
895 #define NAND_ECC_HW8_512 6
899 ----------------------------------
905 #define NAND_CTL_SETNCE 1
907 #define NAND_CTL_CLRNCE 2
909 #define NAND_CTL_SETCLE 3
911 #define NAND_CTL_CLRCLE 4
913 #define NAND_CTL_SETALE 5
915 #define NAND_CTL_CLRALE 6
917 #define NAND_CTL_SETWP 7
919 #define NAND_CTL_CLRWP 8
923 ---------------------------------
931 #define NAND_BBT_NRBITS_MSK 0x0000000F
932 #define NAND_BBT_1BIT 0x00000001
933 #define NAND_BBT_2BIT 0x00000002
934 #define NAND_BBT_4BIT 0x00000004
935 #define NAND_BBT_8BIT 0x00000008
937 #define NAND_BBT_LASTBLOCK 0x00000010
939 #define NAND_BBT_ABSPAGE 0x00000020
941 #define NAND_BBT_PERCHIP 0x00000080
943 #define NAND_BBT_VERSION 0x00000100
945 #define NAND_BBT_CREATE 0x00000200
947 #define NAND_BBT_WRITE 0x00001000
949 #define NAND_BBT_SAVECONTENT 0x00002000
961 .. kernel-doc:: include/linux/mtd/rawnand.h
972 .. kernel-doc:: drivers/mtd/nand/raw/nand_base.c
984 .. kernel-doc:: drivers/mtd/nand/raw/nand_base.c
987 .. kernel-doc:: drivers/mtd/nand/raw/nand_bbt.c