Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fdc6a2dd authored by Philip Avinash's avatar Philip Avinash Committed by Benoit Cousson
Browse files

ARM: dts: AM33XX: Add NAND flash device tree data to am335x-evm



GPMC controller on AM335x-EVM has a NAND flash connected to it.
This patch updates following in am335x-evm.dts:
- adds nandflash specific pin-mux configs
- adds nand node as child of GPMC contoller, with information about
  NAND flash interface, NAND partition table, ECC scheme, elm handle id.
- updates GPMC node for newer GPMC DT properties added in linux-3.10.

Signed-off-by: default avatarPhilip Avinash <avinashphilip@ti.com>
Signed-off-by: default avatarGupta, Pekon <pekon@ti.com>
Signed-off-by: default avatarBenoit Cousson <benoit.cousson@linaro.org>
parent 15e8246b
Loading
Loading
Loading
Loading
+105 −0
Original line number Original line Diff line number Diff line
@@ -71,6 +71,26 @@
				0x1b4 0x03	/* xdma_event_intr1.clkout2 OMAP_MUX_MODE3 | AM33XX_PIN_OUTPUT */
				0x1b4 0x03	/* xdma_event_intr1.clkout2 OMAP_MUX_MODE3 | AM33XX_PIN_OUTPUT */
			>;
			>;
		};
		};

		nandflash_pins_s0: nandflash_pins_s0 {
			pinctrl-single,pins = <
				0x0 0x30	/* gpmc_ad0.gpmc_ad0, INPUT | PULLUP | MODE0 */
				0x4 0x30	/* gpmc_ad1.gpmc_ad1, INPUT | PULLUP | MODE0 */
				0x8 0x30	/* gpmc_ad2.gpmc_ad2, INPUT | PULLUP | MODE0 */
				0xc 0x30	/* gpmc_ad3.gpmc_ad3, INPUT | PULLUP | MODE0 */
				0x10 0x30	/* gpmc_ad4.gpmc_ad4, INPUT | PULLUP | MODE0 */
				0x14 0x30	/* gpmc_ad5.gpmc_ad5, INPUT | PULLUP | MODE0 */
				0x18 0x30	/* gpmc_ad6.gpmc_ad6, INPUT | PULLUP | MODE0 */
				0x1c 0x30	/* gpmc_ad7.gpmc_ad7, INPUT | PULLUP | MODE0 */
				0x70 0x30	/* gpmc_wait0.gpmc_wait0, INPUT | PULLUP | MODE0 */
				0x74 0x37	/* gpmc_wpn.gpio0_30, INPUT | PULLUP | MODE7 */
				0x7c 0x8	/* gpmc_csn0.gpmc_csn0,  PULL DISA */
				0x90 0x8	/* gpmc_advn_ale.gpmc_advn_ale, PULL DISA */
				0x94 0x8	/* gpmc_oen_ren.gpmc_oen_ren, PULL DISA */
				0x98 0x8	/* gpmc_wen.gpmc_wen, PULL DISA */
				0x9c 0x8	/* gpmc_be0n_cle.gpmc_be0n_cle, PULL DISA */
			>;
		};
	};
	};


	ocp {
	ocp {
@@ -138,6 +158,91 @@
				reg = <0x48>;
				reg = <0x48>;
			};
			};
		};
		};

		elm: elm@48080000 {
			status = "okay";
		};

		gpmc: gpmc@50000000 {
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <&nandflash_pins_s0>;
			ranges = <0 0 0x08000000 0x10000000>;	/* CS0: NAND */
			nand@0,0 {
				reg = <0 0 0>; /* CS0, offset 0 */
				nand-bus-width = <8>;
				ti,nand-ecc-opt = "bch8";
				gpmc,device-nand = "true";
				gpmc,device-width = <1>;
				gpmc,sync-clk-ps = <0>;
				gpmc,cs-on-ns = <0>;
				gpmc,cs-rd-off-ns = <44>;
				gpmc,cs-wr-off-ns = <44>;
				gpmc,adv-on-ns = <6>;
				gpmc,adv-rd-off-ns = <34>;
				gpmc,adv-wr-off-ns = <44>;
				gpmc,we-on-ns = <0>;
				gpmc,we-off-ns = <40>;
				gpmc,oe-on-ns = <0>;
				gpmc,oe-off-ns = <54>;
				gpmc,access-ns = <64>;
				gpmc,rd-cycle-ns = <82>;
				gpmc,wr-cycle-ns = <82>;
				gpmc,wait-on-read = "true";
				gpmc,wait-on-write = "true";
				gpmc,bus-turnaround-ns = <0>;
				gpmc,cycle2cycle-delay-ns = <0>;
				gpmc,clk-activation-ns = <0>;
				gpmc,wait-monitoring-ns = <0>;
				gpmc,wr-access-ns = <40>;
				gpmc,wr-data-mux-bus-ns = <0>;

				#address-cells = <1>;
				#size-cells = <1>;
				elm_id = <&elm>;

				/* MTD partition table */
				partition@0 {
					label = "SPL1";
					reg = <0x00000000 0x000020000>;
				};

				partition@1 {
					label = "SPL2";
					reg = <0x00020000 0x00020000>;
				};

				partition@2 {
					label = "SPL3";
					reg = <0x00040000 0x00020000>;
				};

				partition@3 {
					label = "SPL4";
					reg = <0x00060000 0x00020000>;
				};

				partition@4 {
					label = "U-boot";
					reg = <0x00080000 0x001e0000>;
				};

				partition@5 {
					label = "environment";
					reg = <0x00260000 0x00020000>;
				};

				partition@6 {
					label = "Kernel";
					reg = <0x00280000 0x00500000>;
				};

				partition@7 {
					label = "File-System";
					reg = <0x00780000 0x0F880000>;
				};
			};
		};
	};
	};


	vbat: fixedregulator@0 {
	vbat: fixedregulator@0 {