]> git.ipfire.org Git - thirdparty/u-boot.git/blob - src/arm64/freescale/imx8mp-verdin-dev.dtsi
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / src / arm64 / freescale / imx8mp-verdin-dev.dtsi
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 /*
3 * Copyright 2022 Toradex
4 */
5
6 / {
7 reg_eth2phy: regulator-eth2phy {
8 compatible = "regulator-fixed";
9 enable-active-high;
10 gpio = <&gpio_expander_21 4 GPIO_ACTIVE_HIGH>; /* ETH_PWR_EN */
11 off-on-delay-us = <500000>;
12 regulator-max-microvolt = <3300000>;
13 regulator-min-microvolt = <3300000>;
14 regulator-name = "+V3.3_ETH";
15 startup-delay-us = <200000>;
16 vin-supply = <&reg_3p3v>;
17 };
18
19 sound {
20 compatible = "simple-audio-card";
21 simple-audio-card,bitclock-master = <&codec_dai>;
22 simple-audio-card,format = "i2s";
23 simple-audio-card,frame-master = <&codec_dai>;
24 simple-audio-card,mclk-fs = <256>;
25 simple-audio-card,name = "imx8mp-nau8822";
26 simple-audio-card,routing =
27 "Headphones", "LHP",
28 "Headphones", "RHP",
29 "Speaker", "LSPK",
30 "Speaker", "RSPK",
31 "Line Out", "AUXOUT1",
32 "Line Out", "AUXOUT2",
33 "LAUX", "Line In",
34 "RAUX", "Line In",
35 "LMICP", "Mic In",
36 "RMICP", "Mic In";
37 simple-audio-card,widgets =
38 "Headphones", "Headphones",
39 "Line Out", "Line Out",
40 "Speaker", "Speaker",
41 "Microphone", "Mic In",
42 "Line", "Line In";
43
44 codec_dai: simple-audio-card,codec {
45 clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>;
46 sound-dai = <&nau8822_1a>;
47 };
48
49 simple-audio-card,cpu {
50 sound-dai = <&sai1>;
51 };
52 };
53 };
54
55 &backlight {
56 power-supply = <&reg_3p3v>;
57 };
58
59 /* Verdin SPI_1 */
60 &ecspi1 {
61 status = "okay";
62 };
63
64 /* EEPROM on display adapter boards */
65 &eeprom_display_adapter {
66 status = "okay";
67 };
68
69 /* EEPROM on Verdin Development board */
70 &eeprom_carrier_board {
71 status = "okay";
72 };
73
74 &eqos {
75 status = "okay";
76 };
77
78 &fec {
79 phy-supply = <&reg_eth2phy>;
80 status = "okay";
81 };
82
83 &flexcan1 {
84 status = "okay";
85 };
86
87 &flexcan2 {
88 status = "okay";
89 };
90
91 /* Verdin QSPI_1 */
92 &flexspi {
93 status = "okay";
94 };
95
96 &gpio_expander_21 {
97 status = "okay";
98 vcc-supply = <&reg_1p8v>;
99 };
100
101 /* Current measurement into module VCC */
102 &hwmon {
103 status = "okay";
104 };
105
106 &hwmon_temp {
107 vs-supply = <&reg_1p8v>;
108 status = "okay";
109 };
110
111 /* Verdin I2C_2_DSI */
112 &i2c2 {
113 status = "okay";
114 };
115
116 &i2c3 {
117 status = "okay";
118 };
119
120 /* Verdin I2C_1 */
121 &i2c4 {
122 status = "okay";
123
124 /* Audio Codec */
125 nau8822_1a: audio-codec@1a {
126 compatible = "nuvoton,nau8822";
127 reg = <0x1a>;
128 pinctrl-names = "default";
129 pinctrl-0 = <&pinctrl_sai1>;
130 #sound-dai-cells = <0>;
131 };
132 };
133
134 /* Verdin PCIE_1 */
135 &pcie {
136 status = "okay";
137 };
138
139 &pcie_phy {
140 status = "okay";
141 };
142
143 /* Verdin PWM_1 */
144 &pwm1 {
145 status = "okay";
146 };
147
148 /* Verdin PWM_2 */
149 &pwm2 {
150 status = "okay";
151 };
152
153 /* Verdin PWM_3_DSI */
154 &pwm3 {
155 status = "okay";
156 };
157
158 &reg_usdhc2_vmmc {
159 vin-supply = <&reg_3p3v>;
160 };
161
162 /* Verdin I2S_1 */
163 &sai1 {
164 assigned-clocks = <&clk IMX8MP_CLK_SAI1>;
165 assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
166 assigned-clock-rates = <24576000>;
167 fsl,sai-mclk-direction-output;
168 status = "okay";
169 };
170
171 /* Verdin UART_1, connector X50 through RS485 transceiver */
172 &uart1 {
173 linux,rs485-enabled-at-boot-time;
174 rs485-rts-active-low;
175 rs485-rx-during-tx;
176 status = "okay";
177 };
178
179 /* Verdin UART_2 */
180 &uart2 {
181 status = "okay";
182 };
183
184 /* Verdin UART_3, used as the Linux Console */
185 &uart3 {
186 status = "okay";
187 };
188
189 /* Verdin USB_1 */
190 &usb3_0 {
191 status = "okay";
192 };
193
194 &usb3_phy0 {
195 status = "okay";
196 };
197
198 /* Verdin USB_2 */
199 &usb3_1 {
200 fsl,permanently-attached;
201 status = "okay";
202 };
203
204 &usb3_phy1 {
205 status = "okay";
206 };
207
208 /* Limit frequency on dev board due to long traces and bad signal integrity */
209 &usdhc2 {
210 max-frequency = <100000000>;
211 status = "okay";
212 };