Commit fa86885b authored by Chen-Yu Tsai's avatar Chen-Yu Tsai Committed by Maxime Ripard

ARM: dts: sun9i: Enable USB support on A80 Optimus board

On the Optimus board, all three USB hosts can be used.
HCI0 and HCI2 are available through the USB connector.
HCI1 is available with HSIC through 2 pins on the GPIO
expansion header.

This patch also adds a regulator for HCI2/USB3's VBUS.
Signed-off-by: default avatarChen-Yu Tsai <wens@csie.org>
Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
parent 70472163
...@@ -86,6 +86,29 @@ led4 { ...@@ -86,6 +86,29 @@ led4 {
gpios = <&pio 7 0 GPIO_ACTIVE_HIGH>; gpios = <&pio 7 0 GPIO_ACTIVE_HIGH>;
}; };
}; };
reg_usb3_vbus: usb3-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&usb3_vbus_pin_optimus>;
regulator-name = "usb3-vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
gpio = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
};
};
&ehci0 {
status = "okay";
};
&ehci1 {
status = "okay";
};
&ehci2 {
status = "okay";
}; };
&i2c3 { &i2c3 {
...@@ -99,6 +122,14 @@ &i2c3_pins_a { ...@@ -99,6 +122,14 @@ &i2c3_pins_a {
allwinner,pull = <SUN4I_PINCTRL_PULL_UP>; allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
}; };
&ohci0 {
status = "okay";
};
&ohci2 {
status = "okay";
};
&pio { &pio {
led_pins_optimus: led-pins@0 { led_pins_optimus: led-pins@0 {
allwinner,pins = "PH0", "PH1"; allwinner,pins = "PH0", "PH1";
...@@ -113,6 +144,20 @@ mmc0_cd_pin_optimus: mmc0_cd_pin@0 { ...@@ -113,6 +144,20 @@ mmc0_cd_pin_optimus: mmc0_cd_pin@0 {
allwinner,drive = <SUN4I_PINCTRL_10_MA>; allwinner,drive = <SUN4I_PINCTRL_10_MA>;
allwinner,pull = <SUN4I_PINCTRL_PULL_UP>; allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
}; };
usb1_vbus_pin_optimus: usb1_vbus_pin@1 {
allwinner,pins = "PH4";
allwinner,function = "gpio_out";
allwinner,drive = <SUN4I_PINCTRL_10_MA>;
allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
};
usb3_vbus_pin_optimus: usb3_vbus_pin@1 {
allwinner,pins = "PH5";
allwinner,function = "gpio_out";
allwinner,drive = <SUN4I_PINCTRL_10_MA>;
allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
};
}; };
&mmc0 { &mmc0 {
...@@ -134,6 +179,12 @@ &mmc2 { ...@@ -134,6 +179,12 @@ &mmc2 {
status = "okay"; status = "okay";
}; };
&reg_usb1_vbus {
pinctrl-0 = <&usb1_vbus_pin_optimus>;
gpio = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */
status = "okay";
};
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pins_a>;
...@@ -150,3 +201,17 @@ &uart4_pins_a { ...@@ -150,3 +201,17 @@ &uart4_pins_a {
/* Enable internal pull-up */ /* Enable internal pull-up */
allwinner,pull = <SUN4I_PINCTRL_PULL_UP>; allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
}; };
&usbphy1 {
vbus-supply = <&reg_usb1_vbus>;
status = "okay";
};
&usbphy2 {
status = "okay";
};
&usbphy3 {
vbus-supply = <&reg_usb3_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