Commit b993292f authored by Stephen Boyd's avatar Stephen Boyd Committed by Andy Gross

ARM: dts: qcom-apq8064: Collapse usb support into one node

We currently have three device nodes for the same USB hardware
block, as evident by the reuse of the same reg address multiple
times. Now that the chipidea driver fully supports OTG with the
MSM wrapper we can collapse the three nodes into one USB device
node, reflecting the true nature of the hardware.

Since we're here, we also mark the irq trigger flags correctly,
as IRQ_TYPE_LEVEL_HIGH instead of IRQ_TYPE_NONE.

Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Cc: John Stultz <john.stultz@linaro.org>
Signed-off-by: default avatarStephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: default avatarAndy Gross <andy.gross@linaro.org>
parent 4ac5a200
......@@ -319,44 +319,38 @@ sata@29000000 {
target-supply = <&pm8921_lvs7>;
};
/* OTG */
phy@12500000 {
status = "okay";
dr_mode = "peripheral";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
phy@12520000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
phy@12530000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
gadget@12500000 {
status = "okay";
};
/* OTG */
usb@12500000 {
status = "okay";
dr_mode = "peripheral";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
};
};
usb@12520000 {
status = "okay";
dr_mode = "otg";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
};
};
usb@12530000 {
status = "okay";
dr_mode = "otg";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
};
};
amba {
......
......@@ -320,22 +320,16 @@ serial@16640000 {
};
};
/* OTG */
phy@12500000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
dr_mode = "otg";
};
gadget@12500000 {
status = "okay";
};
/* OTG */
usb@12500000 {
status = "okay";
dr_mode = "otg";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
};
};
amba {
......
......@@ -150,42 +150,37 @@ serial@16640000 {
};
/* OTG */
usb1_phy: phy@12500000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
usb3_phy: phy@12520000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
usb4_phy: phy@12530000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
gadget1: gadget@12500000 {
status = "ok";
};
/* OTG */
usb1: usb@12500000 {
usb@12500000 {
status = "ok";
dr_mode = "otg";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
};
};
usb3: usb@12520000 {
usb@12520000 {
status = "okay";
dr_mode = "host";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
};
};
usb4: usb@12530000 {
usb@12530000 {
status = "okay";
dr_mode = "host";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
};
};
/* on board fixed 3.3v supply */
......
......@@ -244,42 +244,37 @@ sata0: sata@29000000 {
};
/* OTG */
usb1_phy: phy@12500000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
usb3_phy: phy@12520000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
usb4_phy: phy@12530000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
gadget1: gadget@12500000 {
status = "okay";
};
/* OTG */
usb1: usb@12500000 {
usb@12500000 {
status = "okay";
dr_mode = "otg";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
};
};
usb3: usb@12520000 {
usb@12520000 {
status = "okay";
dr_mode = "host";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
};
};
usb4: usb@12530000 {
usb@12530000 {
status = "okay";
dr_mode = "host";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l23>;
};
};
};
pci@1b500000 {
......
......@@ -349,15 +349,15 @@ gpio_keys_pin_a: gpio-keys-pin-active {
};
};
phy@12500000 {
status = "okay";
vddcx-supply = <&pm8921_s3>;
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
gadget@12500000 {
usb@12500000 {
status = "okay";
dr_mode = "otg";
ulpi {
phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
};
};
};
gsbi@1a200000 {
......
......@@ -197,7 +197,7 @@ pxo_board {
clock-frequency = <27000000>;
};
sleep_clk {
sleep_clk: sleep_clk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32768>;
......@@ -884,81 +884,97 @@ pm8921_hdmi_switch: hdmi-switch {
};
};
usb1_phy: phy@12500000 {
compatible = "qcom,usb-otg-ci";
reg = <0x12500000 0x400>;
interrupts = <GIC_SPI 100 IRQ_TYPE_NONE>;
status = "disabled";
clocks = <&gcc USB_HS1_XCVR_CLK>,
<&gcc USB_HS1_H_CLK>;
clock-names = "core", "iface";
resets = <&gcc USB_HS1_RESET>;
reset-names = "link";
};
usb3_phy: phy@12520000 {
compatible = "qcom,usb-otg-ci";
reg = <0x12520000 0x400>;
interrupts = <GIC_SPI 188 IRQ_TYPE_NONE>;
status = "disabled";
dr_mode = "host";
clocks = <&gcc USB_HS3_XCVR_CLK>,
<&gcc USB_HS3_H_CLK>;
clock-names = "core", "iface";
resets = <&gcc USB_HS3_RESET>;
reset-names = "link";
};
usb4_phy: phy@12530000 {
compatible = "qcom,usb-otg-ci";
reg = <0x12530000 0x400>;
interrupts = <GIC_SPI 215 IRQ_TYPE_NONE>;
status = "disabled";
dr_mode = "host";
clocks = <&gcc USB_HS4_XCVR_CLK>,
<&gcc USB_HS4_H_CLK>;
clock-names = "core", "iface";
resets = <&gcc USB_HS4_RESET>;
reset-names = "link";
};
gadget1: gadget@12500000 {
compatible = "qcom,ci-hdrc";
reg = <0x12500000 0x400>;
status = "disabled";
dr_mode = "peripheral";
interrupts = <GIC_SPI 100 IRQ_TYPE_NONE>;
usb-phy = <&usb1_phy>;
};
usb1: usb@12500000 {
compatible = "qcom,ehci-host";
reg = <0x12500000 0x400>;
interrupts = <GIC_SPI 100 IRQ_TYPE_NONE>;
status = "disabled";
usb-phy = <&usb1_phy>;
compatible = "qcom,ci-hdrc";
reg = <0x12500000 0x200>,
<0x12500200 0x200>;
interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc USB_HS1_XCVR_CLK>, <&gcc USB_HS1_H_CLK>;
clock-names = "core", "iface";
assigned-clocks = <&gcc USB_HS1_XCVR_CLK>;
assigned-clock-rates = <60000000>;
resets = <&gcc USB_HS1_RESET>;
reset-names = "core";
phy_type = "ulpi";
ahb-burst-config = <0>;
phys = <&usb_hs1_phy>;
phy-names = "usb-phy";
status = "disabled";
#reset-cells = <1>;
ulpi {
usb_hs1_phy: phy {
compatible = "qcom,usb-hs-phy-apq8064",
"qcom,usb-hs-phy";
#phy-cells = <0>;
clocks = <&sleep_clk>, <&cxo_board>;
clock-names = "sleep", "ref";
resets = <&usb1 0>;
reset-names = "por";
};
};
};
usb3: usb@12520000 {
compatible = "qcom,ehci-host";
reg = <0x12520000 0x400>;
interrupts = <GIC_SPI 188 IRQ_TYPE_NONE>;
status = "disabled";
usb-phy = <&usb3_phy>;
compatible = "qcom,ci-hdrc";
reg = <0x12520000 0x200>,
<0x12520200 0x200>;
interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc USB_HS3_XCVR_CLK>, <&gcc USB_HS3_H_CLK>;
clock-names = "core", "iface";
assigned-clocks = <&gcc USB_HS3_XCVR_CLK>;
assigned-clock-rates = <60000000>;
resets = <&gcc USB_HS3_RESET>;
reset-names = "core";
phy_type = "ulpi";
ahb-burst-config = <0>;
phys = <&usb_hs3_phy>;
phy-names = "usb-phy";
status = "disabled";
#reset-cells = <1>;
ulpi {
usb_hs3_phy: phy {
compatible = "qcom,usb-hs-phy-apq8064",
"qcom,usb-hs-phy";
#phy-cells = <0>;
clocks = <&sleep_clk>, <&cxo_board>;
clock-names = "sleep", "ref";
resets = <&usb3 0>;
reset-names = "por";
};
};
};
usb4: usb@12530000 {
compatible = "qcom,ehci-host";
reg = <0x12530000 0x400>;
interrupts = <GIC_SPI 215 IRQ_TYPE_NONE>;
status = "disabled";
usb-phy = <&usb4_phy>;
compatible = "qcom,ci-hdrc";
reg = <0x12530000 0x200>,
<0x12530200 0x200>;
interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc USB_HS4_XCVR_CLK>, <&gcc USB_HS4_H_CLK>;
clock-names = "core", "iface";
assigned-clocks = <&gcc USB_HS4_XCVR_CLK>;
assigned-clock-rates = <60000000>;
resets = <&gcc USB_HS4_RESET>;
reset-names = "core";
phy_type = "ulpi";
ahb-burst-config = <0>;
phys = <&usb_hs4_phy>;
phy-names = "usb-phy";
status = "disabled";
#reset-cells = <1>;
ulpi {
usb_hs4_phy: phy {
compatible = "qcom,usb-hs-phy-apq8064",
"qcom,usb-hs-phy";
#phy-cells = <0>;
clocks = <&sleep_clk>, <&cxo_board>;
clock-names = "sleep", "ref";
resets = <&usb4 0>;
reset-names = "por";
};
};
};
sata_phy0: phy@1b400000 {
......
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