162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2014-18 H. Nikolaus Schaller <hns@goldelico.com> 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#include "omap3-gta04a5.dts" 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci/ { 962306a36Sopenharmony_ci model = "Goldelico GTA04A5/Letux 2804 with OneNAND"; 1062306a36Sopenharmony_ci}; 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci&omap3_pmx_core { 1362306a36Sopenharmony_ci gpmc_pins: gpmc-pins { 1462306a36Sopenharmony_ci pinctrl-single,pins = < 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci /* address lines */ 1762306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x207a, PIN_OUTPUT | MUX_MODE0) /* gpmc_a1.gpmc_a1 */ 1862306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x207c, PIN_OUTPUT | MUX_MODE0) /* gpmc_a2.gpmc_a2 */ 1962306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x207e, PIN_OUTPUT | MUX_MODE0) /* gpmc_a3.gpmc_a3 */ 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci /* data lines, gpmc_d0..d7 not muxable according to TRM */ 2262306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x209e, PIN_INPUT | MUX_MODE0) /* gpmc_d8.gpmc_d8 */ 2362306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20a0, PIN_INPUT | MUX_MODE0) /* gpmc_d9.gpmc_d9 */ 2462306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20a2, PIN_INPUT | MUX_MODE0) /* gpmc_d10.gpmc_d10 */ 2562306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20a4, PIN_INPUT | MUX_MODE0) /* gpmc_d11.gpmc_d11 */ 2662306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20a6, PIN_INPUT | MUX_MODE0) /* gpmc_d12.gpmc_d12 */ 2762306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20a8, PIN_INPUT | MUX_MODE0) /* gpmc_d13.gpmc_d13 */ 2862306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20aa, PIN_INPUT | MUX_MODE0) /* gpmc_d14.gpmc_d14 */ 2962306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20ac, PIN_INPUT | MUX_MODE0) /* gpmc_d15.gpmc_d15 */ 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci /* 3262306a36Sopenharmony_ci * gpmc_ncs0, gpmc_nadv_ale, gpmc_noe, gpmc_nwe, gpmc_wait0 not muxable 3362306a36Sopenharmony_ci * according to TRM. OneNAND seems to require PIN_INPUT on clock. 3462306a36Sopenharmony_ci */ 3562306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20b0, PIN_OUTPUT | MUX_MODE0) /* gpmc_ncs1.gpmc_ncs1 */ 3662306a36Sopenharmony_ci OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0) /* gpmc_clk.gpmc_clk */ 3762306a36Sopenharmony_ci >; 3862306a36Sopenharmony_ci }; 3962306a36Sopenharmony_ci}; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci&gpmc { 4262306a36Sopenharmony_ci /* switch inherited setup to OneNAND */ 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci ranges = <0 0 0x04000000 0x1000000>; /* CS0: 16MB for OneNAND */ 4562306a36Sopenharmony_ci pinctrl-names = "default"; 4662306a36Sopenharmony_ci pinctrl-0 = <&gpmc_pins>; 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci /delete-node/ nand@0,0; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci onenand@0,0 { 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci #address-cells = <1>; 5362306a36Sopenharmony_ci #size-cells = <1>; 5462306a36Sopenharmony_ci compatible = "ti,omap2-onenand"; 5562306a36Sopenharmony_ci reg = <0 0 0x20000>; /* CS0, offset 0, IO size 128K */ 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci gpmc,sync-read; 5862306a36Sopenharmony_ci gpmc,sync-write; 5962306a36Sopenharmony_ci gpmc,burst-length = <16>; 6062306a36Sopenharmony_ci gpmc,burst-read; 6162306a36Sopenharmony_ci gpmc,burst-wrap; 6262306a36Sopenharmony_ci gpmc,burst-write; 6362306a36Sopenharmony_ci gpmc,device-width = <2>; 6462306a36Sopenharmony_ci gpmc,mux-add-data = <2>; 6562306a36Sopenharmony_ci gpmc,cs-on-ns = <0>; 6662306a36Sopenharmony_ci gpmc,cs-rd-off-ns = <87>; 6762306a36Sopenharmony_ci gpmc,cs-wr-off-ns = <87>; 6862306a36Sopenharmony_ci gpmc,adv-on-ns = <0>; 6962306a36Sopenharmony_ci gpmc,adv-rd-off-ns = <10>; 7062306a36Sopenharmony_ci gpmc,adv-wr-off-ns = <10>; 7162306a36Sopenharmony_ci gpmc,oe-on-ns = <15>; 7262306a36Sopenharmony_ci gpmc,oe-off-ns = <87>; 7362306a36Sopenharmony_ci gpmc,we-on-ns = <0>; 7462306a36Sopenharmony_ci gpmc,we-off-ns = <87>; 7562306a36Sopenharmony_ci gpmc,rd-cycle-ns = <112>; 7662306a36Sopenharmony_ci gpmc,wr-cycle-ns = <112>; 7762306a36Sopenharmony_ci gpmc,access-ns = <81>; 7862306a36Sopenharmony_ci gpmc,page-burst-access-ns = <15>; 7962306a36Sopenharmony_ci gpmc,bus-turnaround-ns = <0>; 8062306a36Sopenharmony_ci gpmc,cycle2cycle-delay-ns = <0>; 8162306a36Sopenharmony_ci gpmc,wait-monitoring-ns = <0>; 8262306a36Sopenharmony_ci gpmc,clk-activation-ns = <5>; 8362306a36Sopenharmony_ci gpmc,wr-data-mux-bus-ns = <30>; 8462306a36Sopenharmony_ci gpmc,wr-access-ns = <81>; 8562306a36Sopenharmony_ci gpmc,sync-clk-ps = <15000>; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci x-loader@0 { 8862306a36Sopenharmony_ci label = "X-Loader"; 8962306a36Sopenharmony_ci reg = <0 0x80000>; 9062306a36Sopenharmony_ci }; 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ci bootloaders@80000 { 9362306a36Sopenharmony_ci label = "U-Boot"; 9462306a36Sopenharmony_ci reg = <0x80000 0x1c0000>; 9562306a36Sopenharmony_ci }; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci bootloaders_env@240000 { 9862306a36Sopenharmony_ci label = "U-Boot Env"; 9962306a36Sopenharmony_ci reg = <0x240000 0x40000>; 10062306a36Sopenharmony_ci }; 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ci kernel@280000 { 10362306a36Sopenharmony_ci label = "Kernel"; 10462306a36Sopenharmony_ci reg = <0x280000 0x600000>; 10562306a36Sopenharmony_ci }; 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci filesystem@880000 { 10862306a36Sopenharmony_ci label = "File System"; 10962306a36Sopenharmony_ci reg = <0x880000 0>; /* 0 = MTDPART_SIZ_FULL */ 11062306a36Sopenharmony_ci }; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci }; 11362306a36Sopenharmony_ci}; 114