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 };
Cache object: 35628d9280f08033751aab61dd388618
|