arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / arch / arm64 / boot / dts / rockchip / rk3328-a1.dts
1 // SPDX-License-Identifier: (GPL-2.0-only OR MIT)
2 // Copyright (c) 2017-2019 Arm Ltd.
3
4 /dts-v1/;
5 #include "rk3328.dtsi"
6
7 / {
8         model = "Beelink A1";
9         compatible = "azw,beelink-a1", "rockchip,rk3328";
10
11         aliases {
12                 mmc0 = &sdmmc;
13                 mmc1 = &emmc;
14         };
15
16         /*
17          * UART pins, as viewed with bottom of case removed:
18          *
19          *           Front
20          *        /-------
21          *  L    / o <- Gnd
22          *  e   / o <-- Rx
23          *  f  / o <--- Tx
24          *  t / o <---- +3.3v
25          *    |
26          */
27         chosen {
28                 stdout-path = "serial2:1500000n8";
29         };
30
31         gmac_clkin: external-gmac-clock {
32                 compatible = "fixed-clock";
33                 clock-frequency = <125000000>;
34                 clock-output-names = "gmac_clkin";
35                 #clock-cells = <0>;
36         };
37
38         vcc_host_5v: usb3-current-switch {
39                 compatible = "regulator-fixed";
40                 enable-active-high;
41                 gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
42                 pinctrl-names = "default";
43                 pinctrl-0 = <&usb30_host_drv>;
44                 regulator-name = "vcc_host_5v";
45                 vin-supply = <&vcc_sys>;
46         };
47
48         vcc_sys: vcc-sys {
49                 compatible = "regulator-fixed";
50                 regulator-name = "vcc_sys";
51                 regulator-min-microvolt = <5000000>;
52                 regulator-max-microvolt = <5000000>;
53         };
54
55         ir-receiver {
56                 compatible = "gpio-ir-receiver";
57                 gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
58                 linux,rc-map-name = "rc-beelink-gs1";
59         };
60 };
61
62 &analog_sound {
63         simple-audio-card,name = "Analog A/V";
64         status = "okay";
65 };
66
67 &codec {
68         mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
69         status = "okay";
70 };
71
72 &cpu0 {
73         cpu-supply = <&vdd_arm>;
74 };
75
76 &cpu1 {
77         cpu-supply = <&vdd_arm>;
78 };
79
80 &cpu2 {
81         cpu-supply = <&vdd_arm>;
82 };
83
84 &cpu3 {
85         cpu-supply = <&vdd_arm>;
86 };
87
88 &emmc {
89         bus-width = <8>;
90         cap-mmc-highspeed;
91         mmc-ddr-1_8v;
92         mmc-hs200-1_8v;
93         no-sd;
94         no-sdio;
95         non-removable;
96         pinctrl-names = "default";
97         pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
98         vmmc-supply = <&vcc_io>;
99         vqmmc-supply = <&vcc18_emmc>;
100         status = "okay";
101 };
102
103 &gmac2io {
104         assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
105         assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
106         clock_in_out = "input";
107         phy-handle = <&rtl8211f>;
108         phy-mode = "rgmii";
109         phy-supply = <&vcc_io>;
110         pinctrl-names = "default";
111         pinctrl-0 = <&rgmiim1_pins>;
112         snps,aal;
113         snps,pbl = <0x4>;
114         tx_delay = <0x26>;
115         rx_delay = <0x11>;
116         status = "okay";
117
118         mdio {
119                 compatible = "snps,dwmac-mdio";
120                 #address-cells = <1>;
121                 #size-cells = <0>;
122
123                 rtl8211f: ethernet-phy@0 {
124                         reg = <0>;
125                         reset-assert-us = <10000>;
126                         reset-deassert-us = <30000>;
127                         reset-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_LOW>;
128                 };
129         };
130 };
131
132 &gpu {
133         mali-supply = <&vdd_logic>;
134 };
135
136 &hdmi {
137         status = "okay";
138 };
139
140 &hdmiphy {
141         status = "okay";
142 };
143
144 &hdmi_sound {
145         status = "okay";
146 };
147
148 &i2c1 {
149         clock-frequency = <1000000>;
150         i2c-scl-falling-time-ns = <5>;
151         i2c-scl-rising-time-ns = <83>;
152         status = "okay";
153
154         pmic@18 {
155                 compatible = "rockchip,rk805";
156                 reg = <0x18>;
157                 interrupt-parent = <&gpio2>;
158                 interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
159                 pinctrl-names = "default";
160                 pinctrl-0 = <&pmic_int_l>;
161                 rockchip,system-power-controller;
162                 wakeup-source;
163                 #clock-cells = <0>;
164
165                 vcc1-supply = <&vcc_sys>;
166                 vcc2-supply = <&vcc_sys>;
167                 vcc3-supply = <&vcc_sys>;
168                 vcc4-supply = <&vcc_sys>;
169                 vcc5-supply = <&vcc_io>;
170                 vcc6-supply = <&vcc_io>;
171
172                 regulators {
173                         vdd_logic: DCDC_REG1 {
174                                 regulator-name = "vdd_logic";
175                                 regulator-min-microvolt = <700000>;
176                                 regulator-max-microvolt = <1350000>;
177                                 regulator-always-on;
178                                 regulator-boot-on;
179                                 regulator-state-mem {
180                                         regulator-on-in-suspend;
181                                         regulator-suspend-microvolt = <1000000>;
182                                 };
183                         };
184
185                         vdd_arm: DCDC_REG2 {
186                                 regulator-name = "vdd_arm";
187                                 regulator-min-microvolt = <700000>;
188                                 regulator-max-microvolt = <1350000>;
189                                 regulator-always-on;
190                                 regulator-boot-on;
191                                 regulator-state-mem {
192                                         regulator-on-in-suspend;
193                                         regulator-suspend-microvolt = <950000>;
194                                 };
195                         };
196
197                         vcc_ddr: DCDC_REG3 {
198                                 regulator-name = "vcc_ddr";
199                                 regulator-always-on;
200                                 regulator-boot-on;
201                                 regulator-state-mem {
202                                         regulator-on-in-suspend;
203                                 };
204                         };
205
206                         vcc_io: DCDC_REG4 {
207                                 regulator-name = "vcc_io";
208                                 regulator-min-microvolt = <3300000>;
209                                 regulator-max-microvolt = <3300000>;
210                                 regulator-always-on;
211                                 regulator-boot-on;
212                                 regulator-state-mem {
213                                         regulator-on-in-suspend;
214                                         regulator-suspend-microvolt = <3300000>;
215                                 };
216                         };
217
218                         vdd_18: LDO_REG1 {
219                                 regulator-name = "vdd_18";
220                                 regulator-min-microvolt = <1800000>;
221                                 regulator-max-microvolt = <1800000>;
222                                 regulator-always-on;
223                                 regulator-boot-on;
224                                 regulator-state-mem {
225                                         regulator-on-in-suspend;
226                                         regulator-suspend-microvolt = <1800000>;
227                                 };
228                         };
229
230                         vcc18_emmc: LDO_REG2 {
231                                 regulator-name = "vcc_18emmc";
232                                 regulator-min-microvolt = <1800000>;
233                                 regulator-max-microvolt = <1800000>;
234                                 regulator-always-on;
235                                 regulator-boot-on;
236                                 regulator-state-mem {
237                                         regulator-on-in-suspend;
238                                         regulator-suspend-microvolt = <1800000>;
239                                 };
240                         };
241
242                         vdd_11: LDO_REG3 {
243                                 regulator-name = "vdd_11";
244                                 regulator-min-microvolt = <1100000>;
245                                 regulator-max-microvolt = <1100000>;
246                                 regulator-always-on;
247                                 regulator-boot-on;
248                                 regulator-state-mem {
249                                         regulator-on-in-suspend;
250                                         regulator-suspend-microvolt = <1100000>;
251                                 };
252                         };
253                 };
254         };
255 };
256
257 &i2s0 {
258         status = "okay";
259 };
260
261 &i2s1 {
262         status = "okay";
263 };
264
265 &io_domains {
266         vccio1-supply = <&vcc_io>;
267         vccio2-supply = <&vcc18_emmc>;
268         vccio3-supply = <&vcc_io>;
269         vccio4-supply = <&vdd_18>;
270         vccio5-supply = <&vcc_io>;
271         vccio6-supply = <&vdd_18>;
272         pmuio-supply = <&vcc_io>;
273         status = "okay";
274 };
275
276 &pinctrl {
277         pmic {
278                 pmic_int_l: pmic-int-l {
279                         rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
280                 };
281         };
282
283         usb3 {
284                 usb30_host_drv: usb30-host-drv {
285                         rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
286                 };
287         };
288
289         wifi {
290                 bt_dis: bt-dis {
291                         rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_output_low>;
292                 };
293
294                 bt_wake_host: bt-wake-host {
295                         rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>;
296                 };
297
298                 chip_en: chip-en {
299                         rockchip,pins = <2 RK_PC3 RK_FUNC_GPIO &pcfg_output_low>;
300                 };
301
302                 host_wake_bt: host-wake-bt {
303                         rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_output_high>;
304                 };
305
306                 wl_dis: wl-dis {
307                         rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_output_low>;
308                 };
309
310                 wl_wake_host: wl-wake-host {
311                         rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
312                 };
313         };
314 };
315
316 &sdmmc {
317         bus-width = <4>;
318         cap-mmc-highspeed;
319         cap-sd-highspeed;
320         disable-wp;
321         pinctrl-names = "default";
322         pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
323         vmmc-supply = <&vcc_io>;
324         vqmmc-supply = <&vcc_io>;
325         status = "okay";
326 };
327
328 &tsadc {
329         rockchip,hw-tshut-mode = <0>;
330         rockchip,hw-tshut-polarity = <0>;
331         status = "okay";
332 };
333
334 &uart2 {
335         status = "okay";
336 };
337
338 &u2phy {
339         status = "okay";
340 };
341
342 &u2phy_host {
343         status = "okay";
344 };
345
346 &u2phy_otg {
347         status = "okay";
348 };
349
350 &usb20_otg {
351         dr_mode = "host";
352         status = "okay";
353 };
354
355 &usb_host0_ehci {
356         pinctrl-names = "default";
357         pinctrl-0 = <&bt_dis &bt_wake_host &chip_en &host_wake_bt &wl_dis &wl_wake_host>;
358         status = "okay";
359 };
360
361 &vop {
362         status = "okay";
363 };
364
365 &vop_mmu {
366         status = "okay";
367 };