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