xref: /linux/arch/arm64/boot/dts/ti/k3-am62-verdin-dev.dtsi (revision 7480cea33b4c36aeffe592eb6f151bc9974fee70)
1316b8024SFrancesco Dolcini// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2316b8024SFrancesco Dolcini/*
3316b8024SFrancesco Dolcini * Copyright 2023 Toradex
4316b8024SFrancesco Dolcini *
5316b8024SFrancesco Dolcini * Common dtsi for Verdin AM62 SoM on Development carrier board
6316b8024SFrancesco Dolcini *
7316b8024SFrancesco Dolcini * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
8316b8024SFrancesco Dolcini * https://www.toradex.com/products/carrier-board/verdin-development-board-kit
9316b8024SFrancesco Dolcini */
10316b8024SFrancesco Dolcini
11316b8024SFrancesco Dolcini/* Verdin ETHs */
12316b8024SFrancesco Dolcini&cpsw3g {
13316b8024SFrancesco Dolcini	pinctrl-names = "default";
14316b8024SFrancesco Dolcini	pinctrl-0 = <&pinctrl_rgmii1>, <&pinctrl_rgmii2>;
15316b8024SFrancesco Dolcini	status = "okay";
16316b8024SFrancesco Dolcini};
17316b8024SFrancesco Dolcini
18316b8024SFrancesco Dolcini/* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */
19316b8024SFrancesco Dolcini&cpsw3g_mdio {
20316b8024SFrancesco Dolcini	status = "okay";
21316b8024SFrancesco Dolcini
22316b8024SFrancesco Dolcini	cpsw3g_phy1: ethernet-phy@7 {
23316b8024SFrancesco Dolcini		compatible = "ethernet-phy-ieee802.3-c22";
24316b8024SFrancesco Dolcini		reg = <7>;
25316b8024SFrancesco Dolcini		interrupt-parent = <&main_gpio0>;
26316b8024SFrancesco Dolcini		interrupts = <38 IRQ_TYPE_EDGE_FALLING>;
27316b8024SFrancesco Dolcini		pinctrl-names = "default";
28316b8024SFrancesco Dolcini		pinctrl-0 = <&pinctrl_eth2_rgmii_int>;
29316b8024SFrancesco Dolcini		micrel,led-mode = <0>;
30316b8024SFrancesco Dolcini	};
31316b8024SFrancesco Dolcini};
32316b8024SFrancesco Dolcini
33316b8024SFrancesco Dolcini/* Verdin ETH_1 (On-module PHY) */
34316b8024SFrancesco Dolcini&cpsw_port1 {
35316b8024SFrancesco Dolcini	status = "okay";
36316b8024SFrancesco Dolcini};
37316b8024SFrancesco Dolcini
38316b8024SFrancesco Dolcini/* Verdin ETH_2_RGMII */
39316b8024SFrancesco Dolcini&cpsw_port2 {
40316b8024SFrancesco Dolcini	phy-handle = <&cpsw3g_phy1>;
41316b8024SFrancesco Dolcini	phy-mode = "rgmii-rxid";
42316b8024SFrancesco Dolcini	status = "okay";
43316b8024SFrancesco Dolcini};
44316b8024SFrancesco Dolcini
45316b8024SFrancesco Dolcini/* Verdin PWM_1, PWM_2 */
46316b8024SFrancesco Dolcini&epwm0 {
47316b8024SFrancesco Dolcini	status = "okay";
48316b8024SFrancesco Dolcini};
49316b8024SFrancesco Dolcini
50316b8024SFrancesco Dolcini/* Verdin PWM_3_DSI */
51316b8024SFrancesco Dolcini&epwm1 {
52316b8024SFrancesco Dolcini	status = "okay";
53316b8024SFrancesco Dolcini};
54316b8024SFrancesco Dolcini
55316b8024SFrancesco Dolcini&main_gpio0 {
56316b8024SFrancesco Dolcini	pinctrl-names = "default";
57316b8024SFrancesco Dolcini	pinctrl-0 = <&pinctrl_ctrl_sleep_moci>,
58316b8024SFrancesco Dolcini		    <&pinctrl_gpio_5>,
59316b8024SFrancesco Dolcini		    <&pinctrl_gpio_6>,
60316b8024SFrancesco Dolcini		    <&pinctrl_gpio_7>,
61316b8024SFrancesco Dolcini		    <&pinctrl_gpio_8>;
62316b8024SFrancesco Dolcini};
63316b8024SFrancesco Dolcini
64316b8024SFrancesco Dolcini/* Verdin I2C_1 */
65316b8024SFrancesco Dolcini&main_i2c1 {
66316b8024SFrancesco Dolcini	status = "okay";
67316b8024SFrancesco Dolcini
68316b8024SFrancesco Dolcini	/* IO Expander */
69316b8024SFrancesco Dolcini	gpio_expander_21: gpio@21 {
70316b8024SFrancesco Dolcini		compatible = "nxp,pcal6416";
71316b8024SFrancesco Dolcini		reg = <0x21>;
72316b8024SFrancesco Dolcini		#gpio-cells = <2>;
73316b8024SFrancesco Dolcini		gpio-controller;
74316b8024SFrancesco Dolcini	};
75316b8024SFrancesco Dolcini
76316b8024SFrancesco Dolcini	/* Current measurement into module VCC */
77316b8024SFrancesco Dolcini	hwmon@40 {
78316b8024SFrancesco Dolcini		compatible = "ti,ina219";
79316b8024SFrancesco Dolcini		reg = <0x40>;
80316b8024SFrancesco Dolcini		shunt-resistor = <10000>;
81316b8024SFrancesco Dolcini	};
82316b8024SFrancesco Dolcini
83316b8024SFrancesco Dolcini	/* Temperature sensor */
84316b8024SFrancesco Dolcini	sensor@4f {
85316b8024SFrancesco Dolcini		compatible = "ti,tmp75c";
86316b8024SFrancesco Dolcini		reg = <0x4f>;
87316b8024SFrancesco Dolcini	};
88316b8024SFrancesco Dolcini
89316b8024SFrancesco Dolcini	/* EEPROM */
90316b8024SFrancesco Dolcini	eeprom@57 {
91316b8024SFrancesco Dolcini		compatible = "st,24c02", "atmel,24c02";
92316b8024SFrancesco Dolcini		reg = <0x57>;
93316b8024SFrancesco Dolcini		pagesize = <16>;
94316b8024SFrancesco Dolcini	};
95316b8024SFrancesco Dolcini};
96316b8024SFrancesco Dolcini
97316b8024SFrancesco Dolcini/* Verdin I2C_2_DSI */
98316b8024SFrancesco Dolcini&main_i2c2 {
99316b8024SFrancesco Dolcini	status = "okay";
100316b8024SFrancesco Dolcini};
101316b8024SFrancesco Dolcini
102316b8024SFrancesco Dolcini/* Verdin I2C_4_CSI */
103316b8024SFrancesco Dolcini&main_i2c3 {
104316b8024SFrancesco Dolcini	status = "okay";
105316b8024SFrancesco Dolcini};
106316b8024SFrancesco Dolcini
107316b8024SFrancesco Dolcini/* Verdin CAN_1 */
108316b8024SFrancesco Dolcini&main_mcan0 {
109316b8024SFrancesco Dolcini	status = "okay";
110316b8024SFrancesco Dolcini};
111316b8024SFrancesco Dolcini
112316b8024SFrancesco Dolcini/* Verdin SPI_1 */
113316b8024SFrancesco Dolcini&main_spi1 {
114316b8024SFrancesco Dolcini	status = "okay";
115316b8024SFrancesco Dolcini};
116316b8024SFrancesco Dolcini
117316b8024SFrancesco Dolcini/* Verdin UART_3 */
118316b8024SFrancesco Dolcini&main_uart0 {
119316b8024SFrancesco Dolcini	status = "okay";
120316b8024SFrancesco Dolcini};
121316b8024SFrancesco Dolcini
122316b8024SFrancesco Dolcini/* Verdin UART_1, connector X50 through RS485 transceiver. */
123316b8024SFrancesco Dolcini&main_uart1 {
124316b8024SFrancesco Dolcini	linux,rs485-enabled-at-boot-time;
125316b8024SFrancesco Dolcini	rs485-rx-during-tx;
126316b8024SFrancesco Dolcini	status = "okay";
127316b8024SFrancesco Dolcini};
128316b8024SFrancesco Dolcini
129316b8024SFrancesco Dolcini/* Verdin I2S_1 */
130316b8024SFrancesco Dolcini&mcasp0 {
131316b8024SFrancesco Dolcini	status = "okay";
132316b8024SFrancesco Dolcini};
133316b8024SFrancesco Dolcini
134316b8024SFrancesco Dolcini&mcu_gpio0 {
135316b8024SFrancesco Dolcini	pinctrl-names = "default";
136316b8024SFrancesco Dolcini	pinctrl-0 = <&pinctrl_gpio_1>,
137316b8024SFrancesco Dolcini		    <&pinctrl_gpio_2>,
138316b8024SFrancesco Dolcini		    <&pinctrl_gpio_3>,
139316b8024SFrancesco Dolcini		    <&pinctrl_gpio_4>;
140316b8024SFrancesco Dolcini};
141316b8024SFrancesco Dolcini
142316b8024SFrancesco Dolcini/* Verdin I2C_3_HDMI */
143316b8024SFrancesco Dolcini&mcu_i2c0 {
144316b8024SFrancesco Dolcini	status = "okay";
145316b8024SFrancesco Dolcini};
146316b8024SFrancesco Dolcini
147*7480cea3SHiago De Franco/* Verdin CAN_2 */
148*7480cea3SHiago De Franco&mcu_mcan0 {
149*7480cea3SHiago De Franco	status = "okay";
150*7480cea3SHiago De Franco};
151*7480cea3SHiago De Franco
152316b8024SFrancesco Dolcini/* Verdin UART_4 */
153316b8024SFrancesco Dolcini&mcu_uart0 {
154316b8024SFrancesco Dolcini	status = "okay";
155316b8024SFrancesco Dolcini};
156316b8024SFrancesco Dolcini
157316b8024SFrancesco Dolcini/* Verdin QSPI_1 */
158316b8024SFrancesco Dolcini&ospi0 {
159316b8024SFrancesco Dolcini	status = "okay";
160316b8024SFrancesco Dolcini};
161316b8024SFrancesco Dolcini
162316b8024SFrancesco Dolcini/* Verdin SD_1 */
163316b8024SFrancesco Dolcini&sdhci1 {
164316b8024SFrancesco Dolcini	ti,driver-strength-ohm = <33>;
165316b8024SFrancesco Dolcini	status = "okay";
166316b8024SFrancesco Dolcini};
167316b8024SFrancesco Dolcini
168316b8024SFrancesco Dolcini/* Verdin USB_1 */
169316b8024SFrancesco Dolcini&usbss0 {
170316b8024SFrancesco Dolcini	status = "okay";
171316b8024SFrancesco Dolcini};
172316b8024SFrancesco Dolcini
173316b8024SFrancesco Dolcini&usb0 {
174316b8024SFrancesco Dolcini	status = "okay";
175316b8024SFrancesco Dolcini};
176316b8024SFrancesco Dolcini
177316b8024SFrancesco Dolcini/* Verdin USB_2 */
178316b8024SFrancesco Dolcini&usbss1 {
179316b8024SFrancesco Dolcini	status = "okay";
180316b8024SFrancesco Dolcini};
181316b8024SFrancesco Dolcini
182316b8024SFrancesco Dolcini&usb1 {
183316b8024SFrancesco Dolcini	status = "okay";
184316b8024SFrancesco Dolcini};
185316b8024SFrancesco Dolcini
186316b8024SFrancesco Dolcini/* Verdin CTRL_WAKE1_MICO# */
187316b8024SFrancesco Dolcini&verdin_gpio_keys {
188316b8024SFrancesco Dolcini	status = "okay";
189316b8024SFrancesco Dolcini};
190316b8024SFrancesco Dolcini
191316b8024SFrancesco Dolcini/* Verdin UART_2 */
192316b8024SFrancesco Dolcini&wkup_uart0 {
193316b8024SFrancesco Dolcini	/* FIXME: WKUP UART0 is used by DM firmware */
194316b8024SFrancesco Dolcini	status = "reserved";
195316b8024SFrancesco Dolcini};
196