aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>2014-06-19 13:16:48 +0100
committerSrinivas Kandagatla <srinivas.kandagatla@linaro.org>2014-11-10 07:23:49 +0000
commit7929927b3873de0321161555b0f6306d7a216717 (patch)
tree22be9697d3b3b8346b9fa6d2531d5b794fca89c7
parentfc56035b7d87cbebbb97b5caac2bf3786ce07036 (diff)
ARM: DT: apq8064: Add USB OTG support
This patch adds USB OTG support on USB1 of APQ8064 SOC. Tested on IFC6410 with ethernet gadget. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
-rw-r--r--arch/arm/boot/dts/qcom-apq8064-ifc6410.dts14
-rw-r--r--arch/arm/boot/dts/qcom-apq8064.dtsi47
2 files changed, 61 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
index d6036b822eac..f41fb39fb57d 100644
--- a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
@@ -40,6 +40,11 @@
};
};
+ /* OTG */
+ usb1_phy:phy@12500000 {
+ status = "ok";
+ };
+
usb3_phy:phy@12520000 {
status = "ok";
};
@@ -48,6 +53,15 @@
status = "ok";
};
+ gadget1:gadget@12500000 {
+ status = "ok";
+ };
+
+ /* OTG */
+ usb1: usb@12500000 {
+ status = "ok";
+ };
+
usb3: usb@12520000 {
status = "ok";
};
diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index 491a136d712c..ce976b1982c4 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -2,6 +2,7 @@
#include "skeleton.dtsi"
#include <dt-bindings/clock/qcom,gcc-msm8960.h>
+#include <dt-bindings/reset/qcom,gcc-msm8960.h>
#include <dt-bindings/clock/qcom,mmcc-msm8960.h>
#include <dt-bindings/mfd/qcom-rpm.h>
#include <dt-bindings/soc/qcom,gsbi.h>
@@ -284,6 +285,16 @@
qcom,boot-load = <50000>;
};
+ pm8921_l4: pm8921-l4 {
+ compatible = "qcom,rpm-pm8921-pldo";
+ reg = <QCOM_RPM_PM8921_LDO4>;
+
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ qcom,boot-load = <50000>;
+ };
+
pm8921_l23: pm8921-l23 {
compatible = "qcom,rpm-pm8921-pldo";
reg = <QCOM_RPM_PM8921_LDO23>;
@@ -296,6 +307,25 @@
};
+ usb1_phy:phy@12500000 {
+ compatible = "qcom,usb-otg-ci";
+ reg = <0x12500000 0x400>;
+ interrupts = <0 100 0>;
+ status = "disabled";
+ dr_mode = "host";
+
+ clocks = <&gcc USB_HS1_XCVR_CLK>,
+ <&gcc USB_HS1_H_CLK>;
+ clock-names = "core", "iface";
+
+ vddcx-supply = <&pm8921_s3>;
+ v3p3-supply = <&pm8921_l3>;
+ v1p8-supply = <&pm8921_l4>;
+
+ resets = <&gcc USB_HS1_RESET>;
+ reset-names = "link";
+ };
+
usb3_phy:phy@12520000 {
compatible = "qcom,usb-otg-ci";
reg = <0x12520000 0x400>;
@@ -334,6 +364,23 @@
reset-names = "link";
};
+ gadget1:gadget@12500000 {
+ compatible = "qcom,ci-hdrc";
+ reg = <0x12500000 0x400>;
+ status = "disabled";
+ dr_mode = "peripheral";
+ interrupts = <0 100 0>;
+ usb-phy = <&usb1_phy>;
+ };
+
+ usb1: usb@12500000 {
+ compatible = "qcom,ehci-host";
+ reg = <0x12500000 0x400>;
+ interrupts = <0 100 0>;
+ status = "disabled";
+ usb-phy = <&usb1_phy>;
+ };
+
usb3: usb@12520000 {
compatible = "qcom,ehci-host";
reg = <0x12520000 0x400>;