The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/mtd/fsmc-nand.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 ST Microelectronics Flexible Static Memory Controller (FSMC)
    2 NAND Interface
    3 
    4 Required properties:
    5 - compatible : "st,spear600-fsmc-nand", "stericsson,fsmc-nand"
    6 - reg : Address range of the mtd chip
    7 - reg-names: Should contain the reg names "fsmc_regs", "nand_data", "nand_addr" and "nand_cmd"
    8 
    9 Optional properties:
   10 - bank-width : Width (in bytes) of the device.  If not present, the width
   11   defaults to 1 byte
   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
   14   are:
   15   byte 0 TCLR  : CLE to RE delay in number of AHB clock cycles, only 4 bits
   16                  are valid. Zero means one clockcycle, 15 means 16 clock
   17                  cycles.
   18   byte 1 TAR   : ALE to RE delay, 4 bits are valid. Same format as TCLR.
   19   byte 2 THIZ  : number of HCLK clock cycles during which the data bus is
   20                  kept in Hi-Z (tristate) after the start of a write access.
   21                  Only valid for write transactions. Zero means zero cycles,
   22                  255 means 255 cycles.
   23   byte 3 THOLD : number of HCLK clock cycles to hold the address (and data
   24                  when writing) after the command deassertation. Zero means
   25                  one cycle, 255 means 256 cycles.
   26   byte 4 TWAIT : number of HCLK clock cycles to assert the command to the
   27                  NAND flash in response to SMWAITn. Zero means 1 cycle,
   28                  255 means 256 cycles.
   29   byte 5 TSET  : number of HCLK clock cycles to assert the address before the
   30                  command is asserted. Zero means one cycle, 255 means 256
   31                  cycles.
   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
   36 
   37 Can support 1-bit HW ECC (default) or if stronger correction is required,
   38 software-based BCH.
   39 
   40 Example:
   41 
   42         fsmc: flash@d1800000 {
   43                 compatible = "st,spear600-fsmc-nand";
   44                 #address-cells = <1>;
   45                 #size-cells = <1>;
   46                 reg = <0xd1800000 0x1000        /* FSMC Register */
   47                        0xd2000000 0x0010        /* NAND Base DATA */
   48                        0xd2020000 0x0010        /* NAND Base ADDR */
   49                        0xd2010000 0x0010>;      /* NAND Base CMD */
   50                 reg-names = "fsmc_regs", "nand_data", "nand_addr", "nand_cmd";
   51 
   52                 bank-width = <1>;
   53                 nand-skip-bbtscan;
   54                 timings = /bits/ 8 <0 0 0 2 3 0>;
   55                 bank = <1>;
   56 
   57                 partition@0 {
   58                         ...
   59                 };
   60         };

Cache object: 00ddf544a575248b17943bbc280fffbf


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.