blob: fa7178144b869c3f82c1315423171b5279d3d348 [file] [log] [blame]
Jan Kiszka4a88eb22021-09-18 08:17:52 +02001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) Siemens AG, 2018-2021
4 *
5 * Authors:
6 * Le Jin <le.jin@siemens.com>
7 * Jan Kiszka <jan.kiszka@siemens.com>
8 *
9 * Common bits of the IOT2050 Basic and Advanced variants, PG1 and PG2
10 */
11
12#include "k3-am654.dtsi"
13#include <dt-bindings/phy/phy.h>
14
15/ {
16 aliases {
Jan Kiszkab6fad962024-01-06 13:39:07 +010017 serial0 = &wkup_uart0;
18 serial1 = &mcu_uart0;
19 serial2 = &main_uart0;
20 serial3 = &main_uart1;
21 i2c0 = &wkup_i2c0;
22 i2c1 = &mcu_i2c0;
23 i2c2 = &main_i2c0;
24 i2c3 = &main_i2c1;
25 i2c4 = &main_i2c2;
26 i2c5 = &main_i2c3;
Jan Kiszka4a88eb22021-09-18 08:17:52 +020027 spi0 = &mcu_spi0;
28 mmc0 = &sdhci1;
29 mmc1 = &sdhci0;
30 };
31
32 chosen {
33 stdout-path = "serial3:115200n8";
Jan Kiszka4a88eb22021-09-18 08:17:52 +020034 };
35
36 reserved-memory {
37 #address-cells = <2>;
38 #size-cells = <2>;
39 ranges;
40
41 secure_ddr: secure-ddr@9e800000 {
42 reg = <0 0x9e800000 0 0x01800000>; /* for OP-TEE */
43 alignment = <0x1000>;
44 no-map;
45 };
46
47 mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 {
48 compatible = "shared-dma-pool";
49 reg = <0 0xa0000000 0 0x100000>;
50 no-map;
51 };
52
53 mcu_r5fss0_core0_memory_region: r5f-memory@a0100000 {
54 compatible = "shared-dma-pool";
55 reg = <0 0xa0100000 0 0xf00000>;
56 no-map;
57 };
58
59 mcu_r5fss0_core1_dma_memory_region: r5f-dma-memory@a1000000 {
60 compatible = "shared-dma-pool";
61 reg = <0 0xa1000000 0 0x100000>;
62 no-map;
63 };
64
65 mcu_r5fss0_core1_memory_region: r5f-memory@a1100000 {
66 compatible = "shared-dma-pool";
67 reg = <0 0xa1100000 0 0xf00000>;
68 no-map;
69 };
70
71 rtos_ipc_memory_region: ipc-memories@a2000000 {
72 reg = <0x00 0xa2000000 0x00 0x00200000>;
73 alignment = <0x1000>;
74 no-map;
75 };
Li Hua Qianb0c964f2023-08-29 11:46:21 +080076
77 /* To reserve the power-on(PON) reason for watchdog reset */
78 wdt_reset_memory_region: wdt-memory@a2200000 {
79 reg = <0x00 0xa2200000 0x00 0x00001000>;
80 no-map;
81 };
Jan Kiszka4a88eb22021-09-18 08:17:52 +020082 };
83
84 leds {
85 compatible = "gpio-leds";
86 pinctrl-names = "default";
87 pinctrl-0 = <&leds_pins_default>;
88
89 status-led-red {
90 gpios = <&wkup_gpio0 32 GPIO_ACTIVE_HIGH>;
91 panic-indicator;
92 };
93
94 status-led-green {
95 gpios = <&wkup_gpio0 24 GPIO_ACTIVE_HIGH>;
96 };
97
98 user-led1-red {
99 gpios = <&pcal9535_3 14 GPIO_ACTIVE_HIGH>;
100 };
101
102 user-led1-green {
103 gpios = <&pcal9535_2 15 GPIO_ACTIVE_HIGH>;
104 };
105
106 user-led2-red {
107 gpios = <&wkup_gpio0 17 GPIO_ACTIVE_HIGH>;
108 };
109
110 user-led2-green {
111 gpios = <&wkup_gpio0 22 GPIO_ACTIVE_HIGH>;
112 };
113 };
114
115 dp_refclk: clock {
116 compatible = "fixed-clock";
117 #clock-cells = <0>;
118 clock-frequency = <19200000>;
119 };
120};
121
122&wkup_pmx0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100123 wkup_i2c0_pins_default: wkup-i2c0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200124 pinctrl-single,pins = <
125 /* (AC7) WKUP_I2C0_SCL */
126 AM65X_WKUP_IOPAD(0x00e0, PIN_INPUT, 0)
127 /* (AD6) WKUP_I2C0_SDA */
128 AM65X_WKUP_IOPAD(0x00e4, PIN_INPUT, 0)
129 >;
130 };
131
Jan Kiszkab6fad962024-01-06 13:39:07 +0100132 mcu_i2c0_pins_default: mcu-i2c0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200133 pinctrl-single,pins = <
134 /* (AD8) MCU_I2C0_SCL */
135 AM65X_WKUP_IOPAD(0x00e8, PIN_INPUT, 0)
136 /* (AD7) MCU_I2C0_SDA */
137 AM65X_WKUP_IOPAD(0x00ec, PIN_INPUT, 0)
138 >;
139 };
140
Jan Kiszkab6fad962024-01-06 13:39:07 +0100141 arduino_i2c_aio_switch_pins_default: arduino-i2c-aio-switch-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200142 pinctrl-single,pins = <
143 /* (R2) WKUP_GPIO0_21 */
144 AM65X_WKUP_IOPAD(0x0024, PIN_OUTPUT, 7)
145 >;
146 };
147
Jan Kiszkab6fad962024-01-06 13:39:07 +0100148 push_button_pins_default: push-button-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200149 pinctrl-single,pins = <
150 /* (T1) MCU_OSPI1_CLK.WKUP_GPIO0_25 */
151 AM65X_WKUP_IOPAD(0x0034, PIN_INPUT, 7)
152 >;
153 };
154
Jan Kiszkab6fad962024-01-06 13:39:07 +0100155 arduino_uart_pins_default: arduino-uart-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200156 pinctrl-single,pins = <
157 /* (P4) MCU_UART0_RXD */
158 AM65X_WKUP_IOPAD(0x0044, PIN_INPUT, 4)
159 /* (P5) MCU_UART0_TXD */
160 AM65X_WKUP_IOPAD(0x0048, PIN_OUTPUT, 4)
161 >;
162 };
163
Jan Kiszkab6fad962024-01-06 13:39:07 +0100164 arduino_io_d2_to_d3_pins_default: arduino-io-d2-to-d3-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200165 pinctrl-single,pins = <
166 /* (P1) WKUP_GPIO0_31 */
167 AM65X_WKUP_IOPAD(0x004C, PIN_OUTPUT, 7)
168 /* (N3) WKUP_GPIO0_33 */
169 AM65X_WKUP_IOPAD(0x0054, PIN_OUTPUT, 7)
170 >;
171 };
172
Jan Kiszkab6fad962024-01-06 13:39:07 +0100173 arduino_io_oe_pins_default: arduino-io-oe-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200174 pinctrl-single,pins = <
175 /* (N4) WKUP_GPIO0_34 */
176 AM65X_WKUP_IOPAD(0x0058, PIN_OUTPUT, 7)
177 /* (M2) WKUP_GPIO0_36 */
178 AM65X_WKUP_IOPAD(0x0060, PIN_OUTPUT, 7)
179 /* (M3) WKUP_GPIO0_37 */
180 AM65X_WKUP_IOPAD(0x0064, PIN_OUTPUT, 7)
181 /* (M4) WKUP_GPIO0_38 */
182 AM65X_WKUP_IOPAD(0x0068, PIN_OUTPUT, 7)
183 /* (M1) WKUP_GPIO0_41 */
184 AM65X_WKUP_IOPAD(0x0074, PIN_OUTPUT, 7)
185 >;
186 };
187
Jan Kiszkab6fad962024-01-06 13:39:07 +0100188 mcu_fss0_ospi0_pins_default: mcu-fss0-ospi0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200189 pinctrl-single,pins = <
190 /* (V1) MCU_OSPI0_CLK */
191 AM65X_WKUP_IOPAD(0x0000, PIN_OUTPUT, 0)
192 /* (U2) MCU_OSPI0_DQS */
193 AM65X_WKUP_IOPAD(0x0008, PIN_INPUT, 0)
194 /* (U4) MCU_OSPI0_D0 */
195 AM65X_WKUP_IOPAD(0x000c, PIN_INPUT, 0)
196 /* (U5) MCU_OSPI0_D1 */
197 AM65X_WKUP_IOPAD(0x0010, PIN_INPUT, 0)
198 /* (R4) MCU_OSPI0_CSn0 */
199 AM65X_WKUP_IOPAD(0x002c, PIN_OUTPUT, 0)
200 >;
201 };
202
Jan Kiszkab6fad962024-01-06 13:39:07 +0100203 db9_com_mode_pins_default: db9-com-mode-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200204 pinctrl-single,pins = <
205 /* (AD3) WKUP_GPIO0_5, used as uart0 mode 0 */
206 AM65X_WKUP_IOPAD(0x00c4, PIN_OUTPUT, 7)
207 /* (AC3) WKUP_GPIO0_4, used as uart0 mode 1 */
208 AM65X_WKUP_IOPAD(0x00c0, PIN_OUTPUT, 7)
209 /* (AC1) WKUP_GPIO0_7, used as uart0 term */
210 AM65X_WKUP_IOPAD(0x00cc, PIN_OUTPUT, 7)
211 /* (AC2) WKUP_GPIO0_6, used as uart0 en */
212 AM65X_WKUP_IOPAD(0x00c8, PIN_OUTPUT, 7)
213 >;
214 };
215
Jan Kiszkab6fad962024-01-06 13:39:07 +0100216 leds_pins_default: leds-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200217 pinctrl-single,pins = <
218 /* (T2) WKUP_GPIO0_17, used as user led1 red */
219 AM65X_WKUP_IOPAD(0x0014, PIN_OUTPUT, 7)
220 /* (R3) WKUP_GPIO0_22, used as user led1 green */
221 AM65X_WKUP_IOPAD(0x0028, PIN_OUTPUT, 7)
222 /* (R5) WKUP_GPIO0_24, used as status led red */
223 AM65X_WKUP_IOPAD(0x0030, PIN_OUTPUT, 7)
224 /* (N2) WKUP_GPIO0_32, used as status led green */
225 AM65X_WKUP_IOPAD(0x0050, PIN_OUTPUT, 7)
226 >;
227 };
228
Jan Kiszkab6fad962024-01-06 13:39:07 +0100229 mcu_spi0_pins_default: mcu-spi0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200230 pinctrl-single,pins = <
231 /* (Y1) MCU_SPI0_CLK */
232 AM65X_WKUP_IOPAD(0x0090, PIN_INPUT, 0)
233 /* (Y3) MCU_SPI0_D0 */
234 AM65X_WKUP_IOPAD(0x0094, PIN_INPUT, 0)
235 /* (Y2) MCU_SPI0_D1 */
236 AM65X_WKUP_IOPAD(0x0098, PIN_INPUT, 0)
237 /* (Y4) MCU_SPI0_CS0 */
238 AM65X_WKUP_IOPAD(0x009c, PIN_OUTPUT, 0)
239 >;
240 };
241
Jan Kiszkab6fad962024-01-06 13:39:07 +0100242 minipcie_pins_default: minipcie-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200243 pinctrl-single,pins = <
244 /* (P2) MCU_OSPI1_DQS.WKUP_GPIO0_27 */
245 AM65X_WKUP_IOPAD(0x003C, PIN_OUTPUT, 7)
246 >;
247 };
248};
249
250&main_pmx0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100251 main_uart1_pins_default: main-uart1-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200252 pinctrl-single,pins = <
253 AM65X_IOPAD(0x0174, PIN_INPUT, 6) /* (AE23) UART1_RXD */
254 AM65X_IOPAD(0x014c, PIN_OUTPUT, 6) /* (AD23) UART1_TXD */
255 AM65X_IOPAD(0x0178, PIN_INPUT, 6) /* (AD22) UART1_CTSn */
256 AM65X_IOPAD(0x017c, PIN_OUTPUT, 6) /* (AC21) UART1_RTSn */
257 >;
258 };
259
Jan Kiszkab6fad962024-01-06 13:39:07 +0100260 main_i2c3_pins_default: main-i2c3-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200261 pinctrl-single,pins = <
262 AM65X_IOPAD(0x01c0, PIN_INPUT, 2) /* (AF13) I2C3_SCL */
263 AM65X_IOPAD(0x01d4, PIN_INPUT, 2) /* (AG12) I2C3_SDA */
264 >;
265 };
266
Jan Kiszkab6fad962024-01-06 13:39:07 +0100267 main_mmc1_pins_default: main-mmc1-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200268 pinctrl-single,pins = <
269 AM65X_IOPAD(0x02d4, PIN_INPUT_PULLDOWN, 0) /* (C27) MMC1_CLK */
270 AM65X_IOPAD(0x02d8, PIN_INPUT_PULLUP, 0) /* (C28) MMC1_CMD */
271 AM65X_IOPAD(0x02d0, PIN_INPUT_PULLUP, 0) /* (D28) MMC1_DAT0 */
272 AM65X_IOPAD(0x02cc, PIN_INPUT_PULLUP, 0) /* (E27) MMC1_DAT1 */
273 AM65X_IOPAD(0x02c8, PIN_INPUT_PULLUP, 0) /* (D26) MMC1_DAT2 */
274 AM65X_IOPAD(0x02c4, PIN_INPUT_PULLUP, 0) /* (D27) MMC1_DAT3 */
275 AM65X_IOPAD(0x02dc, PIN_INPUT_PULLUP, 0) /* (B24) MMC1_SDCD */
276 AM65X_IOPAD(0x02e0, PIN_INPUT_PULLUP, 0) /* (C24) MMC1_SDWP */
277 >;
278 };
279
Jan Kiszkab6fad962024-01-06 13:39:07 +0100280 usb0_pins_default: usb0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200281 pinctrl-single,pins = <
282 AM65X_IOPAD(0x02bc, PIN_OUTPUT, 0) /* (AD9) USB0_DRVVBUS */
283 >;
284 };
285
Jan Kiszkab6fad962024-01-06 13:39:07 +0100286 usb1_pins_default: usb1-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200287 pinctrl-single,pins = <
288 AM65X_IOPAD(0x02c0, PIN_OUTPUT, 0) /* (AC8) USB1_DRVVBUS */
289 >;
290 };
291
Jan Kiszkab6fad962024-01-06 13:39:07 +0100292 arduino_io_d4_to_d9_pins_default: arduino-io-d4-to-d9-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200293 pinctrl-single,pins = <
294 AM65X_IOPAD(0x0084, PIN_OUTPUT, 7) /* (AG18) GPIO0_33 */
295 AM65X_IOPAD(0x008C, PIN_OUTPUT, 7) /* (AF17) GPIO0_35 */
296 AM65X_IOPAD(0x0098, PIN_OUTPUT, 7) /* (AH16) GPIO0_38 */
297 AM65X_IOPAD(0x00AC, PIN_OUTPUT, 7) /* (AH15) GPIO0_43 */
298 AM65X_IOPAD(0x00C0, PIN_OUTPUT, 7) /* (AG15) GPIO0_48 */
299 AM65X_IOPAD(0x00CC, PIN_OUTPUT, 7) /* (AD15) GPIO0_51 */
300 >;
301 };
302
Jan Kiszkab6fad962024-01-06 13:39:07 +0100303 dss_vout1_pins_default: dss-vout1-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200304 pinctrl-single,pins = <
305 AM65X_IOPAD(0x0000, PIN_OUTPUT, 1) /* VOUT1_DATA0 */
306 AM65X_IOPAD(0x0004, PIN_OUTPUT, 1) /* VOUT1_DATA1 */
307 AM65X_IOPAD(0x0008, PIN_OUTPUT, 1) /* VOUT1_DATA2 */
308 AM65X_IOPAD(0x000c, PIN_OUTPUT, 1) /* VOUT1_DATA3 */
309 AM65X_IOPAD(0x0010, PIN_OUTPUT, 1) /* VOUT1_DATA4 */
310 AM65X_IOPAD(0x0014, PIN_OUTPUT, 1) /* VOUT1_DATA5 */
311 AM65X_IOPAD(0x0018, PIN_OUTPUT, 1) /* VOUT1_DATA6 */
312 AM65X_IOPAD(0x001c, PIN_OUTPUT, 1) /* VOUT1_DATA7 */
313 AM65X_IOPAD(0x0020, PIN_OUTPUT, 1) /* VOUT1_DATA8 */
314 AM65X_IOPAD(0x0024, PIN_OUTPUT, 1) /* VOUT1_DATA9 */
315 AM65X_IOPAD(0x0028, PIN_OUTPUT, 1) /* VOUT1_DATA10 */
316 AM65X_IOPAD(0x002c, PIN_OUTPUT, 1) /* VOUT1_DATA11 */
317 AM65X_IOPAD(0x0030, PIN_OUTPUT, 1) /* VOUT1_DATA12 */
318 AM65X_IOPAD(0x0034, PIN_OUTPUT, 1) /* VOUT1_DATA13 */
319 AM65X_IOPAD(0x0038, PIN_OUTPUT, 1) /* VOUT1_DATA14 */
320 AM65X_IOPAD(0x003c, PIN_OUTPUT, 1) /* VOUT1_DATA15 */
321 AM65X_IOPAD(0x0040, PIN_OUTPUT, 1) /* VOUT1_DATA16 */
322 AM65X_IOPAD(0x0044, PIN_OUTPUT, 1) /* VOUT1_DATA17 */
323 AM65X_IOPAD(0x0048, PIN_OUTPUT, 1) /* VOUT1_DATA18 */
324 AM65X_IOPAD(0x004c, PIN_OUTPUT, 1) /* VOUT1_DATA19 */
325 AM65X_IOPAD(0x0050, PIN_OUTPUT, 1) /* VOUT1_DATA20 */
326 AM65X_IOPAD(0x0054, PIN_OUTPUT, 1) /* VOUT1_DATA21 */
327 AM65X_IOPAD(0x0058, PIN_OUTPUT, 1) /* VOUT1_DATA22 */
328 AM65X_IOPAD(0x005c, PIN_OUTPUT, 1) /* VOUT1_DATA23 */
329 AM65X_IOPAD(0x0060, PIN_OUTPUT, 1) /* VOUT1_VSYNC */
330 AM65X_IOPAD(0x0064, PIN_OUTPUT, 1) /* VOUT1_HSYNC */
331 AM65X_IOPAD(0x0068, PIN_OUTPUT, 1) /* VOUT1_PCLK */
332 AM65X_IOPAD(0x006c, PIN_OUTPUT, 1) /* VOUT1_DE */
333 >;
334 };
335
Jan Kiszkab6fad962024-01-06 13:39:07 +0100336 dp_pins_default: dp-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200337 pinctrl-single,pins = <
338 AM65X_IOPAD(0x0078, PIN_OUTPUT, 7) /* (AF18) DP rst_n */
339 >;
340 };
341
Jan Kiszkab6fad962024-01-06 13:39:07 +0100342 main_i2c2_pins_default: main-i2c2-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200343 pinctrl-single,pins = <
344 AM65X_IOPAD(0x0074, PIN_INPUT, 5) /* (T27) I2C2_SCL */
345 AM65X_IOPAD(0x0070, PIN_INPUT, 5) /* (R25) I2C2_SDA */
346 >;
347 };
348};
349
350&main_pmx1 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100351 main_i2c0_pins_default: main-i2c0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200352 pinctrl-single,pins = <
353 AM65X_IOPAD(0x0000, PIN_INPUT, 0) /* (D20) I2C0_SCL */
354 AM65X_IOPAD(0x0004, PIN_INPUT, 0) /* (C21) I2C0_SDA */
355 >;
356 };
357
Jan Kiszkab6fad962024-01-06 13:39:07 +0100358 main_i2c1_pins_default: main-i2c1-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200359 pinctrl-single,pins = <
360 AM65X_IOPAD(0x0008, PIN_INPUT, 0) /* (B21) I2C1_SCL */
361 AM65X_IOPAD(0x000c, PIN_INPUT, 0) /* (E21) I2C1_SDA */
362 >;
363 };
364
Jan Kiszkab6fad962024-01-06 13:39:07 +0100365 ecap0_pins_default: ecap0-default-pins {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200366 pinctrl-single,pins = <
367 AM65X_IOPAD(0x0010, PIN_INPUT, 0) /* (D21) ECAP0_IN_APWM_OUT */
368 >;
369 };
370};
371
372&wkup_uart0 {
373 /* Wakeup UART is used by System firmware */
374 status = "reserved";
375};
376
377&main_uart1 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100378 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200379 pinctrl-names = "default";
380 pinctrl-0 = <&main_uart1_pins_default>;
381};
382
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200383&mcu_uart0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100384 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200385 pinctrl-names = "default";
386 pinctrl-0 = <&arduino_uart_pins_default>;
387};
388
389&main_gpio0 {
390 pinctrl-names = "default";
391 pinctrl-0 = <&arduino_io_d4_to_d9_pins_default>;
392 gpio-line-names =
393 "main_gpio0-base", "", "", "", "", "", "", "", "", "",
394 "", "", "", "", "", "", "", "", "", "",
395 "", "", "", "", "", "", "", "", "", "",
396 "", "", "", "IO4", "", "IO5", "", "", "IO6", "",
397 "", "", "", "IO7", "", "", "", "", "IO8", "",
398 "", "IO9";
399};
400
401&wkup_gpio0 {
402 pinctrl-names = "default";
Jan Kiszkab6fad962024-01-06 13:39:07 +0100403 pinctrl-0 =
404 <&arduino_io_d2_to_d3_pins_default>,
405 <&arduino_i2c_aio_switch_pins_default>,
406 <&arduino_io_oe_pins_default>,
407 <&push_button_pins_default>,
408 <&db9_com_mode_pins_default>;
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200409 gpio-line-names =
410 /* 0..9 */
411 "wkup_gpio0-base", "", "", "", "UART0-mode1", "UART0-mode0",
412 "UART0-enable", "UART0-terminate", "", "WIFI-disable",
413 /* 10..19 */
414 "", "", "", "", "", "", "", "", "", "",
415 /* 20..29 */
416 "", "A4A5-I2C-mux", "", "", "", "USER-button", "", "", "","IO0",
417 /* 30..39 */
418 "IO1", "IO2", "", "IO3", "IO17-direction", "A5",
419 "IO16-direction", "IO15-direction", "IO14-direction", "A3",
420 /* 40..49 */
421 "", "IO18-direction", "A4", "A2", "A1", "A0", "", "", "IO13",
422 "IO11",
423 /* 50..51 */
424 "IO12", "IO10";
425};
426
427&wkup_i2c0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100428 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200429 pinctrl-names = "default";
430 pinctrl-0 = <&wkup_i2c0_pins_default>;
431 clock-frequency = <400000>;
432};
433
434&mcu_i2c0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100435 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200436 pinctrl-names = "default";
437 pinctrl-0 = <&mcu_i2c0_pins_default>;
438 clock-frequency = <400000>;
439
440 psu: regulator@60 {
441 compatible = "ti,tps62363";
Jan Kiszkab6fad962024-01-06 13:39:07 +0100442 reg = <0x60>;
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200443 regulator-name = "tps62363-vout";
444 regulator-min-microvolt = <500000>;
445 regulator-max-microvolt = <1500000>;
446 regulator-boot-on;
447 ti,vsel0-state-high;
448 ti,vsel1-state-high;
449 ti,enable-vout-discharge;
450 };
451
452 /* D4200 */
453 pcal9535_1: gpio@20 {
454 compatible = "nxp,pcal9535";
455 reg = <0x20>;
456 #gpio-cells = <2>;
457 gpio-controller;
458 gpio-line-names =
459 "A0-pull", "A1-pull", "A2-pull", "A3-pull", "A4-pull",
460 "A5-pull", "", "",
461 "IO14-enable", "IO15-enable", "IO16-enable",
462 "IO17-enable", "IO18-enable", "IO19-enable";
463 };
464
465 /* D4201 */
466 pcal9535_2: gpio@21 {
467 compatible = "nxp,pcal9535";
468 reg = <0x21>;
469 #gpio-cells = <2>;
470 gpio-controller;
471 gpio-line-names =
472 "IO0-direction", "IO1-direction", "IO2-direction",
473 "IO3-direction", "IO4-direction", "IO5-direction",
474 "IO6-direction", "IO7-direction",
475 "IO8-direction", "IO9-direction", "IO10-direction",
476 "IO11-direction", "IO12-direction", "IO13-direction",
477 "IO19-direction";
478 };
479
480 /* D4202 */
481 pcal9535_3: gpio@25 {
482 compatible = "nxp,pcal9535";
483 reg = <0x25>;
484 #gpio-cells = <2>;
485 gpio-controller;
486 gpio-line-names =
487 "IO0-pull", "IO1-pull", "IO2-pull", "IO3-pull",
488 "IO4-pull", "IO5-pull", "IO6-pull", "IO7-pull",
489 "IO8-pull", "IO9-pull", "IO10-pull", "IO11-pull",
490 "IO12-pull", "IO13-pull";
491 };
492};
493
494&main_i2c0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100495 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200496 pinctrl-names = "default";
497 pinctrl-0 = <&main_i2c0_pins_default>;
498 clock-frequency = <400000>;
499
Jan Kiszkab6fad962024-01-06 13:39:07 +0100500 rtc: rtc@51 {
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200501 compatible = "nxp,pcf8563";
502 reg = <0x51>;
503 };
504
505 eeprom: eeprom@54 {
506 compatible = "atmel,24c08";
507 reg = <0x54>;
508 pagesize = <16>;
509 };
510};
511
512&main_i2c1 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100513 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200514 pinctrl-names = "default";
515 pinctrl-0 = <&main_i2c1_pins_default>;
516 clock-frequency = <400000>;
517};
518
519&main_i2c2 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100520 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200521 pinctrl-names = "default";
522 pinctrl-0 = <&main_i2c2_pins_default>;
523 clock-frequency = <400000>;
524};
525
526&main_i2c3 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100527 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200528 pinctrl-names = "default";
529 pinctrl-0 = <&main_i2c3_pins_default>;
530 clock-frequency = <400000>;
531
532 #address-cells = <1>;
533 #size-cells = <0>;
534
535 edp-bridge@f {
536 compatible = "toshiba,tc358767";
537 reg = <0x0f>;
538 pinctrl-names = "default";
539 pinctrl-0 = <&dp_pins_default>;
540 reset-gpios = <&main_gpio0 30 GPIO_ACTIVE_HIGH>;
541
542 clock-names = "ref";
543 clocks = <&dp_refclk>;
544
545 toshiba,hpd-pin = <0>;
546
547 ports {
548 #address-cells = <1>;
549 #size-cells = <0>;
550
551 port@1 {
552 reg = <1>;
553
554 bridge_in: endpoint {
555 remote-endpoint = <&dpi_out>;
556 };
557 };
558 };
559 };
560};
561
562&mcu_cpsw {
563 status = "disabled";
564};
565
566&ecap0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100567 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200568 pinctrl-names = "default";
569 pinctrl-0 = <&ecap0_pins_default>;
570};
571
572&sdhci1 {
573 pinctrl-names = "default";
574 pinctrl-0 = <&main_mmc1_pins_default>;
575 ti,driver-strength-ohm = <50>;
576 disable-wp;
577};
578
579&usb0 {
580 pinctrl-names = "default";
581 pinctrl-0 = <&usb0_pins_default>;
582 dr_mode = "host";
583};
584
585&usb1 {
586 pinctrl-names = "default";
587 pinctrl-0 = <&usb1_pins_default>;
588 dr_mode = "host";
589};
590
591&mcu_spi0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100592 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200593 pinctrl-names = "default";
594 pinctrl-0 = <&mcu_spi0_pins_default>;
595
596 #address-cells = <1>;
Jan Kiszkab6fad962024-01-06 13:39:07 +0100597 #size-cells = <0>;
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200598 ti,pindir-d0-out-d1-in;
599};
600
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200601&tscadc1 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100602 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200603 adc {
604 ti,adc-channels = <0 1 2 3 4 5>;
605 };
606};
607
608&ospi0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100609 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200610 pinctrl-names = "default";
611 pinctrl-0 = <&mcu_fss0_ospi0_pins_default>;
612
613 flash@0 {
614 compatible = "jedec,spi-nor";
615 reg = <0x0>;
616 spi-tx-bus-width = <1>;
617 spi-rx-bus-width = <1>;
618 spi-max-frequency = <50000000>;
619 cdns,tshsl-ns = <60>;
620 cdns,tsd2d-ns = <60>;
621 cdns,tchsh-ns = <60>;
622 cdns,tslch-ns = <60>;
623 cdns,read-delay = <2>;
Jan Kiszkab6fad962024-01-06 13:39:07 +0100624
625 partitions {
626 compatible = "fixed-partitions";
627 #address-cells = <1>;
628 #size-cells = <1>;
629
630 seboot@0 {
631 label = "seboot";
632 reg = <0x0 0x180000>; /* 1.5M */
633 };
634
635 tispl@180000 {
636 label = "tispl";
637 reg = <0x180000 0x200000>; /* 2M */
638 };
639
640 u-boot@380000 {
641 label = "u-boot";
642 reg = <0x380000 0x300000>; /* 3M */
643 };
644
645 env@680000 {
646 label = "env";
647 reg = <0x680000 0x20000>; /* 128K */
648 };
649
650 env-backup@6a0000 {
651 label = "env.backup";
652 reg = <0x6a0000 0x20000>; /* 128K */
653 };
654
655 otpcmd@6c0000 {
656 label = "otpcmd";
657 reg = <0x6c0000 0x10000>; /* 64K */
658 };
659
660 unused@6d0000 {
661 label = "unused";
662 reg = <0x6d0000 0x7b0000>; /* 7872K */
663 };
664
665 seboot-backup@e80000 {
666 label = "seboot.backup";
667 reg = <0xe80000 0x180000>; /* 1.5M */
668 };
669 };
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200670 };
671};
672
673&dss {
674 pinctrl-names = "default";
675 pinctrl-0 = <&dss_vout1_pins_default>;
676
677 assigned-clocks = <&k3_clks 67 2>;
678 assigned-clock-parents = <&k3_clks 67 5>;
679};
680
681&dss_ports {
682 #address-cells = <1>;
683 #size-cells = <0>;
684 port@1 {
685 reg = <1>;
686
687 dpi_out: endpoint {
688 remote-endpoint = <&bridge_in>;
689 };
690 };
691};
692
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200693&pcie1_rc {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100694 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200695 pinctrl-names = "default";
696 pinctrl-0 = <&minipcie_pins_default>;
697
698 num-lanes = <1>;
699 phys = <&serdes1 PHY_TYPE_PCIE 0>;
700 phy-names = "pcie-phy0";
701 reset-gpios = <&wkup_gpio0 27 GPIO_ACTIVE_HIGH>;
702};
703
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200704&mailbox0_cluster0 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100705 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200706 interrupts = <436>;
707
708 mbox_mcu_r5fss0_core0: mbox-mcu-r5fss0-core0 {
709 ti,mbox-tx = <1 0 0>;
710 ti,mbox-rx = <0 0 0>;
711 };
712};
713
714&mailbox0_cluster1 {
Jan Kiszkab6fad962024-01-06 13:39:07 +0100715 status = "okay";
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200716 interrupts = <432>;
717
718 mbox_mcu_r5fss0_core1: mbox-mcu-r5fss0-core1 {
719 ti,mbox-tx = <1 0 0>;
720 ti,mbox-rx = <0 0 0>;
721 };
722};
723
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200724&mcu_r5fss0_core0 {
725 memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
726 <&mcu_r5fss0_core0_memory_region>;
Jan Kiszkab6fad962024-01-06 13:39:07 +0100727 mboxes = <&mailbox0_cluster0>, <&mbox_mcu_r5fss0_core0>;
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200728};
729
730&mcu_r5fss0_core1 {
731 memory-region = <&mcu_r5fss0_core1_dma_memory_region>,
732 <&mcu_r5fss0_core1_memory_region>;
Jan Kiszkab6fad962024-01-06 13:39:07 +0100733 mboxes = <&mailbox0_cluster1>, <&mbox_mcu_r5fss0_core1>;
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200734};
735
Li Hua Qianb0c964f2023-08-29 11:46:21 +0800736&mcu_rti1 {
737 memory-region = <&wdt_reset_memory_region>;
Jan Kiszka4a88eb22021-09-18 08:17:52 +0200738};