diff options
| author | Jack Pham <jackp@codeaurora.org> | 2016-02-11 16:36:26 -0800 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-25 16:02:41 -0700 |
| commit | 228f6d6f8be02c446ee4c93b1d03a5de1b7e8b9c (patch) | |
| tree | 462f1d5fb3dc667d2d2aaa1e4f8b2c0c9d936c27 /arch | |
| parent | dc20a2e38b497195d82989079736ce998e2fb61b (diff) | |
ARM: dts: msm: Add USB VBUS configuration for MSM8996 CDP_AU
USB 5V VBUS can be switched independently for the two USB
instances on the CDP_AU board. Add the PM8994 GPIO/MPP
configurations and expose them as usb_vbus_vreg,
usb_otg_switch and usb2_otg_switch regulators that can be
controlled by the USB controller device instances.
Also fix up the &usb3 node. Due to commit c51ea2bbbce87
("ARM: dts: msm: Add GIC ITS extensions for 8996") changing
the size of address-cells for the &intc node, the interrupt-map
property needs to be updated to the new format. Also update
the correct IRQ numbers and add the missing ss_phy_irq to
sync up with the msm8996 SOC DT definition. Finally, remove
the unused vdda supply entries as well.
CRs-fixed: 971957
Change-Id: Id53f0a54e16b194bc12e57fac3e52efc43ebdc6c
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/arm/boot/dts/qcom/msm8996-auto-cdp.dtsi | 48 |
1 files changed, 41 insertions, 7 deletions
diff --git a/arch/arm/boot/dts/qcom/msm8996-auto-cdp.dtsi b/arch/arm/boot/dts/qcom/msm8996-auto-cdp.dtsi index 4afb0f13044a..871150d60dc5 100644 --- a/arch/arm/boot/dts/qcom/msm8996-auto-cdp.dtsi +++ b/arch/arm/boot/dts/qcom/msm8996-auto-cdp.dtsi @@ -432,6 +432,16 @@ qcom,master-en = <1>; /* Enable GPIO */ status = "okay"; }; + + mpp@a700 { /* MPP 8 */ + /* USB 5V regulator enable */ + qcom,mode = <1>; /* Digital output */ + qcom,output-type = <0>; /* CMOS logic */ + qcom,vin-sel = <2>; /* S4 1.8V */ + qcom,src-sel = <0>; /* Constant */ + qcom,master-en = <1>; /* Enable GPIO */ + status = "okay"; + }; }; &soc { @@ -603,6 +613,21 @@ interrupt-names = "vbus_det_irq"; }; + usb_vbus_vreg: usb_vbus_vreg { + compatible = "regulator-fixed"; + regulator-name = "usb_vbus_vreg"; + gpio = <&pm8994_mpps 8 0>; + enable-active-high; + }; + + usb2_otg_switch: usb2_otg_switch { + compatible = "regulator-fixed"; + vin-supply = <&usb_vbus_vreg>; + regulator-name = "usb2_otg_vreg"; + gpio = <&pm8994_gpios 12 0>; + enable-active-high; + }; + qcom,msm-dai-mi2s { dai_mi2s_quat: qcom,msm-dai-q6-mi2s-quat { pinctrl-names = "default", "sleep"; @@ -693,6 +718,14 @@ status = "okay"; }; + gpio@cb00 { /* GPIO 12 - USB enb2 (otg switch) */ + qcom,mode = <1>; /* DIGITAL OUT */ + qcom,vin-sel = <2>; /* 1.8 */ + qcom,src-sel = <0>; /* GPIO */ + qcom,master-en = <1>; /* Enable GPIO */ + status = "okay"; + }; + gpio@cc00 { /* GPIO 13 - HPH_EN0 */ qcom,mode = <1>; qcom,output-type = <0>; @@ -748,6 +781,7 @@ &usb2s { status = "ok"; + vbus_dwc3-supply = <&usb2_otg_switch>; dwc3@7600000 { dr_mode = "host"; }; @@ -755,17 +789,17 @@ &usb3 { interrupt-parent = <&usb3>; - interrupts = <0 1 2>; + interrupts = <0 1 2 3>; #interrupt-cells = <1>; interrupt-map-mask = <0x0 0xffffffff>; - interrupt-map = <0x0 0 &intc 0 133 0 - 0x0 1 &intc 0 180 0 - 0x0 2 &spmi_bus 0x0 0x0 0x9 0x0>; - interrupt-names = "hs_phy_irq", "pwr_event_irq", "pmic_id_irq"; + interrupt-map = <0x0 0 &intc 0 0 347 0 + 0x0 1 &intc 0 0 243 0 + 0x0 2 &intc 0 0 180 0 + 0x0 3 &spmi_bus 0x0 0x0 0x9 0x0>; + interrupt-names = "hs_phy_irq", "ss_phy_irq", "pwr_event_irq", + "pmic_id_irq"; vbus_dwc3-supply = <&usb_otg_switch>; - vdda33-supply = <&pm8994_l24>; - vdda18-supply = <&pm8994_l12>; }; &blsp1_uart2 { |
