Commit 9f851d4e authored by Chen-Yu Tsai's avatar Chen-Yu Tsai

ARM: sun8i: a83t: cubietruck-plus: Enable onboard USB peripherals

The Cubietruck-plus has a GL830 USB-to-SATA bridge connected to EHCI0,
and a USB3503 HSIC USB 2.0 hub connected to EHCI1. The USB3503's I2C
control interface is not connected.

This patch enables both EHCI controllers, adds a device node for the
USB hub, and includes sunxi-common-regulators.dtsi for the VBUS
regulators. The existing reg_vcc3v3 is dropped as it is also available
in the set of common regulators. Other unused regulators are disabled.
Signed-off-by: default avatarChen-Yu Tsai <wens@csie.org>
parent 25ac8b9b
...@@ -44,6 +44,7 @@ ...@@ -44,6 +44,7 @@
/dts-v1/; /dts-v1/;
#include "sun8i-a83t.dtsi" #include "sun8i-a83t.dtsi"
#include "sunxi-common-regulators.dtsi"
#include <dt-bindings/gpio/gpio.h> #include <dt-bindings/gpio/gpio.h>
...@@ -83,11 +84,15 @@ green { ...@@ -83,11 +84,15 @@ green {
}; };
}; };
reg_vcc3v3: vcc3v3 { usb-hub {
compatible = "regulator-fixed"; /* I2C is not connected */
regulator-name = "vcc3v3"; compatible = "smsc,usb3503";
regulator-min-microvolt = <3300000>; initial-mode = <1>; /* initialize in HUB mode */
regulator-max-microvolt = <3300000>; disabled-ports = <1>;
intn-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
reset-gpios = <&pio 4 16 GPIO_ACTIVE_HIGH>; /* PE16 */
connect-gpios = <&pio 4 17 GPIO_ACTIVE_HIGH>; /* PE17 */
refclk-frequency = <19200000>;
}; };
sound { sound {
...@@ -109,6 +114,16 @@ spdif_out: spdif-out { ...@@ -109,6 +114,16 @@ spdif_out: spdif-out {
}; };
}; };
&ehci0 {
/* GL830 USB-to-SATA bridge here */
status = "okay";
};
&ehci1 {
/* USB3503 HSIC USB 2.0 hub here */
status = "okay";
};
&mmc0 { &mmc0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>; pinctrl-0 = <&mmc0_pins>;
...@@ -164,6 +179,24 @@ ac100_rtc: rtc { ...@@ -164,6 +179,24 @@ ac100_rtc: rtc {
}; };
}; };
&reg_usb1_vbus {
gpio = <&pio 3 29 GPIO_ACTIVE_HIGH>; /* PD29 */
status = "okay";
};
&reg_usb2_vbus {
gpio = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
status = "okay";
};
&reg_vcc3v0 {
status = "disabled";
};
&reg_vcc5v0 {
status = "disabled";
};
&spdif { &spdif {
status = "okay"; status = "okay";
}; };
...@@ -173,3 +206,9 @@ &uart0 { ...@@ -173,3 +206,9 @@ &uart0 {
pinctrl-0 = <&uart0_pb_pins>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
&usbphy {
usb1_vbus-supply = <&reg_usb1_vbus>;
usb2_vbus-supply = <&reg_usb2_vbus>;
status = "okay";
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment