blob: 9737730ddc21a34649d24caed61d1cc50d60c7b9 [file] [log] [blame]
Vitaly Andrianov5b7551d2016-02-05 10:37:17 -08001/*
2 * Device Tree Source for K2G EVM
3 *
4 * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * This program is distributed "as is" WITHOUT ANY WARRANTY of any
11 * kind, whether express or implied; without even the implied warranty
12 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 */
15/dts-v1/;
16
17#include "keystone-k2g.dtsi"
18
19/ {
20 compatible = "ti,k2g-evm", "ti,k2g", "ti,keystone";
21 model = "Texas Instruments K2G General Purpose EVM";
22
Franklin S Cooper Jr99d20cf2017-05-21 22:46:56 -070023 memory@800000000 {
Vitaly Andrianov5b7551d2016-02-05 10:37:17 -080024 device_type = "memory";
25 reg = <0x00000008 0x00000000 0x00000000 0x80000000>;
26 };
27
Andrew F. Davis786d7112017-08-12 10:58:10 -070028 reserved-memory {
29 #address-cells = <2>;
30 #size-cells = <2>;
31 ranges;
32
33 dsp_common_memory: dsp-common-memory@81f800000 {
34 compatible = "shared-dma-pool";
35 reg = <0x00000008 0x1f800000 0x00000000 0x800000>;
36 reusable;
37 status = "okay";
38 };
39 };
40
Lokesh Vutlaedd404e2017-08-07 06:36:08 -070041 vcc3v3_dcin_reg: fixedregulator-vcc3v3-dcin {
42 compatible = "regulator-fixed";
43 regulator-name = "mmc0_fixed";
44 regulator-min-microvolt = <3300000>;
45 regulator-max-microvolt = <3300000>;
46 regulator-always-on;
47 };
Vitaly Andrianov5b7551d2016-02-05 10:37:17 -080048};
49
Lokesh Vutla30220082016-06-09 09:40:21 -070050&k2g_pinctrl {
51 uart0_pins: pinmux_uart0_pins {
52 pinctrl-single,pins = <
53 K2G_CORE_IOPAD(0x11cc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* uart0_rxd.uart0_rxd */
54 K2G_CORE_IOPAD(0x11d0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
55 >;
56 };
Lokesh Vutlaedd404e2017-08-07 06:36:08 -070057
58 mmc0_pins: pinmux_mmc0_pins {
59 pinctrl-single,pins = <
60 K2G_CORE_IOPAD(0x1300) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat3.mmc0_dat3 */
61 K2G_CORE_IOPAD(0x1304) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat2.mmc0_dat2 */
62 K2G_CORE_IOPAD(0x1308) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat1.mmc0_dat1 */
63 K2G_CORE_IOPAD(0x130c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat0.mmc0_dat0 */
64 K2G_CORE_IOPAD(0x1310) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_clk.mmc0_clk */
65 K2G_CORE_IOPAD(0x1314) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_cmd.mmc0_cmd */
66 K2G_CORE_IOPAD(0x12ec) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE3) /* mmc0_sdcd.gpio1_12 */
67 >;
68 };
69
70 mmc1_pins: pinmux_mmc1_pins {
71 pinctrl-single,pins = <
72 K2G_CORE_IOPAD(0x10ec) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat7.mmc1_dat7 */
73 K2G_CORE_IOPAD(0x10f0) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat6.mmc1_dat6 */
74 K2G_CORE_IOPAD(0x10f4) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat5.mmc1_dat5 */
75 K2G_CORE_IOPAD(0x10f8) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat4.mmc1_dat4 */
76 K2G_CORE_IOPAD(0x10fc) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat3.mmc1_dat3 */
77 K2G_CORE_IOPAD(0x1100) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat2.mmc1_dat2 */
78 K2G_CORE_IOPAD(0x1104) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat1.mmc1_dat1 */
79 K2G_CORE_IOPAD(0x1108) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat0.mmc1_dat0 */
80 K2G_CORE_IOPAD(0x110c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_clk.mmc1_clk */
81 K2G_CORE_IOPAD(0x1110) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_cmd.mmc1_cmd */
82 >;
83 };
Murali Karicheri07bdfc22017-10-09 09:15:26 -070084
85 i2c0_pins: pinmux_i2c0_pins {
86 pinctrl-single,pins = <
87 K2G_CORE_IOPAD(0x137c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
88 K2G_CORE_IOPAD(0x1380) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
89 >;
90 };
91
Vignesh R4cf6e1f2017-12-02 19:33:56 -080092 ecap0_pins: ecap0_pins {
93 pinctrl-single,pins = <
94 K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | MUX_MODE4) /* pr1_mdio_data.ecap0_in_apwm0_out */
95 >;
96 };
97
98 spi1_pins: pinmux_spi1_pins {
99 pinctrl-single,pins = <
100 K2G_CORE_IOPAD(0x11a4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_scs0.spi1_scs0 */
101 K2G_CORE_IOPAD(0x11ac) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_clk.spi1_clk */
102 K2G_CORE_IOPAD(0x11b0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_miso.spi1_miso */
103 K2G_CORE_IOPAD(0x11b4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_mosi.spi1_mosi */
104 >;
105 };
Vignesh Rc2097f42017-12-02 19:33:56 -0800106
107 qspi_pins: pinmux_qspi_pins {
108 pinctrl-single,pins = <
109 K2G_CORE_IOPAD(0x1204) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_clk.qspi_clk */
110 K2G_CORE_IOPAD(0x1208) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_rclk.qspi_rclk */
111 K2G_CORE_IOPAD(0x120c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d0.qspi_d0 */
112 K2G_CORE_IOPAD(0x1210) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d1.qspi_d1 */
113 K2G_CORE_IOPAD(0x1214) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d2.qspi_d2 */
114 K2G_CORE_IOPAD(0x1218) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d3.qspi_d3 */
115 K2G_CORE_IOPAD(0x121c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_csn0.qspi_csn0 */
116 >;
117 };
Franklin S Cooper Jr7fbec172017-12-06 09:53:04 -0800118
119 uart2_pins: pinmux_uart2_pins {
120 pinctrl-single,pins = <
121 K2G_CORE_IOPAD(0x11ec) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* uart2_rxd.uart2_rxd */
122 K2G_CORE_IOPAD(0x11f0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0) /* uart2_txd.uart2_txd */
123 >;
124 };
Lokesh Vutla30220082016-06-09 09:40:21 -0700125};
126
Vitaly Andrianov5b7551d2016-02-05 10:37:17 -0800127&uart0 {
Lokesh Vutla30220082016-06-09 09:40:21 -0700128 pinctrl-names = "default";
129 pinctrl-0 = <&uart0_pins>;
Vitaly Andrianov5b7551d2016-02-05 10:37:17 -0800130 status = "okay";
131};
Lokesh Vutlaedd404e2017-08-07 06:36:08 -0700132
133&gpio1 {
134 status = "okay";
135};
136
137&mmc0 {
138 pinctrl-names = "default";
139 pinctrl-0 = <&mmc0_pins>;
140 vmmc-supply = <&vcc3v3_dcin_reg>;
141 cd-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
142 status = "okay";
143};
144
145&mmc1 {
146 pinctrl-names = "default";
147 pinctrl-0 = <&mmc1_pins>;
148 vmmc-supply = <&vcc3v3_dcin_reg>; /* VCC3V3_EMMC is connected to VCC3V3_DCIN */
Vignesh Raabed2a2017-12-02 19:33:56 -0800149 ti,non-removable;
Lokesh Vutlaedd404e2017-08-07 06:36:08 -0700150 status = "okay";
151};
Andrew F. Davis786d7112017-08-12 10:58:10 -0700152
153&dsp0 {
154 memory-region = <&dsp_common_memory>;
155 status = "okay";
156};
Murali Karicheri07bdfc22017-10-09 09:15:26 -0700157
158&i2c0 {
159 pinctrl-names = "default";
160 pinctrl-0 = <&i2c0_pins>;
161 status = "okay";
162
163 eeprom@50 {
164 compatible = "atmel,24c1024";
165 reg = <0x50>;
166 };
167};
Roger Quadroscfc8e422017-10-09 09:23:31 -0700168
169&keystone_usb0 {
170 status = "okay";
171};
172
173&usb0_phy {
174 status = "okay";
175};
176
177&usb0 {
178 dr_mode = "host";
179 status = "okay";
180};
181
182&keystone_usb1 {
183 status = "okay";
184};
185
186&usb1_phy {
187 status = "okay";
188};
189
190&usb1 {
191 dr_mode = "peripheral";
192 status = "okay";
193};
Vignesh Re1471fe2017-10-09 09:33:50 -0700194
195&ecap0 {
196 status = "okay";
197 pinctrl-names = "default";
198 pinctrl-0 = <&ecap0_pins>;
199};
Murali Karicheri1efed402017-10-09 09:42:01 -0700200
201&spi1 {
202 pinctrl-names = "default";
203 pinctrl-0 = <&spi1_pins>;
204 status = "okay";
205
206 spi_nor: flash@0 {
207 #address-cells = <1>;
208 #size-cells = <1>;
209 compatible = "jedec,spi-nor";
210 spi-max-frequency = <5000000>;
211 m25p,fast-read;
212 reg = <0>;
213
214 partition@0 {
215 label = "u-boot-spl";
216 reg = <0x0 0x100000>;
217 read-only;
218 };
219
220 partition@1 {
221 label = "misc";
222 reg = <0x100000 0xf00000>;
223 };
224 };
225};
Vignesh Rc2097f42017-12-02 19:33:56 -0800226
227&qspi {
228 status = "okay";
229 pinctrl-names = "default";
230 pinctrl-0 = <&qspi_pins>;
231 cdns,rclk-en;
232
233 flash0: m25p80@0 {
234 compatible = "s25fl512s", "jedec,spi-nor";
235 reg = <0>;
236 spi-tx-bus-width = <1>;
237 spi-rx-bus-width = <4>;
238 spi-max-frequency = <96000000>;
239 #address-cells = <1>;
240 #size-cells = <1>;
241 cdns,read-delay = <5>;
242 cdns,tshsl-ns = <500>;
243 cdns,tsd2d-ns = <500>;
244 cdns,tchsh-ns = <119>;
245 cdns,tslch-ns = <119>;
246
247 partition@0 {
248 label = "QSPI.u-boot-spl-os";
249 reg = <0x00000000 0x00100000>;
250 };
251 partition@1 {
252 label = "QSPI.u-boot-env";
253 reg = <0x00100000 0x00040000>;
254 };
255 partition@2 {
256 label = "QSPI.skern";
257 reg = <0x00140000 0x0040000>;
258 };
259 partition@3 {
260 label = "QSPI.pmmc-firmware";
261 reg = <0x00180000 0x0040000>;
262 };
263 partition@4 {
264 label = "QSPI.kernel";
265 reg = <0x001C0000 0x0800000>;
266 };
267 partition@5 {
268 label = "QSPI.file-system";
269 reg = <0x009C0000 0x3640000>;
270 };
271 };
272};
Franklin S Cooper Jr7fbec172017-12-06 09:53:04 -0800273
274&uart2 {
275 pinctrl-names = "default";
276 pinctrl-0 = <&uart2_pins>;
277 status = "okay";
278};