162306a36Sopenharmony_ciNXP LPC32xx SoC NAND SLC controller
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciRequired properties:
462306a36Sopenharmony_ci- compatible: "nxp,lpc3220-slc"
562306a36Sopenharmony_ci- reg: Address and size of the controller
662306a36Sopenharmony_ci- nand-on-flash-bbt: Use bad block table on flash
762306a36Sopenharmony_ci- gpios: GPIO specification for NAND write protect
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciThe following required properties are very controller specific. See the LPC32xx
1062306a36Sopenharmony_ciUser Manual:
1162306a36Sopenharmony_ci- nxp,wdr-clks: Delay before Ready signal is tested on write (W_RDY)
1262306a36Sopenharmony_ci- nxp,rdr-clks: Delay before Ready signal is tested on read (R_RDY)
1362306a36Sopenharmony_ci(The following values are specified in Hz, to make them independent of actual
1462306a36Sopenharmony_ciclock speed:)
1562306a36Sopenharmony_ci- nxp,wwidth: Write pulse width (W_WIDTH)
1662306a36Sopenharmony_ci- nxp,whold: Write hold time (W_HOLD)
1762306a36Sopenharmony_ci- nxp,wsetup: Write setup time (W_SETUP)
1862306a36Sopenharmony_ci- nxp,rwidth: Read pulse width (R_WIDTH)
1962306a36Sopenharmony_ci- nxp,rhold: Read hold time (R_HOLD)
2062306a36Sopenharmony_ci- nxp,rsetup: Read setup time (R_SETUP)
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciOptional subnodes:
2362306a36Sopenharmony_ci- Partitions, see Documentation/devicetree/bindings/mtd/mtd.yaml
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciExample:
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci	slc: flash@20020000 {
2862306a36Sopenharmony_ci		compatible = "nxp,lpc3220-slc";
2962306a36Sopenharmony_ci		reg = <0x20020000 0x1000>;
3062306a36Sopenharmony_ci		#address-cells = <1>;
3162306a36Sopenharmony_ci		#size-cells = <1>;
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci		nxp,wdr-clks = <14>;
3462306a36Sopenharmony_ci		nxp,wwidth = <40000000>;
3562306a36Sopenharmony_ci		nxp,whold = <100000000>;
3662306a36Sopenharmony_ci		nxp,wsetup = <100000000>;
3762306a36Sopenharmony_ci		nxp,rdr-clks = <14>;
3862306a36Sopenharmony_ci		nxp,rwidth = <40000000>;
3962306a36Sopenharmony_ci		nxp,rhold = <66666666>;
4062306a36Sopenharmony_ci		nxp,rsetup = <100000000>;
4162306a36Sopenharmony_ci		nand-on-flash-bbt;
4262306a36Sopenharmony_ci		gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci		mtd0@00000000 {
4562306a36Sopenharmony_ci			label = "phy3250-boot";
4662306a36Sopenharmony_ci			reg = <0x00000000 0x00064000>;
4762306a36Sopenharmony_ci			read-only;
4862306a36Sopenharmony_ci		};
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci		...
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci	};
53