18c2ecf20Sopenharmony_ciNXP LPC32xx SoC NAND SLC controller
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci- compatible: "nxp,lpc3220-slc"
58c2ecf20Sopenharmony_ci- reg: Address and size of the controller
68c2ecf20Sopenharmony_ci- nand-on-flash-bbt: Use bad block table on flash
78c2ecf20Sopenharmony_ci- gpios: GPIO specification for NAND write protect
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciThe following required properties are very controller specific. See the LPC32xx
108c2ecf20Sopenharmony_ciUser Manual:
118c2ecf20Sopenharmony_ci- nxp,wdr-clks: Delay before Ready signal is tested on write (W_RDY)
128c2ecf20Sopenharmony_ci- nxp,rdr-clks: Delay before Ready signal is tested on read (R_RDY)
138c2ecf20Sopenharmony_ci(The following values are specified in Hz, to make them independent of actual
148c2ecf20Sopenharmony_ciclock speed:)
158c2ecf20Sopenharmony_ci- nxp,wwidth: Write pulse width (W_WIDTH)
168c2ecf20Sopenharmony_ci- nxp,whold: Write hold time (W_HOLD)
178c2ecf20Sopenharmony_ci- nxp,wsetup: Write setup time (W_SETUP)
188c2ecf20Sopenharmony_ci- nxp,rwidth: Read pulse width (R_WIDTH)
198c2ecf20Sopenharmony_ci- nxp,rhold: Read hold time (R_HOLD)
208c2ecf20Sopenharmony_ci- nxp,rsetup: Read setup time (R_SETUP)
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciOptional subnodes:
238c2ecf20Sopenharmony_ci- Partitions, see Documentation/devicetree/bindings/mtd/partition.txt
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciExample:
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ci	slc: flash@20020000 {
288c2ecf20Sopenharmony_ci		compatible = "nxp,lpc3220-slc";
298c2ecf20Sopenharmony_ci		reg = <0x20020000 0x1000>;
308c2ecf20Sopenharmony_ci		#address-cells = <1>;
318c2ecf20Sopenharmony_ci		#size-cells = <1>;
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci		nxp,wdr-clks = <14>;
348c2ecf20Sopenharmony_ci		nxp,wwidth = <40000000>;
358c2ecf20Sopenharmony_ci		nxp,whold = <100000000>;
368c2ecf20Sopenharmony_ci		nxp,wsetup = <100000000>;
378c2ecf20Sopenharmony_ci		nxp,rdr-clks = <14>;
388c2ecf20Sopenharmony_ci		nxp,rwidth = <40000000>;
398c2ecf20Sopenharmony_ci		nxp,rhold = <66666666>;
408c2ecf20Sopenharmony_ci		nxp,rsetup = <100000000>;
418c2ecf20Sopenharmony_ci		nand-on-flash-bbt;
428c2ecf20Sopenharmony_ci		gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ci		mtd0@00000000 {
458c2ecf20Sopenharmony_ci			label = "phy3250-boot";
468c2ecf20Sopenharmony_ci			reg = <0x00000000 0x00064000>;
478c2ecf20Sopenharmony_ci			read-only;
488c2ecf20Sopenharmony_ci		};
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci		...
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci	};
53