241 lines
4.6 KiB
Diff
241 lines
4.6 KiB
Diff
From f2509ec45a09013e300460a967f694561d169b98 Mon Sep 17 00:00:00 2001
|
|
From: Hans de Goede <hdegoede@redhat.com>
|
|
Date: Sat, 11 Jan 2014 04:47:38 +0100
|
|
Subject: [PATCH] ARM: sun4i: dt: Add USB host nodes to hackberry dts
|
|
|
|
Add nodes for the usb-phy and ehci- and ohci-usb-host controllers.
|
|
|
|
Based on fex file settings, the fex file also contains a mysterious line:
|
|
usb_hub_vcc_en_gpio = port:PB09<1><0><default><0>
|
|
|
|
Which also clashes with usbc0, which has:
|
|
usb_drv_vbus_gpio = port:PB09<1><0><default><0>
|
|
|
|
So if usb does not work properly we need someone with a hackberry to look
|
|
closer into this.
|
|
|
|
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
---
|
|
arch/arm/boot/dts/sun4i-a10-hackberry.dts | 40 +++++++++++++++++++++++++++++++
|
|
1 file changed, 40 insertions(+)
|
|
|
|
--- a/arch/arm/boot/dts/sun4i-a10-hackberry.dts
|
|
+++ b/arch/arm/boot/dts/sun4i-a10-hackberry.dts
|
|
@@ -13,6 +13,7 @@
|
|
|
|
/dts-v1/;
|
|
/include/ "sun4i-a10.dtsi"
|
|
+/include/ "sunxi-common-regulators.dtsi"
|
|
|
|
/ {
|
|
model = "Miniand Hackberry";
|
|
@@ -35,6 +36,28 @@
|
|
};
|
|
};
|
|
|
|
+ usbphy: phy@01c13400 {
|
|
+ usb1_vbus-supply = <®_usb1_vbus>;
|
|
+ usb2_vbus-supply = <®_usb2_vbus>;
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci0: usb@01c14000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci0: usb@01c14400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci1: usb@01c1c000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci1: usb@01c1c400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
pio: pinctrl@01c20800 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&hackberry_hogs>;
|
|
@@ -45,6 +68,13 @@
|
|
allwinner,drive = <0>;
|
|
allwinner,pull = <0>;
|
|
};
|
|
+
|
|
+ usb2_vbus_pin_hackberry: usb2_vbus_pin@0 {
|
|
+ allwinner,pins = "PH12";
|
|
+ allwinner,function = "gpio_out";
|
|
+ allwinner,drive = <0>;
|
|
+ allwinner,pull = <0>;
|
|
+ };
|
|
};
|
|
|
|
uart0: serial@01c28000 {
|
|
@@ -66,4 +96,14 @@
|
|
gpio = <&pio 7 19 0>;
|
|
};
|
|
};
|
|
+
|
|
+ reg_usb1_vbus: usb1-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ reg_usb2_vbus: usb2-vbus {
|
|
+ pinctrl-0 = <&usb2_vbus_pin_hackberry>;
|
|
+ gpio = <&pio 7 12 0>;
|
|
+ status = "okay";
|
|
+ };
|
|
};
|
|
--- a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
|
|
+++ b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
|
|
@@ -13,16 +13,47 @@
|
|
|
|
/dts-v1/;
|
|
/include/ "sun4i-a10.dtsi"
|
|
+/include/ "sunxi-common-regulators.dtsi"
|
|
|
|
/ {
|
|
model = "PineRiver Mini X-Plus";
|
|
compatible = "pineriver,mini-xplus", "allwinner,sun4i-a10";
|
|
|
|
soc@01c00000 {
|
|
+ usbphy: phy@01c13400 {
|
|
+ usb1_vbus-supply = <®_usb1_vbus>;
|
|
+ usb2_vbus-supply = <®_usb2_vbus>;
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci0: usb@01c14000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci0: usb@01c14400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci1: usb@01c1c000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci1: usb@01c1c400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
uart0: serial@01c28000 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart0_pins_a>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
+
|
|
+ reg_usb1_vbus: usb1-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ reg_usb2_vbus: usb2-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
};
|
|
--- a/arch/arm/boot/dts/sun4i-a10-pcduino.dts
|
|
+++ b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
|
|
@@ -12,6 +12,7 @@
|
|
|
|
/dts-v1/;
|
|
/include/ "sun4i-a10.dtsi"
|
|
+/include/ "sunxi-common-regulators.dtsi"
|
|
|
|
/ {
|
|
model = "LinkSprite pcDuino";
|
|
@@ -33,6 +34,28 @@
|
|
};
|
|
};
|
|
|
|
+ usbphy: phy@01c13400 {
|
|
+ usb1_vbus-supply = <®_usb1_vbus>;
|
|
+ usb2_vbus-supply = <®_usb2_vbus>;
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci0: usb@01c14000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci0: usb@01c14400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci1: usb@01c1c000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci1: usb@01c1c400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
uart0: serial@01c28000 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart0_pins_a>;
|
|
@@ -45,4 +68,12 @@
|
|
status = "okay";
|
|
};
|
|
};
|
|
+
|
|
+ reg_usb1_vbus: usb1-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ reg_usb2_vbus: usb2-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
};
|
|
--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
|
|
+++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
|
|
@@ -34,11 +34,33 @@
|
|
};
|
|
};
|
|
|
|
+ usbphy: phy@01c13400 {
|
|
+ usb1_vbus-supply = <®_usb1_vbus>;
|
|
+ usb2_vbus-supply = <®_usb2_vbus>;
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ehci0: usb@01c14000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci0: usb@01c14400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
ahci: sata@01c18000 {
|
|
target-supply = <®_ahci_5v>;
|
|
status = "okay";
|
|
};
|
|
|
|
+ ehci1: usb@01c1c000 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ ohci1: usb@01c1c400 {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
pinctrl@01c20800 {
|
|
led_pins_cubieboard: led_pins@0 {
|
|
allwinner,pins = "PH20", "PH21";
|
|
@@ -87,4 +109,12 @@
|
|
reg_ahci_5v: ahci-5v {
|
|
status = "okay";
|
|
};
|
|
+
|
|
+ reg_usb1_vbus: usb1-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ reg_usb2_vbus: usb2-vbus {
|
|
+ status = "okay";
|
|
+ };
|
|
};
|