170f7cb78SRoland StiggeNXP LPC32xx SoC NAND MLC controller
270f7cb78SRoland Stigge
370f7cb78SRoland StiggeRequired properties:
470f7cb78SRoland Stigge- compatible: "nxp,lpc3220-mlc"
570f7cb78SRoland Stigge- reg: Address and size of the controller
670f7cb78SRoland Stigge- interrupts: The NAND interrupt specification
770f7cb78SRoland Stigge- gpios: GPIO specification for NAND write protect
870f7cb78SRoland Stigge
970f7cb78SRoland StiggeThe following required properties are very controller specific. See the LPC32xx
1070f7cb78SRoland StiggeUser Manual 7.5.14 MLC NAND Timing Register (the values here are specified in
1170f7cb78SRoland StiggeHz, to make them independent of actual clock speed and to provide for good
1270f7cb78SRoland Stiggeaccuracy:)
1370f7cb78SRoland Stigge- nxp,tcea_delay: TCEA_DELAY
1470f7cb78SRoland Stigge- nxp,busy_delay: BUSY_DELAY
1570f7cb78SRoland Stigge- nxp,nand_ta: NAND_TA
1670f7cb78SRoland Stigge- nxp,rd_high: RD_HIGH
1770f7cb78SRoland Stigge- nxp,rd_low: RD_LOW
1870f7cb78SRoland Stigge- nxp,wr_high: WR_HIGH
1970f7cb78SRoland Stigge- nxp,wr_low: WR_LOW
2070f7cb78SRoland Stigge
2170f7cb78SRoland StiggeOptional subnodes:
22*f902baa9SMiquel Raynal- Partitions, see Documentation/devicetree/bindings/mtd/mtd.yaml
2370f7cb78SRoland Stigge
2470f7cb78SRoland StiggeExample:
2570f7cb78SRoland Stigge
26afc3bca4SRob Herring	mlc: flash@200a8000 {
2770f7cb78SRoland Stigge		compatible = "nxp,lpc3220-mlc";
2870f7cb78SRoland Stigge		reg = <0x200A8000 0x11000>;
2970f7cb78SRoland Stigge		interrupts = <11 0>;
3070f7cb78SRoland Stigge		#address-cells = <1>;
3170f7cb78SRoland Stigge		#size-cells = <1>;
3270f7cb78SRoland Stigge
3370f7cb78SRoland Stigge		nxp,tcea-delay = <333333333>;
3470f7cb78SRoland Stigge		nxp,busy-delay = <10000000>;
3570f7cb78SRoland Stigge		nxp,nand-ta = <18181818>;
3670f7cb78SRoland Stigge		nxp,rd-high = <31250000>;
3770f7cb78SRoland Stigge		nxp,rd-low = <45454545>;
3870f7cb78SRoland Stigge		nxp,wr-high = <40000000>;
3970f7cb78SRoland Stigge		nxp,wr-low = <83333333>;
4070f7cb78SRoland Stigge		gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */
4170f7cb78SRoland Stigge
4270f7cb78SRoland Stigge		mtd0@00000000 {
4370f7cb78SRoland Stigge			label = "boot";
4470f7cb78SRoland Stigge			reg = <0x00000000 0x00064000>;
4570f7cb78SRoland Stigge			read-only;
4670f7cb78SRoland Stigge		};
4770f7cb78SRoland Stigge
4870f7cb78SRoland Stigge		...
4970f7cb78SRoland Stigge
5070f7cb78SRoland Stigge	};
51