Skip to content

Commit 316b802

Browse files
dolcinir-vignesh
authored andcommitted
arm64: dts: ti: add verdin am62
This patch adds the device tree to support Toradex Verdin AM62 a computer on module which can be used on different carrier boards and the Toradex Verdin Development Board carrier board. The module consists of an TI AM62 family SoC (either AM623 or AM625), a TPS65219 PMIC, a Gigabit Ethernet PHY, 512MB to 2GB of LPDDR4 RAM, an eMMC, a TLA2024 ADC, an I2C EEPROM, an RX8130 RTC, and optional Parallel RGB to MIPI DSI bridge plus an optional Bluetooth/Wi-Fi module. Anything that is not self-contained on the module is disabled by default. So far there is no display nor USB role switch supported, apart of that all the other functionalities are fine. Link: https://developer.toradex.com/hardware/verdin-som-family/modules/verdin-am62/ Link: https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62 Link: https://www.toradex.com/products/carrier-board/verdin-development-board-kit Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Link: https://lore.kernel.org/r/20230615095058.33890-4-francesco@dolcini.it Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
1 parent cf04083 commit 316b802

7 files changed

Lines changed: 1696 additions & 0 deletions

arch/arm64/boot/dts/ti/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
dtb-$(CONFIG_ARCH_K3) += k3-am625-beagleplay.dtb
1313
dtb-$(CONFIG_ARCH_K3) += k3-am625-phyboard-lyra-rdk.dtb
1414
dtb-$(CONFIG_ARCH_K3) += k3-am625-sk.dtb
15+
dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-dev.dtb
16+
dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb
1517
dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb
1618

1719
# Boards with AM62Ax SoC
Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2+
/*
3+
* Copyright 2023 Toradex
4+
*
5+
* Common dtsi for Verdin AM62 SoM on Development carrier board
6+
*
7+
* https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
8+
* https://www.toradex.com/products/carrier-board/verdin-development-board-kit
9+
*/
10+
11+
/* Verdin ETHs */
12+
&cpsw3g {
13+
pinctrl-names = "default";
14+
pinctrl-0 = <&pinctrl_rgmii1>, <&pinctrl_rgmii2>;
15+
status = "okay";
16+
};
17+
18+
/* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */
19+
&cpsw3g_mdio {
20+
status = "okay";
21+
22+
cpsw3g_phy1: ethernet-phy@7 {
23+
compatible = "ethernet-phy-ieee802.3-c22";
24+
reg = <7>;
25+
interrupt-parent = <&main_gpio0>;
26+
interrupts = <38 IRQ_TYPE_EDGE_FALLING>;
27+
pinctrl-names = "default";
28+
pinctrl-0 = <&pinctrl_eth2_rgmii_int>;
29+
micrel,led-mode = <0>;
30+
};
31+
};
32+
33+
/* Verdin ETH_1 (On-module PHY) */
34+
&cpsw_port1 {
35+
status = "okay";
36+
};
37+
38+
/* Verdin ETH_2_RGMII */
39+
&cpsw_port2 {
40+
phy-handle = <&cpsw3g_phy1>;
41+
phy-mode = "rgmii-rxid";
42+
status = "okay";
43+
};
44+
45+
/* Verdin PWM_1, PWM_2 */
46+
&epwm0 {
47+
status = "okay";
48+
};
49+
50+
/* Verdin PWM_3_DSI */
51+
&epwm1 {
52+
status = "okay";
53+
};
54+
55+
&main_gpio0 {
56+
pinctrl-names = "default";
57+
pinctrl-0 = <&pinctrl_ctrl_sleep_moci>,
58+
<&pinctrl_gpio_5>,
59+
<&pinctrl_gpio_6>,
60+
<&pinctrl_gpio_7>,
61+
<&pinctrl_gpio_8>;
62+
};
63+
64+
/* Verdin I2C_1 */
65+
&main_i2c1 {
66+
status = "okay";
67+
68+
/* IO Expander */
69+
gpio_expander_21: gpio@21 {
70+
compatible = "nxp,pcal6416";
71+
reg = <0x21>;
72+
#gpio-cells = <2>;
73+
gpio-controller;
74+
};
75+
76+
/* Current measurement into module VCC */
77+
hwmon@40 {
78+
compatible = "ti,ina219";
79+
reg = <0x40>;
80+
shunt-resistor = <10000>;
81+
};
82+
83+
/* Temperature sensor */
84+
sensor@4f {
85+
compatible = "ti,tmp75c";
86+
reg = <0x4f>;
87+
};
88+
89+
/* EEPROM */
90+
eeprom@57 {
91+
compatible = "st,24c02", "atmel,24c02";
92+
reg = <0x57>;
93+
pagesize = <16>;
94+
};
95+
};
96+
97+
/* Verdin I2C_2_DSI */
98+
&main_i2c2 {
99+
status = "okay";
100+
};
101+
102+
/* Verdin I2C_4_CSI */
103+
&main_i2c3 {
104+
status = "okay";
105+
};
106+
107+
/* Verdin CAN_1 */
108+
&main_mcan0 {
109+
status = "okay";
110+
};
111+
112+
/* Verdin SPI_1 */
113+
&main_spi1 {
114+
status = "okay";
115+
};
116+
117+
/* Verdin UART_3 */
118+
&main_uart0 {
119+
status = "okay";
120+
};
121+
122+
/* Verdin UART_1, connector X50 through RS485 transceiver. */
123+
&main_uart1 {
124+
linux,rs485-enabled-at-boot-time;
125+
rs485-rx-during-tx;
126+
status = "okay";
127+
};
128+
129+
/* Verdin I2S_1 */
130+
&mcasp0 {
131+
status = "okay";
132+
};
133+
134+
&mcu_gpio0 {
135+
pinctrl-names = "default";
136+
pinctrl-0 = <&pinctrl_gpio_1>,
137+
<&pinctrl_gpio_2>,
138+
<&pinctrl_gpio_3>,
139+
<&pinctrl_gpio_4>;
140+
};
141+
142+
/* Verdin I2C_3_HDMI */
143+
&mcu_i2c0 {
144+
status = "okay";
145+
};
146+
147+
/* Verdin UART_4 */
148+
&mcu_uart0 {
149+
status = "okay";
150+
};
151+
152+
/* Verdin QSPI_1 */
153+
&ospi0 {
154+
status = "okay";
155+
};
156+
157+
/* Verdin SD_1 */
158+
&sdhci1 {
159+
ti,driver-strength-ohm = <33>;
160+
status = "okay";
161+
};
162+
163+
/* Verdin USB_1 */
164+
&usbss0 {
165+
status = "okay";
166+
};
167+
168+
&usb0 {
169+
status = "okay";
170+
};
171+
172+
/* Verdin USB_2 */
173+
&usbss1 {
174+
status = "okay";
175+
};
176+
177+
&usb1 {
178+
status = "okay";
179+
};
180+
181+
/* Verdin CTRL_WAKE1_MICO# */
182+
&verdin_gpio_keys {
183+
status = "okay";
184+
};
185+
186+
/* Verdin UART_2 */
187+
&wkup_uart0 {
188+
/* FIXME: WKUP UART0 is used by DM firmware */
189+
status = "reserved";
190+
};
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2+
/*
3+
* Copyright 2023 Toradex
4+
*
5+
* Common dtsi for Verdin AM62 SoM non-WB variant
6+
*
7+
* https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
8+
*/
9+
10+
&sdhci2 {
11+
pinctrl-0 = <&pinctrl_sdhci2>;
12+
bus-width = <4>;
13+
status = "disabled";
14+
};
15+
16+
&main_uart5 {
17+
pinctrl-names = "default";
18+
pinctrl-0 = <&pinctrl_uart5>;
19+
status = "disabled";
20+
};
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2+
/*
3+
* Copyright 2023 Toradex
4+
*
5+
* Common dtsi for Verdin AM62 SoM WB variant
6+
*
7+
* https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
8+
*/
9+
10+
/ {
11+
wifi_pwrseq: wifi-pwrseq {
12+
compatible = "mmc-pwrseq-simple";
13+
pinctrl-names = "default";
14+
pinctrl-0 = <&pinctrl_wifi_en>;
15+
reset-gpios = <&main_gpio0 22 GPIO_ACTIVE_LOW>;
16+
};
17+
};
18+
19+
/* On-module Wi-Fi */
20+
&sdhci2 {
21+
pinctrl-names = "default";
22+
pinctrl-0 = <&pinctrl_sdhci2>;
23+
bus-width = <4>;
24+
cap-power-off-card;
25+
keep-power-in-suspend;
26+
mmc-pwrseq = <&wifi_pwrseq>;
27+
non-removable;
28+
ti,fails-without-test-cd;
29+
ti,driver-strength-ohm = <50>;
30+
vmmc-supply = <&reg_3v3>;
31+
status = "okay";
32+
};
33+
34+
/* On-module Bluetooth */
35+
&main_uart5 {
36+
pinctrl-names = "default";
37+
pinctrl-0 = <&pinctrl_uart5>;
38+
status = "okay";
39+
};

0 commit comments

Comments
 (0)