1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) 2019 Texas Instruments Incorporated - https://www.ti.com/
4 */
5
6/dts-v1/;
7
8#include "k3-j721e-som-p0.dtsi"
9#include <dt-bindings/gpio/gpio.h>
10#include <dt-bindings/input/input.h>
11#include <dt-bindings/net/ti-dp83867.h>
12#include <dt-bindings/phy/phy-cadence.h>
13
14/ {
15	compatible = "ti,j721e-evm", "ti,j721e";
16	model = "Texas Instruments J721e EVM";
17
18	chosen {
19		stdout-path = "serial2:115200n8";
20		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
21	};
22
23	gpio_keys: gpio-keys {
24		compatible = "gpio-keys";
25		autorepeat;
26		pinctrl-names = "default";
27		pinctrl-0 = <&sw10_button_pins_default &sw11_button_pins_default>;
28
29		sw10: sw10 {
30			label = "GPIO Key USER1";
31			linux,code = <BTN_0>;
32			gpios = <&main_gpio0 0 GPIO_ACTIVE_LOW>;
33		};
34
35		sw11: sw11 {
36			label = "GPIO Key USER2";
37			linux,code = <BTN_1>;
38			gpios = <&wkup_gpio0 7 GPIO_ACTIVE_LOW>;
39		};
40	};
41
42	evm_12v0: fixedregulator-evm12v0 {
43		/* main supply */
44		compatible = "regulator-fixed";
45		regulator-name = "evm_12v0";
46		regulator-min-microvolt = <12000000>;
47		regulator-max-microvolt = <12000000>;
48		regulator-always-on;
49		regulator-boot-on;
50	};
51
52	vsys_3v3: fixedregulator-vsys3v3 {
53		/* Output of LMS140 */
54		compatible = "regulator-fixed";
55		regulator-name = "vsys_3v3";
56		regulator-min-microvolt = <3300000>;
57		regulator-max-microvolt = <3300000>;
58		vin-supply = <&evm_12v0>;
59		regulator-always-on;
60		regulator-boot-on;
61	};
62
63	vsys_5v0: fixedregulator-vsys5v0 {
64		/* Output of LM5140 */
65		compatible = "regulator-fixed";
66		regulator-name = "vsys_5v0";
67		regulator-min-microvolt = <5000000>;
68		regulator-max-microvolt = <5000000>;
69		vin-supply = <&evm_12v0>;
70		regulator-always-on;
71		regulator-boot-on;
72	};
73
74	vdd_mmc1: fixedregulator-sd {
75		compatible = "regulator-fixed";
76		regulator-name = "vdd_mmc1";
77		regulator-min-microvolt = <3300000>;
78		regulator-max-microvolt = <3300000>;
79		regulator-boot-on;
80		enable-active-high;
81		vin-supply = <&vsys_3v3>;
82		gpio = <&exp2 2 GPIO_ACTIVE_HIGH>;
83	};
84
85	vdd_sd_dv_alt: gpio-regulator-TLV71033 {
86		compatible = "regulator-gpio";
87		pinctrl-names = "default";
88		pinctrl-0 = <&vdd_sd_dv_alt_pins_default>;
89		regulator-name = "tlv71033";
90		regulator-min-microvolt = <1800000>;
91		regulator-max-microvolt = <3300000>;
92		regulator-boot-on;
93		vin-supply = <&vsys_5v0>;
94		gpios = <&main_gpio0 117 GPIO_ACTIVE_HIGH>;
95		states = <1800000 0x0>,
96			 <3300000 0x1>;
97	};
98
99	sound0: sound@0 {
100		compatible = "ti,j721e-cpb-audio";
101		model = "j721e-cpb";
102
103		ti,cpb-mcasp = <&mcasp10>;
104		ti,cpb-codec = <&pcm3168a_1>;
105
106		clocks = <&k3_clks 184 1>,
107			 <&k3_clks 184 2>, <&k3_clks 184 4>,
108			 <&k3_clks 157 371>,
109			 <&k3_clks 157 400>, <&k3_clks 157 401>;
110		clock-names = "cpb-mcasp-auxclk",
111			      "cpb-mcasp-auxclk-48000", "cpb-mcasp-auxclk-44100",
112			      "cpb-codec-scki",
113			      "cpb-codec-scki-48000", "cpb-codec-scki-44100";
114	};
115
116	transceiver1: can-phy0 {
117		compatible = "ti,tcan1043";
118		#phy-cells = <0>;
119		max-bitrate = <5000000>;
120		pinctrl-names = "default";
121		pinctrl-0 = <&mcu_mcan0_gpio_pins_default>;
122		standby-gpios = <&wkup_gpio0 54 GPIO_ACTIVE_LOW>;
123		enable-gpios = <&wkup_gpio0 0 GPIO_ACTIVE_HIGH>;
124	};
125
126	transceiver2: can-phy1 {
127		compatible = "ti,tcan1042";
128		#phy-cells = <0>;
129		max-bitrate = <5000000>;
130		pinctrl-names = "default";
131		pinctrl-0 = <&mcu_mcan1_gpio_pins_default>;
132		standby-gpios = <&wkup_gpio0 2 GPIO_ACTIVE_HIGH>;
133	};
134
135	transceiver3: can-phy2 {
136		compatible = "ti,tcan1043";
137		#phy-cells = <0>;
138		max-bitrate = <5000000>;
139		standby-gpios = <&exp2 7 GPIO_ACTIVE_LOW>;
140		enable-gpios = <&exp2 6 GPIO_ACTIVE_HIGH>;
141	};
142
143	transceiver4: can-phy3 {
144		compatible = "ti,tcan1042";
145		#phy-cells = <0>;
146		max-bitrate = <5000000>;
147		pinctrl-names = "default";
148		pinctrl-0 = <&main_mcan2_gpio_pins_default>;
149		standby-gpios = <&main_gpio0 127 GPIO_ACTIVE_HIGH>;
150	};
151};
152
153&main_pmx0 {
154	sw10_button_pins_default: sw10-button-pins-default {
155		pinctrl-single,pins = <
156			J721E_IOPAD(0x0, PIN_INPUT, 7) /* (AC18) EXTINTn.GPIO0_0 */
157		>;
158	};
159
160	main_mmc1_pins_default: main-mmc1-pins-default {
161		pinctrl-single,pins = <
162			J721E_IOPAD(0x254, PIN_INPUT, 0) /* (R29) MMC1_CMD */
163			J721E_IOPAD(0x250, PIN_INPUT, 0) /* (P25) MMC1_CLK */
164			J721E_IOPAD(0x2ac, PIN_INPUT, 0) /* (P25) MMC1_CLKLB */
165			J721E_IOPAD(0x24c, PIN_INPUT, 0) /* (R24) MMC1_DAT0 */
166			J721E_IOPAD(0x248, PIN_INPUT, 0) /* (P24) MMC1_DAT1 */
167			J721E_IOPAD(0x244, PIN_INPUT, 0) /* (R25) MMC1_DAT2 */
168			J721E_IOPAD(0x240, PIN_INPUT, 0) /* (R26) MMC1_DAT3 */
169			J721E_IOPAD(0x258, PIN_INPUT, 0) /* (P23) MMC1_SDCD */
170			J721E_IOPAD(0x25c, PIN_INPUT, 0) /* (R28) MMC1_SDWP */
171		>;
172	};
173
174	vdd_sd_dv_alt_pins_default: vdd-sd-dv-alt-pins-default {
175		pinctrl-single,pins = <
176			J721E_IOPAD(0x1d8, PIN_INPUT, 7) /* (W4) SPI1_CS1.GPIO0_117 */
177		>;
178	};
179
180	main_usbss0_pins_default: main-usbss0-pins-default {
181		pinctrl-single,pins = <
182			J721E_IOPAD(0x290, PIN_OUTPUT, 0) /* (U6) USB0_DRVVBUS */
183			J721E_IOPAD(0x210, PIN_INPUT, 7) /* (W3) MCAN1_RX.GPIO1_3 */
184		>;
185	};
186
187	main_usbss1_pins_default: main-usbss1-pins-default {
188		pinctrl-single,pins = <
189			J721E_IOPAD(0x214, PIN_OUTPUT, 4) /* (V4) MCAN1_TX.USB1_DRVVBUS */
190		>;
191	};
192
193	main_i2c1_exp4_pins_default: main-i2c1-exp4-pins-default {
194		pinctrl-single,pins = <
195			J721E_IOPAD(0x230, PIN_INPUT, 7) /* (U2) ECAP0_IN_APWM_OUT.GPIO1_11 */
196		>;
197	};
198
199	main_i2c0_pins_default: main-i2c0-pins-default {
200		pinctrl-single,pins = <
201			J721E_IOPAD(0x220, PIN_INPUT_PULLUP, 0) /* (AC5) I2C0_SCL */
202			J721E_IOPAD(0x224, PIN_INPUT_PULLUP, 0) /* (AA5) I2C0_SDA */
203		>;
204	};
205
206	main_i2c1_pins_default: main-i2c1-pins-default {
207		pinctrl-single,pins = <
208			J721E_IOPAD(0x228, PIN_INPUT_PULLUP, 0) /* (Y6) I2C1_SCL */
209			J721E_IOPAD(0x22c, PIN_INPUT_PULLUP, 0) /* (AA6) I2C1_SDA */
210		>;
211	};
212
213	main_i2c3_pins_default: main-i2c3-pins-default {
214		pinctrl-single,pins = <
215			J721E_IOPAD(0x270, PIN_INPUT_PULLUP, 4) /* (T26) MMC2_CLK.I2C3_SCL */
216			J721E_IOPAD(0x274, PIN_INPUT_PULLUP, 4) /* (T25) MMC2_CMD.I2C3_SDA */
217		>;
218	};
219
220	main_i2c6_pins_default: main-i2c6-pins-default {
221		pinctrl-single,pins = <
222			J721E_IOPAD(0x1d0, PIN_INPUT_PULLUP, 2) /* (AA3) SPI0_D1.I2C6_SCL */
223			J721E_IOPAD(0x1e4, PIN_INPUT_PULLUP, 2) /* (Y2) SPI1_D1.I2C6_SDA */
224		>;
225	};
226
227	mcasp10_pins_default: mcasp10-pins-default {
228		pinctrl-single,pins = <
229			J721E_IOPAD(0x158, PIN_OUTPUT_PULLDOWN, 12) /* (U23) RGMII5_TX_CTL.MCASP10_ACLKX */
230			J721E_IOPAD(0x15c, PIN_OUTPUT_PULLDOWN, 12) /* (U26) RGMII5_RX_CTL.MCASP10_AFSX */
231			J721E_IOPAD(0x160, PIN_OUTPUT_PULLDOWN, 12) /* (V28) RGMII5_TD3.MCASP10_AXR0 */
232			J721E_IOPAD(0x164, PIN_OUTPUT_PULLDOWN, 12) /* (V29) RGMII5_TD2.MCASP10_AXR1 */
233			J721E_IOPAD(0x170, PIN_OUTPUT_PULLDOWN, 12) /* (U29) RGMII5_TXC.MCASP10_AXR2 */
234			J721E_IOPAD(0x174, PIN_OUTPUT_PULLDOWN, 12) /* (U25) RGMII5_RXC.MCASP10_AXR3 */
235			J721E_IOPAD(0x198, PIN_INPUT_PULLDOWN, 12) /* (V25) RGMII6_TD1.MCASP10_AXR4 */
236			J721E_IOPAD(0x19c, PIN_INPUT_PULLDOWN, 12) /* (W27) RGMII6_TD0.MCASP10_AXR5 */
237			J721E_IOPAD(0x1a0, PIN_INPUT_PULLDOWN, 12) /* (W29) RGMII6_TXC.MCASP10_AXR6 */
238		>;
239	};
240
241	audi_ext_refclk2_pins_default: audi-ext-refclk2-pins-default {
242		pinctrl-single,pins = <
243			J721E_IOPAD(0x1a4, PIN_OUTPUT, 3) /* (W26) RGMII6_RXC.AUDIO_EXT_REFCLK2 */
244		>;
245	};
246
247	main_mcan0_pins_default: main-mcan0-pins-default {
248		pinctrl-single,pins = <
249			J721E_IOPAD(0x208, PIN_INPUT, 0) /* (W5) MCAN0_RX */
250			J721E_IOPAD(0x20c, PIN_OUTPUT, 0) /* (W6) MCAN0_TX */
251		>;
252	};
253
254	main_mcan2_pins_default: main-mcan2-pins-default {
255		pinctrl-single,pins = <
256			J721E_IOPAD(0x01f0, PIN_INPUT, 3) /* (AC2) MCAN2_RX.GPIO0_123 */
257			J721E_IOPAD(0x01f4, PIN_OUTPUT, 3) /* (AB1) MCAN2_TX.GPIO0_124 */
258		>;
259	};
260
261	main_mcan2_gpio_pins_default: main-mcan2-gpio-pins-default {
262		pinctrl-single,pins = <
263			J721E_IOPAD(0x200, PIN_INPUT, 7) /* (AC4) UART1_CTSn.GPIO0_127 */
264		>;
265	};
266};
267
268&wkup_pmx0 {
269	sw11_button_pins_default: sw11-button-pins-default {
270		pinctrl-single,pins = <
271			J721E_WKUP_IOPAD(0xcc, PIN_INPUT, 7) /* (G28) WKUP_GPIO0_7 */
272		>;
273	};
274
275	mcu_fss0_ospi1_pins_default: mcu-fss0-ospi1-pins-default {
276		pinctrl-single,pins = <
277			J721E_WKUP_IOPAD(0x34, PIN_OUTPUT, 0) /* (F22) MCU_OSPI1_CLK */
278			J721E_WKUP_IOPAD(0x50, PIN_OUTPUT, 0) /* (C22) MCU_OSPI1_CSn0 */
279			J721E_WKUP_IOPAD(0x40, PIN_INPUT, 0) /* (D22) MCU_OSPI1_D0 */
280			J721E_WKUP_IOPAD(0x44, PIN_INPUT, 0) /* (G22) MCU_OSPI1_D1 */
281			J721E_WKUP_IOPAD(0x48, PIN_INPUT, 0) /* (D23) MCU_OSPI1_D2 */
282			J721E_WKUP_IOPAD(0x4c, PIN_INPUT, 0) /* (C23) MCU_OSPI1_D3 */
283			J721E_WKUP_IOPAD(0x3c, PIN_INPUT, 0) /* (B23) MCU_OSPI1_DQS */
284			J721E_WKUP_IOPAD(0x38, PIN_INPUT, 0) /* (A23) MCU_OSPI1_LBCLKO */
285		>;
286	};
287
288	mcu_cpsw_pins_default: mcu-cpsw-pins-default {
289		pinctrl-single,pins = <
290			J721E_WKUP_IOPAD(0x0058, PIN_OUTPUT, 0) /* MCU_RGMII1_TX_CTL */
291			J721E_WKUP_IOPAD(0x005c, PIN_INPUT, 0) /* MCU_RGMII1_RX_CTL */
292			J721E_WKUP_IOPAD(0x0060, PIN_OUTPUT, 0) /* MCU_RGMII1_TD3 */
293			J721E_WKUP_IOPAD(0x0064, PIN_OUTPUT, 0) /* MCU_RGMII1_TD2 */
294			J721E_WKUP_IOPAD(0x0068, PIN_OUTPUT, 0) /* MCU_RGMII1_TD1 */
295			J721E_WKUP_IOPAD(0x006c, PIN_OUTPUT, 0) /* MCU_RGMII1_TD0 */
296			J721E_WKUP_IOPAD(0x0078, PIN_INPUT, 0) /* MCU_RGMII1_RD3 */
297			J721E_WKUP_IOPAD(0x007c, PIN_INPUT, 0) /* MCU_RGMII1_RD2 */
298			J721E_WKUP_IOPAD(0x0080, PIN_INPUT, 0) /* MCU_RGMII1_RD1 */
299			J721E_WKUP_IOPAD(0x0084, PIN_INPUT, 0) /* MCU_RGMII1_RD0 */
300			J721E_WKUP_IOPAD(0x0070, PIN_OUTPUT, 0) /* MCU_RGMII1_TXC */
301			J721E_WKUP_IOPAD(0x0074, PIN_INPUT, 0) /* MCU_RGMII1_RXC */
302		>;
303	};
304
305	mcu_mdio_pins_default: mcu-mdio1-pins-default {
306		pinctrl-single,pins = <
307			J721E_WKUP_IOPAD(0x008c, PIN_OUTPUT, 0) /* MCU_MDIO0_MDC */
308			J721E_WKUP_IOPAD(0x0088, PIN_INPUT, 0) /* MCU_MDIO0_MDIO */
309		>;
310	};
311
312	mcu_mcan0_pins_default: mcu-mcan0-pins-default {
313		pinctrl-single,pins = <
314			J721E_WKUP_IOPAD(0xac, PIN_INPUT, 0) /* (C29) MCU_MCAN0_RX */
315			J721E_WKUP_IOPAD(0xa8, PIN_OUTPUT, 0) /* (D29) MCU_MCAN0_TX */
316		>;
317	};
318
319	mcu_mcan0_gpio_pins_default: mcu-mcan0-gpio-pins-default {
320		pinctrl-single,pins = <
321			J721E_WKUP_IOPAD(0xb0, PIN_INPUT, 7) /* (F26) WKUP_GPIO0_0 */
322			J721E_WKUP_IOPAD(0x98, PIN_INPUT, 7) /* (E28) MCU_SPI0_D1.WKUP_GPIO0_54 */
323		>;
324	};
325
326	mcu_mcan1_pins_default: mcu-mcan1-pins-default {
327		pinctrl-single,pins = <
328			J721E_WKUP_IOPAD(0xc4, PIN_INPUT, 0) /* (G24) WKUP_GPIO0_5.MCU_MCAN1_RX */
329			J721E_WKUP_IOPAD(0xc0, PIN_OUTPUT, 0) /* (G25) WKUP_GPIO0_4.MCU_MCAN1_TX */
330		>;
331	};
332
333	mcu_mcan1_gpio_pins_default: mcu-mcan1-gpio-pins-default {
334		pinctrl-single,pins = <
335			J721E_WKUP_IOPAD(0xb8, PIN_INPUT, 7) /* (F28) WKUP_GPIO0_2 */
336		>;
337	};
338};
339
340&wkup_uart0 {
341	/* Wakeup UART is used by System firmware */
342	status = "reserved";
343};
344
345&main_uart0 {
346	power-domains = <&k3_pds 146 TI_SCI_PD_SHARED>;
347};
348
349&main_uart3 {
350	/* UART not brought out */
351	status = "disabled";
352};
353
354&main_uart5 {
355	/* UART not brought out */
356	status = "disabled";
357};
358
359&main_uart6 {
360	/* UART not brought out */
361	status = "disabled";
362};
363
364&main_uart7 {
365	/* UART not brought out */
366	status = "disabled";
367};
368
369&main_uart8 {
370	/* UART not brought out */
371	status = "disabled";
372};
373
374&main_uart9 {
375	/* UART not brought out */
376	status = "disabled";
377};
378
379&main_gpio2 {
380	status = "disabled";
381};
382
383&main_gpio3 {
384	status = "disabled";
385};
386
387&main_gpio4 {
388	status = "disabled";
389};
390
391&main_gpio5 {
392	status = "disabled";
393};
394
395&main_gpio6 {
396	status = "disabled";
397};
398
399&main_gpio7 {
400	status = "disabled";
401};
402
403&wkup_gpio1 {
404	status = "disabled";
405};
406
407&main_sdhci0 {
408	/* eMMC */
409	non-removable;
410	ti,driver-strength-ohm = <50>;
411	disable-wp;
412};
413
414&main_sdhci1 {
415	/* SD/MMC */
416	vmmc-supply = <&vdd_mmc1>;
417	vqmmc-supply = <&vdd_sd_dv_alt>;
418	pinctrl-names = "default";
419	pinctrl-0 = <&main_mmc1_pins_default>;
420	ti,driver-strength-ohm = <50>;
421	disable-wp;
422};
423
424&main_sdhci2 {
425	/* Unused */
426	status = "disabled";
427};
428
429&usb_serdes_mux {
430	idle-states = <1>, <0>; /* USB0 to SERDES3, USB1 to SERDES1 */
431};
432
433&serdes_ln_ctrl {
434	idle-states = <J721E_SERDES0_LANE0_PCIE0_LANE0>, <J721E_SERDES0_LANE1_PCIE0_LANE1>,
435		      <J721E_SERDES1_LANE0_PCIE1_LANE0>, <J721E_SERDES1_LANE1_PCIE1_LANE1>,
436		      <J721E_SERDES2_LANE0_PCIE2_LANE0>, <J721E_SERDES2_LANE1_PCIE2_LANE1>,
437		      <J721E_SERDES3_LANE0_USB3_0_SWAP>, <J721E_SERDES3_LANE1_USB3_0>,
438		      <J721E_SERDES4_LANE0_EDP_LANE0>, <J721E_SERDES4_LANE1_EDP_LANE1>,
439		      <J721E_SERDES4_LANE2_EDP_LANE2>, <J721E_SERDES4_LANE3_EDP_LANE3>;
440};
441
442&serdes_wiz3 {
443	typec-dir-gpios = <&main_gpio1 3 GPIO_ACTIVE_HIGH>;
444	typec-dir-debounce-ms = <700>;	/* TUSB321, tCCB_DEFAULT 133 ms */
445};
446
447&serdes3 {
448	serdes3_usb_link: phy@0 {
449		reg = <0>;
450		cdns,num-lanes = <2>;
451		#phy-cells = <0>;
452		cdns,phy-type = <PHY_TYPE_USB3>;
453		resets = <&serdes_wiz3 1>, <&serdes_wiz3 2>;
454	};
455};
456
457&usbss0 {
458	pinctrl-names = "default";
459	pinctrl-0 = <&main_usbss0_pins_default>;
460	ti,vbus-divider;
461};
462
463&usb0 {
464	dr_mode = "otg";
465	maximum-speed = "super-speed";
466	phys = <&serdes3_usb_link>;
467	phy-names = "cdns3,usb3-phy";
468};
469
470&usbss1 {
471	pinctrl-names = "default";
472	pinctrl-0 = <&main_usbss1_pins_default>;
473	ti,usb2-only;
474};
475
476&usb1 {
477	dr_mode = "host";
478	maximum-speed = "high-speed";
479};
480
481&ospi1 {
482	pinctrl-names = "default";
483	pinctrl-0 = <&mcu_fss0_ospi1_pins_default>;
484
485	flash@0{
486		compatible = "jedec,spi-nor";
487		reg = <0x0>;
488		spi-tx-bus-width = <1>;
489		spi-rx-bus-width = <4>;
490		spi-max-frequency = <40000000>;
491		cdns,tshsl-ns = <60>;
492		cdns,tsd2d-ns = <60>;
493		cdns,tchsh-ns = <60>;
494		cdns,tslch-ns = <60>;
495		cdns,read-delay = <2>;
496		#address-cells = <1>;
497		#size-cells = <1>;
498	};
499};
500
501&tscadc0 {
502	adc {
503		ti,adc-channels = <0 1 2 3 4 5 6 7>;
504	};
505};
506
507&tscadc1 {
508	adc {
509		ti,adc-channels = <0 1 2 3 4 5 6 7>;
510	};
511};
512
513&main_i2c0 {
514	pinctrl-names = "default";
515	pinctrl-0 = <&main_i2c0_pins_default>;
516	clock-frequency = <400000>;
517
518	exp1: gpio@20 {
519		compatible = "ti,tca6416";
520		reg = <0x20>;
521		gpio-controller;
522		#gpio-cells = <2>;
523	};
524
525	exp2: gpio@22 {
526		compatible = "ti,tca6424";
527		reg = <0x22>;
528		gpio-controller;
529		#gpio-cells = <2>;
530
531		p09-hog {
532			/* P11 - MCASP/TRACE_MUX_S0 */
533			gpio-hog;
534			gpios = <9 GPIO_ACTIVE_HIGH>;
535			output-low;
536			line-name = "MCASP/TRACE_MUX_S0";
537		};
538
539		p10-hog {
540			/* P12 - MCASP/TRACE_MUX_S1 */
541			gpio-hog;
542			gpios = <10 GPIO_ACTIVE_HIGH>;
543			output-high;
544			line-name = "MCASP/TRACE_MUX_S1";
545		};
546	};
547};
548
549&main_i2c1 {
550	pinctrl-names = "default";
551	pinctrl-0 = <&main_i2c1_pins_default>;
552	clock-frequency = <400000>;
553
554	exp4: gpio@20 {
555		compatible = "ti,tca6408";
556		reg = <0x20>;
557		gpio-controller;
558		#gpio-cells = <2>;
559		pinctrl-names = "default";
560		pinctrl-0 = <&main_i2c1_exp4_pins_default>;
561		interrupt-parent = <&main_gpio1>;
562		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
563		interrupt-controller;
564		#interrupt-cells = <2>;
565	};
566};
567
568&k3_clks {
569	/* Confiure AUDIO_EXT_REFCLK2 pin as output */
570	pinctrl-names = "default";
571	pinctrl-0 = <&audi_ext_refclk2_pins_default>;
572};
573
574&main_i2c3 {
575	pinctrl-names = "default";
576	pinctrl-0 = <&main_i2c3_pins_default>;
577	clock-frequency = <400000>;
578
579	exp3: gpio@20 {
580		compatible = "ti,tca6408";
581		reg = <0x20>;
582		gpio-controller;
583		#gpio-cells = <2>;
584	};
585
586	pcm3168a_1: audio-codec@44 {
587		compatible = "ti,pcm3168a";
588		reg = <0x44>;
589
590		#sound-dai-cells = <1>;
591
592		reset-gpios = <&exp3 0 GPIO_ACTIVE_LOW>;
593
594		/* C_AUDIO_REFCLK2 -> RGMII6_RXC (W26) */
595		clocks = <&k3_clks 157 371>;
596		clock-names = "scki";
597
598		/* HSDIV3_16FFT_MAIN_4_HSDIVOUT2_CLK -> REFCLK2 */
599		assigned-clocks = <&k3_clks 157 371>;
600		assigned-clock-parents = <&k3_clks 157 400>;
601		assigned-clock-rates = <24576000>; /* for 48KHz */
602
603		VDD1-supply = <&vsys_3v3>;
604		VDD2-supply = <&vsys_3v3>;
605		VCCAD1-supply = <&vsys_5v0>;
606		VCCAD2-supply = <&vsys_5v0>;
607		VCCDA1-supply = <&vsys_5v0>;
608		VCCDA2-supply = <&vsys_5v0>;
609	};
610};
611
612&main_i2c6 {
613	pinctrl-names = "default";
614	pinctrl-0 = <&main_i2c6_pins_default>;
615	clock-frequency = <400000>;
616
617	exp5: gpio@20 {
618		compatible = "ti,tca6408";
619		reg = <0x20>;
620		gpio-controller;
621		#gpio-cells = <2>;
622	};
623};
624
625&mcu_cpsw {
626	pinctrl-names = "default";
627	pinctrl-0 = <&mcu_cpsw_pins_default &mcu_mdio_pins_default>;
628};
629
630&davinci_mdio {
631	phy0: ethernet-phy@0 {
632		reg = <0>;
633		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
634		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
635	};
636};
637
638&cpsw_port1 {
639	phy-mode = "rgmii-rxid";
640	phy-handle = <&phy0>;
641};
642
643&dss {
644	/*
645	 * These clock assignments are chosen to enable the following outputs:
646	 *
647	 * VP0 - DisplayPort SST
648	 * VP1 - DPI0
649	 * VP2 - DSI
650	 * VP3 - DPI1
651	 */
652
653	assigned-clocks = <&k3_clks 152 1>,
654			  <&k3_clks 152 4>,
655			  <&k3_clks 152 9>,
656			  <&k3_clks 152 13>;
657	assigned-clock-parents = <&k3_clks 152 2>,	/* PLL16_HSDIV0 */
658				 <&k3_clks 152 6>,	/* PLL19_HSDIV0 */
659				 <&k3_clks 152 11>,	/* PLL18_HSDIV0 */
660				 <&k3_clks 152 18>;	/* PLL23_HSDIV0 */
661};
662
663&mcasp0 {
664	status = "disabled";
665};
666
667&mcasp1 {
668	status = "disabled";
669};
670
671&mcasp2 {
672	status = "disabled";
673};
674
675&mcasp3 {
676	status = "disabled";
677};
678
679&mcasp4 {
680	status = "disabled";
681};
682
683&mcasp5 {
684	status = "disabled";
685};
686
687&mcasp6 {
688	status = "disabled";
689};
690
691&mcasp7 {
692	status = "disabled";
693};
694
695&mcasp8 {
696	status = "disabled";
697};
698
699&mcasp9 {
700	status = "disabled";
701};
702
703&mcasp10 {
704	#sound-dai-cells = <0>;
705
706	pinctrl-names = "default";
707	pinctrl-0 = <&mcasp10_pins_default>;
708
709	op-mode = <0>;          /* MCASP_IIS_MODE */
710	tdm-slots = <2>;
711	auxclk-fs-ratio = <256>;
712
713	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
714		1 1 1 1
715		2 2 2 0
716	>;
717	tx-num-evt = <0>;
718	rx-num-evt = <0>;
719};
720
721&mcasp11 {
722	status = "disabled";
723};
724
725&cmn_refclk1 {
726	clock-frequency = <100000000>;
727};
728
729&wiz0_pll1_refclk {
730	assigned-clocks = <&wiz0_pll1_refclk>;
731	assigned-clock-parents = <&cmn_refclk1>;
732};
733
734&wiz0_refclk_dig {
735	assigned-clocks = <&wiz0_refclk_dig>;
736	assigned-clock-parents = <&cmn_refclk1>;
737};
738
739&wiz1_pll1_refclk {
740	assigned-clocks = <&wiz1_pll1_refclk>;
741	assigned-clock-parents = <&cmn_refclk1>;
742};
743
744&wiz1_refclk_dig {
745	assigned-clocks = <&wiz1_refclk_dig>;
746	assigned-clock-parents = <&cmn_refclk1>;
747};
748
749&wiz2_pll1_refclk {
750	assigned-clocks = <&wiz2_pll1_refclk>;
751	assigned-clock-parents = <&cmn_refclk1>;
752};
753
754&wiz2_refclk_dig {
755	assigned-clocks = <&wiz2_refclk_dig>;
756	assigned-clock-parents = <&cmn_refclk1>;
757};
758
759&serdes0 {
760	assigned-clocks = <&serdes0 CDNS_SIERRA_PLL_CMNLC>;
761	assigned-clock-parents = <&wiz0_pll1_refclk>;
762
763	serdes0_pcie_link: phy@0 {
764		reg = <0>;
765		cdns,num-lanes = <1>;
766		#phy-cells = <0>;
767		cdns,phy-type = <PHY_TYPE_PCIE>;
768		resets = <&serdes_wiz0 1>;
769	};
770};
771
772&serdes1 {
773	assigned-clocks = <&serdes1 CDNS_SIERRA_PLL_CMNLC>;
774	assigned-clock-parents = <&wiz1_pll1_refclk>;
775
776	serdes1_pcie_link: phy@0 {
777		reg = <0>;
778		cdns,num-lanes = <2>;
779		#phy-cells = <0>;
780		cdns,phy-type = <PHY_TYPE_PCIE>;
781		resets = <&serdes_wiz1 1>, <&serdes_wiz1 2>;
782	};
783};
784
785&serdes2 {
786	assigned-clocks = <&serdes2 CDNS_SIERRA_PLL_CMNLC>;
787	assigned-clock-parents = <&wiz2_pll1_refclk>;
788
789	serdes2_pcie_link: phy@0 {
790		reg = <0>;
791		cdns,num-lanes = <2>;
792		#phy-cells = <0>;
793		cdns,phy-type = <PHY_TYPE_PCIE>;
794		resets = <&serdes_wiz2 1>, <&serdes_wiz2 2>;
795	};
796};
797
798&pcie0_rc {
799	reset-gpios = <&exp1 6 GPIO_ACTIVE_HIGH>;
800	phys = <&serdes0_pcie_link>;
801	phy-names = "pcie-phy";
802	num-lanes = <1>;
803};
804
805&pcie1_rc {
806	reset-gpios = <&exp1 2 GPIO_ACTIVE_HIGH>;
807	phys = <&serdes1_pcie_link>;
808	phy-names = "pcie-phy";
809	num-lanes = <2>;
810};
811
812&pcie2_rc {
813	reset-gpios = <&exp2 20 GPIO_ACTIVE_HIGH>;
814	phys = <&serdes2_pcie_link>;
815	phy-names = "pcie-phy";
816	num-lanes = <2>;
817};
818
819&pcie0_ep {
820	phys = <&serdes0_pcie_link>;
821	phy-names = "pcie-phy";
822	num-lanes = <1>;
823	status = "disabled";
824};
825
826&pcie1_ep {
827	phys = <&serdes1_pcie_link>;
828	phy-names = "pcie-phy";
829	num-lanes = <2>;
830	status = "disabled";
831};
832
833&pcie2_ep {
834	phys = <&serdes2_pcie_link>;
835	phy-names = "pcie-phy";
836	num-lanes = <2>;
837	status = "disabled";
838};
839
840&pcie3_rc {
841	status = "disabled";
842};
843
844&pcie3_ep {
845	status = "disabled";
846};
847
848&dss {
849	status = "disabled";
850};
851
852&icssg0_mdio {
853	status = "disabled";
854};
855
856&icssg1_mdio {
857	status = "disabled";
858};
859
860&mcu_mcan0 {
861	pinctrl-names = "default";
862	pinctrl-0 = <&mcu_mcan0_pins_default>;
863	phys = <&transceiver1>;
864};
865
866&mcu_mcan1 {
867	pinctrl-names = "default";
868	pinctrl-0 = <&mcu_mcan1_pins_default>;
869	phys = <&transceiver2>;
870};
871
872&main_mcan0 {
873	pinctrl-names = "default";
874	pinctrl-0 = <&main_mcan0_pins_default>;
875	phys = <&transceiver3>;
876};
877
878&main_mcan1 {
879	status = "disabled";
880};
881
882&main_mcan2 {
883	pinctrl-names = "default";
884	pinctrl-0 = <&main_mcan2_pins_default>;
885	phys = <&transceiver4>;
886};
887
888&main_mcan3 {
889	status = "disabled";
890};
891
892&main_mcan4 {
893	status = "disabled";
894};
895
896&main_mcan5 {
897	status = "disabled";
898};
899
900&main_mcan6 {
901	status = "disabled";
902};
903
904&main_mcan7 {
905	status = "disabled";
906};
907
908&main_mcan8 {
909	status = "disabled";
910};
911
912&main_mcan9 {
913	status = "disabled";
914};
915
916&main_mcan10 {
917	status = "disabled";
918};
919
920&main_mcan11 {
921	status = "disabled";
922};
923
924&main_mcan12 {
925	status = "disabled";
926};
927
928&main_mcan13 {
929	status = "disabled";
930};
931