Message ID | 20200720085406.6716-11-stephan@gerhold.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Convert MSM8916 boards to use labels, reduce duplication | expand |
diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi index 1ecc49e36319..e4b655eb153b 100644 --- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi @@ -379,9 +379,6 @@ codec { &usb { status = "okay"; extcon = <&usb_id>, <&usb_id>; - adp-disable; - hnp-disable; - srp-disable; pinctrl-names = "default", "device"; pinctrl-0 = <&usb_sw_sel_pm &usb_hub_reset_pm>; diff --git a/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts b/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts index dec5e3ba7df4..b9d3c5d98dd0 100644 --- a/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts +++ b/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts @@ -87,10 +87,6 @@ &usb { status = "okay"; dr_mode = "peripheral"; extcon = <&usb_vbus>; - - hnp-disable; - srp-disable; - adp-disable; }; &usb_hs_phy { diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi index eb667f4b0e05..2ba649bffd4e 100644 --- a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi @@ -153,10 +153,6 @@ &sdhc_2 { &usb { status = "okay"; extcon = <&muic>, <&muic>; - - hnp-disable; - srp-disable; - adp-disable; }; &usb_hs_phy { diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi index 273faffab369..d6a5b60846d9 100644 --- a/arch/arm64/boot/dts/qcom/msm8916.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi @@ -802,6 +802,9 @@ usb: usb@78d9000 { reset-names = "core"; phy_type = "ulpi"; dr_mode = "otg"; + hnp-disable; + srp-disable; + adp-disable; ahb-burst-config = <0>; phy-names = "usb-phy"; phys = <&usb_hs_phy>;
Right now we define "hnp-disable", "srp-disable", "adp-disable" separately for every MSM8916 board that has USB working. They are needed for USB to work properly if CONFIG_USB_OTG_FSM is enabled. This is because the chipidea OTG FSM code waits for interrupts regarding the VBUS state (AVVIS). Those never happen on MSM8916 because VBUS is always connected to the PMIC instead of the USB controller. There was a patch [1] to work around this but ultimately it was decided that it's easier to disable the OTG FSM altogether using these properties. This works fine for most use cases, because the OTG FSM isn't needed for simple dual role host/gadget operation. Given that these properties are needed for every MSM8916 device, move them to msm8916.dtsi so we can avoid some more duplication. [1]: https://lore.kernel.org/lkml/20160707222114.1673-10-stephen.boyd@linaro.org/ Signed-off-by: Stephan Gerhold <stephan@gerhold.net> --- arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi | 3 --- arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts | 4 ---- arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi | 4 ---- arch/arm64/boot/dts/qcom/msm8916.dtsi | 3 +++ 4 files changed, 3 insertions(+), 11 deletions(-)