1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright (C) 2014-18 H. Nikolaus Schaller <hns@goldelico.com> 4*f126890aSEmmanuel Vadot */ 5*f126890aSEmmanuel Vadot 6*f126890aSEmmanuel Vadot#include "omap3-gta04a5.dts" 7*f126890aSEmmanuel Vadot 8*f126890aSEmmanuel Vadot/ { 9*f126890aSEmmanuel Vadot model = "Goldelico GTA04A5/Letux 2804 with OneNAND"; 10*f126890aSEmmanuel Vadot}; 11*f126890aSEmmanuel Vadot 12*f126890aSEmmanuel Vadot&omap3_pmx_core { 13*f126890aSEmmanuel Vadot gpmc_pins: gpmc-pins { 14*f126890aSEmmanuel Vadot pinctrl-single,pins = < 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot /* address lines */ 17*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x207a, PIN_OUTPUT | MUX_MODE0) /* gpmc_a1.gpmc_a1 */ 18*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x207c, PIN_OUTPUT | MUX_MODE0) /* gpmc_a2.gpmc_a2 */ 19*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x207e, PIN_OUTPUT | MUX_MODE0) /* gpmc_a3.gpmc_a3 */ 20*f126890aSEmmanuel Vadot 21*f126890aSEmmanuel Vadot /* data lines, gpmc_d0..d7 not muxable according to TRM */ 22*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x209e, PIN_INPUT | MUX_MODE0) /* gpmc_d8.gpmc_d8 */ 23*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20a0, PIN_INPUT | MUX_MODE0) /* gpmc_d9.gpmc_d9 */ 24*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20a2, PIN_INPUT | MUX_MODE0) /* gpmc_d10.gpmc_d10 */ 25*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20a4, PIN_INPUT | MUX_MODE0) /* gpmc_d11.gpmc_d11 */ 26*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20a6, PIN_INPUT | MUX_MODE0) /* gpmc_d12.gpmc_d12 */ 27*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20a8, PIN_INPUT | MUX_MODE0) /* gpmc_d13.gpmc_d13 */ 28*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20aa, PIN_INPUT | MUX_MODE0) /* gpmc_d14.gpmc_d14 */ 29*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20ac, PIN_INPUT | MUX_MODE0) /* gpmc_d15.gpmc_d15 */ 30*f126890aSEmmanuel Vadot 31*f126890aSEmmanuel Vadot /* 32*f126890aSEmmanuel Vadot * gpmc_ncs0, gpmc_nadv_ale, gpmc_noe, gpmc_nwe, gpmc_wait0 not muxable 33*f126890aSEmmanuel Vadot * according to TRM. OneNAND seems to require PIN_INPUT on clock. 34*f126890aSEmmanuel Vadot */ 35*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20b0, PIN_OUTPUT | MUX_MODE0) /* gpmc_ncs1.gpmc_ncs1 */ 36*f126890aSEmmanuel Vadot OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0) /* gpmc_clk.gpmc_clk */ 37*f126890aSEmmanuel Vadot >; 38*f126890aSEmmanuel Vadot }; 39*f126890aSEmmanuel Vadot}; 40*f126890aSEmmanuel Vadot 41*f126890aSEmmanuel Vadot&gpmc { 42*f126890aSEmmanuel Vadot /* switch inherited setup to OneNAND */ 43*f126890aSEmmanuel Vadot 44*f126890aSEmmanuel Vadot ranges = <0 0 0x04000000 0x1000000>; /* CS0: 16MB for OneNAND */ 45*f126890aSEmmanuel Vadot pinctrl-names = "default"; 46*f126890aSEmmanuel Vadot pinctrl-0 = <&gpmc_pins>; 47*f126890aSEmmanuel Vadot 48*f126890aSEmmanuel Vadot /delete-node/ nand@0,0; 49*f126890aSEmmanuel Vadot 50*f126890aSEmmanuel Vadot onenand@0,0 { 51*f126890aSEmmanuel Vadot 52*f126890aSEmmanuel Vadot #address-cells = <1>; 53*f126890aSEmmanuel Vadot #size-cells = <1>; 54*f126890aSEmmanuel Vadot compatible = "ti,omap2-onenand"; 55*f126890aSEmmanuel Vadot reg = <0 0 0x20000>; /* CS0, offset 0, IO size 128K */ 56*f126890aSEmmanuel Vadot 57*f126890aSEmmanuel Vadot gpmc,sync-read; 58*f126890aSEmmanuel Vadot gpmc,sync-write; 59*f126890aSEmmanuel Vadot gpmc,burst-length = <16>; 60*f126890aSEmmanuel Vadot gpmc,burst-read; 61*f126890aSEmmanuel Vadot gpmc,burst-wrap; 62*f126890aSEmmanuel Vadot gpmc,burst-write; 63*f126890aSEmmanuel Vadot gpmc,device-width = <2>; 64*f126890aSEmmanuel Vadot gpmc,mux-add-data = <2>; 65*f126890aSEmmanuel Vadot gpmc,cs-on-ns = <0>; 66*f126890aSEmmanuel Vadot gpmc,cs-rd-off-ns = <87>; 67*f126890aSEmmanuel Vadot gpmc,cs-wr-off-ns = <87>; 68*f126890aSEmmanuel Vadot gpmc,adv-on-ns = <0>; 69*f126890aSEmmanuel Vadot gpmc,adv-rd-off-ns = <10>; 70*f126890aSEmmanuel Vadot gpmc,adv-wr-off-ns = <10>; 71*f126890aSEmmanuel Vadot gpmc,oe-on-ns = <15>; 72*f126890aSEmmanuel Vadot gpmc,oe-off-ns = <87>; 73*f126890aSEmmanuel Vadot gpmc,we-on-ns = <0>; 74*f126890aSEmmanuel Vadot gpmc,we-off-ns = <87>; 75*f126890aSEmmanuel Vadot gpmc,rd-cycle-ns = <112>; 76*f126890aSEmmanuel Vadot gpmc,wr-cycle-ns = <112>; 77*f126890aSEmmanuel Vadot gpmc,access-ns = <81>; 78*f126890aSEmmanuel Vadot gpmc,page-burst-access-ns = <15>; 79*f126890aSEmmanuel Vadot gpmc,bus-turnaround-ns = <0>; 80*f126890aSEmmanuel Vadot gpmc,cycle2cycle-delay-ns = <0>; 81*f126890aSEmmanuel Vadot gpmc,wait-monitoring-ns = <0>; 82*f126890aSEmmanuel Vadot gpmc,clk-activation-ns = <5>; 83*f126890aSEmmanuel Vadot gpmc,wr-data-mux-bus-ns = <30>; 84*f126890aSEmmanuel Vadot gpmc,wr-access-ns = <81>; 85*f126890aSEmmanuel Vadot gpmc,sync-clk-ps = <15000>; 86*f126890aSEmmanuel Vadot 87*f126890aSEmmanuel Vadot x-loader@0 { 88*f126890aSEmmanuel Vadot label = "X-Loader"; 89*f126890aSEmmanuel Vadot reg = <0 0x80000>; 90*f126890aSEmmanuel Vadot }; 91*f126890aSEmmanuel Vadot 92*f126890aSEmmanuel Vadot bootloaders@80000 { 93*f126890aSEmmanuel Vadot label = "U-Boot"; 94*f126890aSEmmanuel Vadot reg = <0x80000 0x1c0000>; 95*f126890aSEmmanuel Vadot }; 96*f126890aSEmmanuel Vadot 97*f126890aSEmmanuel Vadot bootloaders_env@240000 { 98*f126890aSEmmanuel Vadot label = "U-Boot Env"; 99*f126890aSEmmanuel Vadot reg = <0x240000 0x40000>; 100*f126890aSEmmanuel Vadot }; 101*f126890aSEmmanuel Vadot 102*f126890aSEmmanuel Vadot kernel@280000 { 103*f126890aSEmmanuel Vadot label = "Kernel"; 104*f126890aSEmmanuel Vadot reg = <0x280000 0x600000>; 105*f126890aSEmmanuel Vadot }; 106*f126890aSEmmanuel Vadot 107*f126890aSEmmanuel Vadot filesystem@880000 { 108*f126890aSEmmanuel Vadot label = "File System"; 109*f126890aSEmmanuel Vadot reg = <0x880000 0>; /* 0 = MTDPART_SIZ_FULL */ 110*f126890aSEmmanuel Vadot }; 111*f126890aSEmmanuel Vadot 112*f126890aSEmmanuel Vadot }; 113*f126890aSEmmanuel Vadot}; 114