Skip to content

Commit 9f2a969

Browse files
xhackerustcRevySR
authored andcommitted
riscv: dts: thead: Enable Lichee Pi 4A USB
Signed-off-by: Jisheng Zhang <[email protected]> [esmil: fix gpio references] Signed-off-by: Emil Renner Berthing <[email protected]>
1 parent b41720b commit 9f2a969

File tree

1 file changed

+61
-0
lines changed

1 file changed

+61
-0
lines changed

arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
*/
55

66
#include "th1520-lichee-module-4a.dtsi"
7+
#include <dt-bindings/gpio/gpio.h>
78

89
/ {
910
model = "Sipeed Lichee Pi 4A";
@@ -24,6 +25,13 @@
2425
serial3 = &uart3;
2526
serial4 = &uart4;
2627
serial5 = &uart5;
28+
i2c0 = &i2c0;
29+
i2c1 = &i2c1;
30+
i2c2 = &i2c2;
31+
i2c3 = &i2c3;
32+
i2c4 = &i2c4;
33+
i2c5 = &audio_i2c0;
34+
i2c6 = &audio_i2c1;
2735
};
2836

2937
chosen {
@@ -39,6 +47,26 @@
3947
cooling-levels = <0 66 196 255>;
4048
};
4149

50+
hub_5v: regulator-hub_5v {
51+
compatible = "regulator-fixed";
52+
regulator-name = "HUB_5V";
53+
regulator-min-microvolt = <5000000>;
54+
regulator-max-microvolt = <5000000>;
55+
gpio = <&ioexp3 3 GPIO_ACTIVE_HIGH>;
56+
enable-active-high;
57+
regulator-always-on;
58+
};
59+
60+
vcc5v_usb: regulator-vcc5v_usb {
61+
compatible = "regulator-fixed";
62+
regulator-name = "VCC5V_USB";
63+
regulator-min-microvolt = <5000000>;
64+
regulator-max-microvolt = <5000000>;
65+
gpio = <&gpio1 22 GPIO_ACTIVE_HIGH>;
66+
enable-active-high;
67+
regulator-always-on;
68+
};
69+
4270
thermal-zones {
4371
cpu-thermal {
4472
polling-delay = <1000>;
@@ -85,6 +113,14 @@
85113
};
86114
};
87115

116+
&aogpio {
117+
sel-usb-hub-hog {
118+
gpio-hog;
119+
gpios = <4 GPIO_ACTIVE_HIGH>;
120+
output-high;
121+
};
122+
};
123+
88124
&gmac0 {
89125
pinctrl-names = "default";
90126
pinctrl-0 = <&gmac0_pins>;
@@ -349,3 +385,28 @@
349385
pinctrl-0 = <&uart0_pins>;
350386
status = "okay";
351387
};
388+
389+
&usb {
390+
status = "okay";
391+
};
392+
393+
&usb_dwc3 {
394+
status = "okay";
395+
#address-cells = <1>;
396+
#size-cells = <0>;
397+
398+
hub_2_0: hub@1 {
399+
compatible = "usb2109,2817";
400+
reg = <1>;
401+
peer-hub = <&hub_3_0>;
402+
vdd-supply = <&hub_5v>;
403+
vbus-supply = <&vcc5v_usb>;
404+
};
405+
406+
hub_3_0: hub@2 {
407+
compatible = "usb2109,817";
408+
reg = <2>;
409+
peer-hub = <&hub_2_0>;
410+
vbus-supply = <&vcc5v_usb>;
411+
};
412+
};

0 commit comments

Comments
 (0)