NXP LPC32xx SoC NAND SLC controller Required properties: - compatible: "nxp,lpc3220-slc" - reg: Address and size of the controller - nand-on-flash-bbt: Use bad block table on flash - gpios: GPIO specification for NAND write protect The following required properties are very controller specific. See the LPC32xx User Manual: - nxp,wdr-clks: Delay before Ready signal is tested on write (W_RDY) - nxp,rdr-clks: Delay before Ready signal is tested on read (R_RDY) (The following values are specified in Hz, to make them independent of actual clock speed:) - nxp,wwidth: Write pulse width (W_WIDTH) - nxp,whold: Write hold time (W_HOLD) - nxp,wsetup: Write setup time (W_SETUP) - nxp,rwidth: Read pulse width (R_WIDTH) - nxp,rhold: Read hold time (R_HOLD) - nxp,rsetup: Read setup time (R_SETUP) Optional subnodes: - Partitions, see Documentation/devicetree/bindings/mtd/mtd.yaml Example: slc: flash@20020000 { compatible = "nxp,lpc3220-slc"; reg = <0x20020000 0x1000>; #address-cells = <1>; #size-cells = <1>; nxp,wdr-clks = <14>; nxp,wwidth = <40000000>; nxp,whold = <100000000>; nxp,wsetup = <100000000>; nxp,rdr-clks = <14>; nxp,rwidth = <40000000>; nxp,rhold = <66666666>; nxp,rsetup = <100000000>; nand-on-flash-bbt; gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */ mtd0@00000000 { label = "phy3250-boot"; reg = <0x00000000 0x00064000>; read-only; }; ... };