blob: 18b611990fc71711be4e0db7c6c1f90cb5ded115 [file] [log] [blame]
Lokesh Vutla76a36492018-08-27 15:59:09 +05301// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/
4 */
5
Andreas Dannenbergbfdf4982019-04-29 12:56:44 -05006#include <dt-bindings/pinctrl/k3.h>
Grygorii Strashko2d457302019-02-05 17:31:26 +05307#include <dt-bindings/dma/k3-udma.h>
Lokesh Vutla76a36492018-08-27 15:59:09 +05308
9/ {
10 chosen {
11 stdout-path = "serial2:115200n8";
12 };
13
14 aliases {
15 serial2 = &main_uart0;
Grygorii Strashkob33dd702019-07-09 10:30:35 +053016 ethernet0 = &cpsw_port1;
Lokesh Vutla76a36492018-08-27 15:59:09 +053017 };
18};
19
20&cbass_main{
21 u-boot,dm-spl;
Lokesh Vutla76a36492018-08-27 15:59:09 +053022
23 main_pmx0: pinmux@11c000 {
24 compatible = "pinctrl-single";
Lokesh Vutla3d09ed32018-11-02 19:51:08 +053025 reg = <0x0 0x11c000 0x0 0x2e4>;
Lokesh Vutla76a36492018-08-27 15:59:09 +053026 #pinctrl-cells = <1>;
27 pinctrl-single,register-width = <32>;
28 pinctrl-single,function-mask = <0xffffffff>;
29 };
30
31 main_pmx1: pinmux@11c2e8 {
32 compatible = "pinctrl-single";
Lokesh Vutla3d09ed32018-11-02 19:51:08 +053033 reg = <0x0 0x11c2e8 0x0 0x24>;
Lokesh Vutla76a36492018-08-27 15:59:09 +053034 #pinctrl-cells = <1>;
35 pinctrl-single,register-width = <32>;
36 pinctrl-single,function-mask = <0xffffffff>;
37 };
38
Lokesh Vutla76a36492018-08-27 15:59:09 +053039 sdhci0: sdhci@04F80000 {
40 compatible = "arasan,sdhci-5.1";
Lokesh Vutla3d09ed32018-11-02 19:51:08 +053041 reg = <0x0 0x4F80000 0x0 0x1000>,
42 <0x0 0x4F90000 0x0 0x400>;
Lokesh Vutla76a36492018-08-27 15:59:09 +053043 clocks = <&k3_clks 47 1>;
44 power-domains = <&k3_pds 47>;
45 max-frequency = <25000000>;
46 };
47
48 sdhci1: sdhci@04FA0000 {
49 compatible = "arasan,sdhci-5.1";
Lokesh Vutla3d09ed32018-11-02 19:51:08 +053050 reg = <0x0 0x4FA0000 0x0 0x1000>,
51 <0x0 0x4FB0000 0x0 0x400>;
Lokesh Vutla76a36492018-08-27 15:59:09 +053052 clocks = <&k3_clks 48 1>;
53 power-domains = <&k3_pds 48>;
54 max-frequency = <25000000>;
55 };
Lokesh Vutla3d09ed32018-11-02 19:51:08 +053056
57};
58
59&cbass_mcu {
60 u-boot,dm-spl;
61 wkup_pmx0: pinmux@4301c000 {
62 compatible = "pinctrl-single";
63 reg = <0x0 0x4301c000 0x0 0x118>;
64 #pinctrl-cells = <1>;
65 pinctrl-single,register-width = <32>;
66 pinctrl-single,function-mask = <0xffffffff>;
67 };
Grygorii Strashko2d457302019-02-05 17:31:26 +053068
69 navss_mcu: navss-mcu {
70 compatible = "simple-bus";
71 #address-cells = <2>;
72 #size-cells = <2>;
73 ranges;
74
75 ti,sci-dev-id = <119>;
76
77 mcu_ringacc: ringacc@2b800000 {
78 compatible = "ti,am654-navss-ringacc";
79 reg = <0x0 0x2b800000 0x0 0x400000>,
80 <0x0 0x2b000000 0x0 0x400000>,
81 <0x0 0x28590000 0x0 0x100>,
82 <0x0 0x2a500000 0x0 0x40000>;
83 reg-names = "rt", "fifos",
84 "proxy_gcfg", "proxy_target";
85 ti,num-rings = <286>;
86 ti,sci-rm-range-gp-rings = <0x2>; /* GP ring range */
87 ti,dma-ring-reset-quirk;
88 ti,sci = <&dmsc>;
89 ti,sci-dev-id = <195>;
90 };
91
92 mcu_udmap: udmap@285c0000 {
93 compatible = "ti,k3-navss-udmap";
94 reg = <0x0 0x285c0000 0x0 0x100>,
95 <0x0 0x2a800000 0x0 0x40000>,
96 <0x0 0x2aa00000 0x0 0x40000>;
97 reg-names = "gcfg", "rchanrt", "tchanrt";
98 #dma-cells = <3>;
99
100 ti,ringacc = <&mcu_ringacc>;
101 ti,psil-base = <0x6000>;
102
103 ti,sci = <&dmsc>;
104 ti,sci-dev-id = <194>;
105
106 ti,sci-rm-range-tchan = <0x1>, /* TX_HCHAN */
107 <0x2>; /* TX_CHAN */
108 ti,sci-rm-range-rchan = <0x3>, /* RX_HCHAN */
109 <0x4>; /* RX_CHAN */
110 ti,sci-rm-range-rflow = <0x5>; /* GP RFLOW */
111 dma-coherent;
112 };
113 };
Grygorii Strashkob33dd702019-07-09 10:30:35 +0530114
115 mcu_conf: scm_conf@40f00000 {
116 compatible = "syscon";
117 reg = <0x0 0x40f00000 0x0 0x20000>;
118 };
119
120 mcu_cpsw: cpsw_nuss@046000000 {
121 compatible = "ti,am654-cpsw-nuss";
122 #address-cells = <2>;
123 #size-cells = <2>;
124 reg = <0x0 0x46000000 0x0 0x200000>;
125 reg-names = "cpsw_nuss";
126 ranges;
127 dma-coherent;
128 clocks = <&k3_clks 5 10>;
129 clock-names = "fck";
130 power-domains = <&k3_pds 5>;
131 ti,psil-base = <0x7000>;
132
133 dmas = <&mcu_udmap &mcu_cpsw 0 UDMA_DIR_TX>,
134 <&mcu_udmap &mcu_cpsw 1 UDMA_DIR_TX>,
135 <&mcu_udmap &mcu_cpsw 2 UDMA_DIR_TX>,
136 <&mcu_udmap &mcu_cpsw 3 UDMA_DIR_TX>,
137 <&mcu_udmap &mcu_cpsw 4 UDMA_DIR_TX>,
138 <&mcu_udmap &mcu_cpsw 5 UDMA_DIR_TX>,
139 <&mcu_udmap &mcu_cpsw 6 UDMA_DIR_TX>,
140 <&mcu_udmap &mcu_cpsw 7 UDMA_DIR_TX>,
141 <&mcu_udmap &mcu_cpsw 0 UDMA_DIR_RX>;
142 dma-names = "tx0", "tx1", "tx2", "tx3",
143 "tx4", "tx5", "tx6", "tx7",
144 "rx";
145
146 ports {
147 #address-cells = <1>;
148 #size-cells = <0>;
149 host: host@0 {
150 reg = <0>;
151 ti,label = "host";
152 };
153
154 cpsw_port1: port@1 {
155 reg = <1>;
156 ti,mac-only;
157 ti,label = "port1";
158 ti,syscon-efuse = <&mcu_conf 0x200>;
159 };
160 };
161
162 davinci_mdio: mdio {
163 #address-cells = <1>;
164 #size-cells = <0>;
165 bus_freq = <1000000>;
166 };
167
168 ti,psil-config0 {
169 linux,udma-mode = <UDMA_PKT_MODE>;
170 statictr-type = <PSIL_STATIC_TR_NONE>;
171 ti,needs-epib;
172 ti,psd-size = <16>;
173 };
174
175 ti,psil-config1 {
176 linux,udma-mode = <UDMA_PKT_MODE>;
177 statictr-type = <PSIL_STATIC_TR_NONE>;
178 ti,needs-epib;
179 ti,psd-size = <16>;
180 };
181
182 ti,psil-config2 {
183 linux,udma-mode = <UDMA_PKT_MODE>;
184 statictr-type = <PSIL_STATIC_TR_NONE>;
185 ti,needs-epib;
186 ti,psd-size = <16>;
187 };
188
189 ti,psil-config3 {
190 linux,udma-mode = <UDMA_PKT_MODE>;
191 statictr-type = <PSIL_STATIC_TR_NONE>;
192 ti,needs-epib;
193 ti,psd-size = <16>;
194 };
195
196 ti,psil-config4 {
197 linux,udma-mode = <UDMA_PKT_MODE>;
198 statictr-type = <PSIL_STATIC_TR_NONE>;
199 ti,needs-epib;
200 ti,psd-size = <16>;
201 };
202
203 ti,psil-config5 {
204 linux,udma-mode = <UDMA_PKT_MODE>;
205 statictr-type = <PSIL_STATIC_TR_NONE>;
206 ti,needs-epib;
207 ti,psd-size = <16>;
208 };
209
210 ti,psil-config6 {
211 linux,udma-mode = <UDMA_PKT_MODE>;
212 statictr-type = <PSIL_STATIC_TR_NONE>;
213 ti,needs-epib;
214 ti,psd-size = <16>;
215 };
216
217 ti,psil-config7 {
218 linux,udma-mode = <UDMA_PKT_MODE>;
219 statictr-type = <PSIL_STATIC_TR_NONE>;
220 ti,needs-epib;
221 ti,psd-size = <16>;
222 };
223 };
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530224};
Lokesh Vutla76a36492018-08-27 15:59:09 +0530225
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530226&cbass_wakeup {
227 u-boot,dm-spl;
Lokesh Vutla76a36492018-08-27 15:59:09 +0530228};
229
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530230&secure_proxy_main {
Lokesh Vutla76a36492018-08-27 15:59:09 +0530231 u-boot,dm-spl;
232};
233
234&dmsc {
235 u-boot,dm-spl;
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530236 k3_sysreset: sysreset-controller {
237 compatible = "ti,sci-sysreset";
238 u-boot,dm-spl;
239 };
Lokesh Vutla76a36492018-08-27 15:59:09 +0530240};
241
242&k3_pds {
243 u-boot,dm-spl;
244};
245
246&k3_clks {
247 u-boot,dm-spl;
248};
249
250&k3_reset {
251 u-boot,dm-spl;
252};
253
254&main_pmx0 {
255 u-boot,dm-spl;
256 main_uart0_pins_default: main_uart0_pins_default {
257 pinctrl-single,pins = <
Andreas Dannenbergbfdf4982019-04-29 12:56:44 -0500258 AM65X_IOPAD(0x01e4, PIN_INPUT, 0) /* (AF11) UART0_RXD */
259 AM65X_IOPAD(0x01e8, PIN_OUTPUT, 0) /* (AE11) UART0_TXD */
260 AM65X_IOPAD(0x01ec, PIN_INPUT, 0) /* (AG11) UART0_CTSn */
261 AM65X_IOPAD(0x01f0, PIN_OUTPUT, 0) /* (AD11) UART0_RTSn */
Lokesh Vutla76a36492018-08-27 15:59:09 +0530262 >;
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530263 u-boot,dm-spl;
Lokesh Vutla76a36492018-08-27 15:59:09 +0530264 };
265
266 main_mmc0_pins_default: main_mmc0_pins_default {
267 pinctrl-single,pins = <
Andreas Dannenbergbfdf4982019-04-29 12:56:44 -0500268 AM65X_IOPAD(0x01a8, PIN_INPUT_PULLDOWN, 0) /* (B25) MMC0_CLK */
269 AM65X_IOPAD(0x01aC, PIN_INPUT_PULLUP, 0) /* (B27) MMC0_CMD */
270 AM65X_IOPAD(0x01a4, PIN_INPUT_PULLUP, 0) /* (A26) MMC0_DAT0 */
271 AM65X_IOPAD(0x01a0, PIN_INPUT_PULLUP, 0) /* (E25) MMC0_DAT1 */
272 AM65X_IOPAD(0x019c, PIN_INPUT_PULLUP, 0) /* (C26) MMC0_DAT2 */
273 AM65X_IOPAD(0x0198, PIN_INPUT_PULLUP, 0) /* (A25) MMC0_DAT3 */
274 AM65X_IOPAD(0x0194, PIN_INPUT_PULLUP, 0) /* (E24) MMC0_DAT4 */
275 AM65X_IOPAD(0x0190, PIN_INPUT_PULLUP, 0) /* (A24) MMC0_DAT5 */
276 AM65X_IOPAD(0x018c, PIN_INPUT_PULLUP, 0) /* (B26) MMC0_DAT6 */
277 AM65X_IOPAD(0x0188, PIN_INPUT_PULLUP, 0) /* (D25) MMC0_DAT7 */
278 AM65X_IOPAD(0x01b0, PIN_INPUT, 0) /* (C25) MMC0_DS */
Lokesh Vutla76a36492018-08-27 15:59:09 +0530279 >;
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530280 u-boot,dm-spl;
Lokesh Vutla76a36492018-08-27 15:59:09 +0530281 };
282
283 main_mmc1_pins_default: main_mmc1_pins_default {
284 pinctrl-single,pins = <
Andreas Dannenbergbfdf4982019-04-29 12:56:44 -0500285 AM65X_IOPAD(0x02d4, PIN_INPUT_PULLDOWN, 0) /* (C27) MMC1_CLK */
286 AM65X_IOPAD(0x02d8, PIN_INPUT_PULLUP, 0) /* (C28) MMC1_CMD */
287 AM65X_IOPAD(0x02d0, PIN_INPUT_PULLUP, 0) /* (D28) MMC1_DAT0 */
288 AM65X_IOPAD(0x02cc, PIN_INPUT_PULLUP, 0) /* (E27) MMC1_DAT1 */
289 AM65X_IOPAD(0x02c8, PIN_INPUT_PULLUP, 0) /* (D26) MMC1_DAT2 */
290 AM65X_IOPAD(0x02c4, PIN_INPUT_PULLUP, 0) /* (D27) MMC1_DAT3 */
291 AM65X_IOPAD(0x02dc, PIN_INPUT_PULLUP, 0) /* (B24) MMC1_SDCD */
292 AM65X_IOPAD(0x02e0, PIN_INPUT, 0) /* (C24) MMC1_SDWP */
Lokesh Vutla76a36492018-08-27 15:59:09 +0530293 >;
Lokesh Vutla3d09ed32018-11-02 19:51:08 +0530294 u-boot,dm-spl;
Lokesh Vutla76a36492018-08-27 15:59:09 +0530295 };
296
297};
298
299&main_pmx1 {
300 u-boot,dm-spl;
301};
302
303&main_uart0 {
304 u-boot,dm-spl;
305 pinctrl-names = "default";
306 pinctrl-0 = <&main_uart0_pins_default>;
307 status = "okay";
308};
309
310&sdhci0 {
311 u-boot,dm-spl;
312 status = "okay";
313 non-removable;
314 bus-width = <8>;
315 pinctrl-names = "default";
316 pinctrl-0 = <&main_mmc0_pins_default>;
317};
318
319&sdhci1 {
320 u-boot,dm-spl;
321 status = "okay";
322 pinctrl-names = "default";
323 pinctrl-0 = <&main_mmc1_pins_default>;
324 sdhci-caps-mask = <0x7 0x0>;
325};