summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
diff options
context:
space:
mode:
authorIcenowy Zheng <icenowy@aosc.xyz>2017-03-25 17:50:13 +0300
committerMaxime Ripard <maxime.ripard@free-electrons.com>2017-03-27 14:45:30 +0300
commit2e77b3afdde9c0ea514d3dec47633b5ef3c04b7c (patch)
tree7406574a2a0070ba32b7dc31b55fc2807de14a53 /arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
parentda89e1d5cbafe9fac6325867e609cc4d2b681e84 (diff)
downloadlinux-2e77b3afdde9c0ea514d3dec47633b5ef3c04b7c.tar.xz
ARM: sun8i: h3: enable USB OTG on Orange Pi One
Orange Pi One features a MicroUSB port that can work in both host mode and peripheral mode. When in host mode, its VBUS is controlled via a GPIO; when in peripheral mode, its VBUS cannot be used to power up the board. Add support for this port. Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> Acked-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Diffstat (limited to 'arch/arm/boot/dts/sun8i-h3-orangepi-one.dts')
-rw-r--r--arch/arm/boot/dts/sun8i-h3-orangepi-one.dts22
1 files changed, 21 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
index 34da853ee037..b87778d74239 100644
--- a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
@@ -90,6 +90,10 @@
};
};
+&ehci0 {
+ status = "okay";
+};
+
&ehci1 {
status = "okay";
};
@@ -104,6 +108,10 @@
status = "okay";
};
+&ohci0 {
+ status = "okay";
+};
+
&ohci1 {
status = "okay";
};
@@ -127,6 +135,11 @@
};
};
+&reg_usb0_vbus {
+ gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */
+ status = "okay";
+};
+
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>;
@@ -151,7 +164,14 @@
status = "disabled";
};
+&usb_otg {
+ dr_mode = "otg";
+ status = "okay";
+};
+
&usbphy {
- /* USB VBUS is always on */
+ /* USB Type-A port's VBUS is always on */
+ usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
+ usb0_vbus-supply = <&reg_usb0_vbus>;
status = "okay";
};