arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / arch / arm64 / boot / dts / ti / k3-am62-verdin-dev.dtsi
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 / {
12         sound {
13                 compatible = "simple-audio-card";
14                 simple-audio-card,bitclock-master = <&codec_dai>;
15                 simple-audio-card,format = "i2s";
16                 simple-audio-card,frame-master = <&codec_dai>;
17                 simple-audio-card,name = "verdin-nau8822";
18                 simple-audio-card,routing =
19                         "Headphones", "LHP",
20                         "Headphones", "RHP",
21                         "Speaker", "LSPK",
22                         "Speaker", "RSPK",
23                         "Line Out", "AUXOUT1",
24                         "Line Out", "AUXOUT2",
25                         "LAUX", "Line In",
26                         "RAUX", "Line In",
27                         "LMICP", "Mic In",
28                         "RMICP", "Mic In";
29                 simple-audio-card,widgets =
30                         "Headphones", "Headphones",
31                         "Line Out", "Line Out",
32                         "Speaker", "Speaker",
33                         "Microphone", "Mic In",
34                         "Line", "Line In";
35
36                 codec_dai: simple-audio-card,codec {
37                         clocks = <&audio_refclk1>;
38                         sound-dai = <&nau8822_1a>;
39                 };
40
41                 simple-audio-card,cpu {
42                         sound-dai = <&mcasp0>;
43                 };
44         };
45 };
46
47 /* Verdin ETHs */
48 &cpsw3g {
49         pinctrl-names = "default";
50         pinctrl-0 = <&pinctrl_rgmii1>, <&pinctrl_rgmii2>;
51         status = "okay";
52 };
53
54 /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */
55 &cpsw3g_mdio {
56         status = "okay";
57
58         cpsw3g_phy1: ethernet-phy@7 {
59                 compatible = "ethernet-phy-ieee802.3-c22";
60                 reg = <7>;
61                 interrupt-parent = <&main_gpio0>;
62                 interrupts = <38 IRQ_TYPE_EDGE_FALLING>;
63                 pinctrl-names = "default";
64                 pinctrl-0 = <&pinctrl_eth2_rgmii_int>;
65                 micrel,led-mode = <0>;
66         };
67 };
68
69 /* Verdin ETH_1 (On-module PHY) */
70 &cpsw_port1 {
71         status = "okay";
72 };
73
74 /* Verdin ETH_2_RGMII */
75 &cpsw_port2 {
76         phy-handle = <&cpsw3g_phy1>;
77         phy-mode = "rgmii-rxid";
78         status = "okay";
79 };
80
81 /* Verdin PWM_1, PWM_2 */
82 &epwm0 {
83         status = "okay";
84 };
85
86 /* Verdin PWM_3_DSI */
87 &epwm1 {
88         status = "okay";
89 };
90
91 &main_gpio0 {
92         pinctrl-names = "default";
93         pinctrl-0 = <&pinctrl_ctrl_sleep_moci>,
94                     <&pinctrl_gpio_5>,
95                     <&pinctrl_gpio_6>,
96                     <&pinctrl_gpio_7>,
97                     <&pinctrl_gpio_8>;
98 };
99
100 /* Verdin I2C_1 */
101 &main_i2c1 {
102         status = "okay";
103
104         /* Audio Codec */
105         nau8822_1a: audio-codec@1a {
106                 compatible = "nuvoton,nau8822";
107                 reg = <0x1a>;
108                 pinctrl-names = "default";
109                 pinctrl-0 = <&pinctrl_i2s1_mclk>;
110                 #sound-dai-cells = <0>;
111         };
112
113         /* IO Expander */
114         gpio_expander_21: gpio@21 {
115                 compatible = "nxp,pcal6416";
116                 reg = <0x21>;
117                 #gpio-cells = <2>;
118                 gpio-controller;
119         };
120
121         /* Current measurement into module VCC */
122         hwmon@40 {
123                 compatible = "ti,ina219";
124                 reg = <0x40>;
125                 shunt-resistor = <10000>;
126         };
127
128         /* Temperature sensor */
129         sensor@4f {
130                 compatible = "ti,tmp75c";
131                 reg = <0x4f>;
132         };
133
134         /* EEPROM */
135         eeprom@57 {
136                 compatible = "st,24c02", "atmel,24c02";
137                 reg = <0x57>;
138                 pagesize = <16>;
139         };
140 };
141
142 /* Verdin I2C_2_DSI */
143 &main_i2c2 {
144         status = "okay";
145 };
146
147 /* Verdin I2C_4_CSI */
148 &main_i2c3 {
149         status = "okay";
150 };
151
152 /* Verdin CAN_1 */
153 &main_mcan0 {
154         status = "okay";
155 };
156
157 /* Verdin SPI_1 */
158 &main_spi1 {
159         status = "okay";
160 };
161
162 /* Verdin UART_3 */
163 &main_uart0 {
164         status = "okay";
165 };
166
167 /* Verdin UART_1, connector X50 through RS485 transceiver. */
168 &main_uart1 {
169         linux,rs485-enabled-at-boot-time;
170         rs485-rx-during-tx;
171         status = "okay";
172 };
173
174 /* Verdin I2S_1 */
175 &mcasp0 {
176         status = "okay";
177 };
178
179 &mcu_gpio0 {
180         pinctrl-names = "default";
181         pinctrl-0 = <&pinctrl_gpio_1>,
182                     <&pinctrl_gpio_2>,
183                     <&pinctrl_gpio_3>,
184                     <&pinctrl_gpio_4>;
185 };
186
187 /* Verdin I2C_3_HDMI */
188 &mcu_i2c0 {
189         status = "okay";
190 };
191
192 /* Verdin CAN_2 */
193 &mcu_mcan0 {
194         status = "okay";
195 };
196
197 /* Verdin UART_4 */
198 &mcu_uart0 {
199         status = "okay";
200 };
201
202 /* Verdin QSPI_1 */
203 &ospi0 {
204         status = "okay";
205 };
206
207 /* Verdin SD_1 */
208 &sdhci1 {
209         ti,driver-strength-ohm = <33>;
210         status = "okay";
211 };
212
213 /* Verdin USB_1 */
214 &usbss0 {
215         status = "okay";
216 };
217
218 &usb0 {
219         status = "okay";
220 };
221
222 /* Verdin USB_2 */
223 &usbss1 {
224         status = "okay";
225 };
226
227 &usb1 {
228         status = "okay";
229 };
230
231 /* Verdin CTRL_WAKE1_MICO# */
232 &verdin_gpio_keys {
233         status = "okay";
234 };
235
236 /* Verdin UART_2 */
237 &wkup_uart0 {
238         /* FIXME: WKUP UART0 is used by DM firmware */
239         status = "reserved";
240 };