ARM: dts: qcom-apq8064: Collapse usb support into one node
authorStephen Boyd <stephen.boyd@linaro.org>
Fri, 27 Jan 2017 00:47:27 +0000 (16:47 -0800)
committerAndy Gross <andy.gross@linaro.org>
Fri, 26 May 2017 05:52:23 +0000 (00:52 -0500)
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: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
arch/arm/boot/dts/qcom-apq8064-arrow-sd-600eval.dts
arch/arm/boot/dts/qcom-apq8064-asus-nexus7-flo.dts
arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
arch/arm/boot/dts/qcom-apq8064-sony-xperia-yuga.dts
arch/arm/boot/dts/qcom-apq8064.dtsi

index 8f5de029bca9eae93ae957ce525ba1550f2a7d0c..f245064f320ef1fac22542acc22d6b763ca4cebd 100644 (file)
                        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 {
index e39440a867399f7a4876c92adfd9302531baeb8e..3483a66e44c156d17b68b4129181f10482a07942 100644 (file)
                        };
                };
 
-               /* 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 {
index 35f1d46edded1a7e7aea86f09fb03674a0e464e7..5b151e425530e83bef4fd8263df389bf862e9c6b 100644 (file)
                };
 
                /* 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 */
index 881ce707311a05e35160456e76bf564863ea0895..053b5bdd7808c9b32765c5f1430f03940f5420ec 100644 (file)
                };
 
                /* 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 {
index a34ba355545495dfa6547bfd395f20a008afba2c..88a9aff41e2f59bb22e3f6546f2ccf7d65543a4c 100644 (file)
                        };
                };
 
-               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 {
index 14a6f5ed02de66f7592329643d43b69d645a15db..f3db185a68090c50fc20f934e84913a2b8c22ce4 100644 (file)
                        clock-frequency = <27000000>;
                };
 
-               sleep_clk {
+               sleep_clk: sleep_clk {
                        compatible = "fixed-clock";
                        #clock-cells = <0>;
                        clock-frequency = <32768>;
                        };
                };
 
-               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 {