Loading...
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for K2G EVM
4 *
5 * Copyright (C) 2016-2017 Texas Instruments Incorporated - http://www.ti.com/
6 */
7/dts-v1/;
8
9#include "keystone-k2g.dtsi"
10
11/ {
12 compatible = "ti,k2g-evm", "ti,k2g", "ti,keystone";
13 model = "Texas Instruments K2G General Purpose EVM";
14
15 memory@800000000 {
16 device_type = "memory";
17 reg = <0x00000008 0x00000000 0x00000000 0x80000000>;
18 };
19
20 reserved-memory {
21 #address-cells = <2>;
22 #size-cells = <2>;
23 ranges;
24
25 dsp_common_memory: dsp-common-memory@81f800000 {
26 compatible = "shared-dma-pool";
27 reg = <0x00000008 0x1f800000 0x00000000 0x800000>;
28 reusable;
29 status = "okay";
30 };
31 };
32
33 vcc3v3_dcin_reg: fixedregulator-vcc3v3-dcin {
34 compatible = "regulator-fixed";
35 regulator-name = "mmc0_fixed";
36 regulator-min-microvolt = <3300000>;
37 regulator-max-microvolt = <3300000>;
38 regulator-always-on;
39 };
40};
41
42&k2g_pinctrl {
43 uart0_pins: pinmux_uart0_pins {
44 pinctrl-single,pins = <
45 K2G_CORE_IOPAD(0x11cc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* uart0_rxd.uart0_rxd */
46 K2G_CORE_IOPAD(0x11d0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
47 >;
48 };
49
50 mmc0_pins: pinmux_mmc0_pins {
51 pinctrl-single,pins = <
52 K2G_CORE_IOPAD(0x1300) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat3.mmc0_dat3 */
53 K2G_CORE_IOPAD(0x1304) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat2.mmc0_dat2 */
54 K2G_CORE_IOPAD(0x1308) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat1.mmc0_dat1 */
55 K2G_CORE_IOPAD(0x130c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_dat0.mmc0_dat0 */
56 K2G_CORE_IOPAD(0x1310) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_clk.mmc0_clk */
57 K2G_CORE_IOPAD(0x1314) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2) /* mmc0_cmd.mmc0_cmd */
58 K2G_CORE_IOPAD(0x12ec) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE3) /* mmc0_sdcd.gpio1_12 */
59 >;
60 };
61
62 mmc1_pins: pinmux_mmc1_pins {
63 pinctrl-single,pins = <
64 K2G_CORE_IOPAD(0x10ec) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat7.mmc1_dat7 */
65 K2G_CORE_IOPAD(0x10f0) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat6.mmc1_dat6 */
66 K2G_CORE_IOPAD(0x10f4) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat5.mmc1_dat5 */
67 K2G_CORE_IOPAD(0x10f8) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat4.mmc1_dat4 */
68 K2G_CORE_IOPAD(0x10fc) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat3.mmc1_dat3 */
69 K2G_CORE_IOPAD(0x1100) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat2.mmc1_dat2 */
70 K2G_CORE_IOPAD(0x1104) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat1.mmc1_dat1 */
71 K2G_CORE_IOPAD(0x1108) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_dat0.mmc1_dat0 */
72 K2G_CORE_IOPAD(0x110c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_clk.mmc1_clk */
73 K2G_CORE_IOPAD(0x1110) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_cmd.mmc1_cmd */
74 >;
75 };
76
77 i2c0_pins: pinmux_i2c0_pins {
78 pinctrl-single,pins = <
79 K2G_CORE_IOPAD(0x137c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
80 K2G_CORE_IOPAD(0x1380) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
81 >;
82 };
83
84 ecap0_pins: ecap0_pins {
85 pinctrl-single,pins = <
86 K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | MUX_MODE4) /* pr1_mdio_data.ecap0_in_apwm0_out */
87 >;
88 };
89
90 spi1_pins: pinmux_spi1_pins {
91 pinctrl-single,pins = <
92 K2G_CORE_IOPAD(0x11a4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_scs0.spi1_scs0 */
93 K2G_CORE_IOPAD(0x11ac) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_clk.spi1_clk */
94 K2G_CORE_IOPAD(0x11b0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_miso.spi1_miso */
95 K2G_CORE_IOPAD(0x11b4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_mosi.spi1_mosi */
96 >;
97 };
98
99 qspi_pins: pinmux_qspi_pins {
100 pinctrl-single,pins = <
101 K2G_CORE_IOPAD(0x1204) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_clk.qspi_clk */
102 K2G_CORE_IOPAD(0x1208) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_rclk.qspi_rclk */
103 K2G_CORE_IOPAD(0x120c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d0.qspi_d0 */
104 K2G_CORE_IOPAD(0x1210) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d1.qspi_d1 */
105 K2G_CORE_IOPAD(0x1214) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d2.qspi_d2 */
106 K2G_CORE_IOPAD(0x1218) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d3.qspi_d3 */
107 K2G_CORE_IOPAD(0x121c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_csn0.qspi_csn0 */
108 >;
109 };
110
111 uart2_pins: pinmux_uart2_pins {
112 pinctrl-single,pins = <
113 K2G_CORE_IOPAD(0x11ec) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* uart2_rxd.uart2_rxd */
114 K2G_CORE_IOPAD(0x11f0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0) /* uart2_txd.uart2_txd */
115 >;
116 };
117};
118
119&uart0 {
120 pinctrl-names = "default";
121 pinctrl-0 = <&uart0_pins>;
122 status = "okay";
123};
124
125&gpio1 {
126 status = "okay";
127};
128
129&mmc0 {
130 pinctrl-names = "default";
131 pinctrl-0 = <&mmc0_pins>;
132 vmmc-supply = <&vcc3v3_dcin_reg>;
133 cd-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
134 status = "okay";
135};
136
137&mmc1 {
138 pinctrl-names = "default";
139 pinctrl-0 = <&mmc1_pins>;
140 vmmc-supply = <&vcc3v3_dcin_reg>; /* VCC3V3_EMMC is connected to VCC3V3_DCIN */
141 ti,non-removable;
142 status = "okay";
143};
144
145&dsp0 {
146 memory-region = <&dsp_common_memory>;
147 status = "okay";
148};
149
150&i2c0 {
151 pinctrl-names = "default";
152 pinctrl-0 = <&i2c0_pins>;
153 status = "okay";
154
155 eeprom@50 {
156 compatible = "atmel,24c1024";
157 reg = <0x50>;
158 };
159};
160
161&keystone_usb0 {
162 status = "okay";
163};
164
165&usb0_phy {
166 status = "okay";
167};
168
169&usb0 {
170 dr_mode = "host";
171 status = "okay";
172};
173
174&keystone_usb1 {
175 status = "okay";
176};
177
178&usb1_phy {
179 status = "okay";
180};
181
182&usb1 {
183 dr_mode = "peripheral";
184 status = "okay";
185};
186
187&ecap0 {
188 status = "okay";
189 pinctrl-names = "default";
190 pinctrl-0 = <&ecap0_pins>;
191};
192
193&spi1 {
194 pinctrl-names = "default";
195 pinctrl-0 = <&spi1_pins>;
196 status = "okay";
197
198 spi_nor: flash@0 {
199 #address-cells = <1>;
200 #size-cells = <1>;
201 compatible = "jedec,spi-nor";
202 spi-max-frequency = <5000000>;
203 m25p,fast-read;
204 reg = <0>;
205
206 partition@0 {
207 label = "u-boot-spl";
208 reg = <0x0 0x100000>;
209 read-only;
210 };
211
212 partition@1 {
213 label = "misc";
214 reg = <0x100000 0xf00000>;
215 };
216 };
217};
218
219&qspi {
220 status = "okay";
221 pinctrl-names = "default";
222 pinctrl-0 = <&qspi_pins>;
223 cdns,rclk-en;
224
225 flash0: m25p80@0 {
226 compatible = "s25fl512s", "jedec,spi-nor";
227 reg = <0>;
228 spi-tx-bus-width = <1>;
229 spi-rx-bus-width = <4>;
230 spi-max-frequency = <96000000>;
231 #address-cells = <1>;
232 #size-cells = <1>;
233 cdns,read-delay = <5>;
234 cdns,tshsl-ns = <500>;
235 cdns,tsd2d-ns = <500>;
236 cdns,tchsh-ns = <119>;
237 cdns,tslch-ns = <119>;
238
239 partition@0 {
240 label = "QSPI.u-boot-spl-os";
241 reg = <0x00000000 0x00100000>;
242 };
243 partition@1 {
244 label = "QSPI.u-boot-env";
245 reg = <0x00100000 0x00040000>;
246 };
247 partition@2 {
248 label = "QSPI.skern";
249 reg = <0x00140000 0x0040000>;
250 };
251 partition@3 {
252 label = "QSPI.pmmc-firmware";
253 reg = <0x00180000 0x0040000>;
254 };
255 partition@4 {
256 label = "QSPI.kernel";
257 reg = <0x001C0000 0x0800000>;
258 };
259 partition@5 {
260 label = "QSPI.file-system";
261 reg = <0x009C0000 0x3640000>;
262 };
263 };
264};
265
266&uart2 {
267 pinctrl-names = "default";
268 pinctrl-0 = <&uart2_pins>;
269 status = "okay";
270};
1/*
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
23 memory {
24 device_type = "memory";
25 reg = <0x00000008 0x00000000 0x00000000 0x80000000>;
26 };
27
28};
29
30&k2g_pinctrl {
31 uart0_pins: pinmux_uart0_pins {
32 pinctrl-single,pins = <
33 K2G_CORE_IOPAD(0x11cc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* uart0_rxd.uart0_rxd */
34 K2G_CORE_IOPAD(0x11d0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
35 >;
36 };
37};
38
39&uart0 {
40 pinctrl-names = "default";
41 pinctrl-0 = <&uart0_pins>;
42 status = "okay";
43};