@@ -30,14 +30,6 @@ wcnss_mem: wcnss@8b600000 {
};
};
- // FIXME: Use extcon device provided by charger driver when available
- usb_vbus: usb-vbus {
- compatible = "linux,extcon-usb-gpio";
- vbus-gpio = <&msmgpio 62 GPIO_ACTIVE_HIGH>;
- pinctrl-names = "default";
- pinctrl-0 = <&usb_vbus_default>;
- };
-
gpio-keys {
compatible = "gpio-keys";
@@ -215,6 +207,10 @@ &pm8916_resin {
linux,code = <KEY_VOLUMEDOWN>;
};
+&pm8916_usbin {
+ status = "okay";
+};
+
&pm8916_vib {
status = "okay";
};
@@ -244,11 +240,11 @@ &sdhc_2 {
&usb {
status = "okay";
dr_mode = "peripheral";
- extcon = <&usb_vbus>;
+ extcon = <&pm8916_usbin>;
};
&usb_hs_phy {
- extcon = <&usb_vbus>;
+ extcon = <&pm8916_usbin>;
};
&smd_rpm_regulators {
@@ -410,11 +406,4 @@ tp_int_default: tp-int-default {
drive-strength = <2>;
bias-disable;
};
-
- usb_vbus_default: usb-vbus-default {
- pins = "gpio62";
- function = "gpio";
-
- bias-pull-up;
- };
};
At the moment, longcheer-l8150 is using a dummy extcon-usb-gpio device that permanently enables USB gadget mode. This workaround allows USB to work but is actually wrong and confusing. The "vbus-gpio" used there refers to an unused (floating) GPIO that is pulled up to make extcon-usb-gpio report USB gadget mode permanently. Replace this with the new &pm8916_usbin extcon device that actually reports if an USB cable is attached or not. This allows the USB PHY to be turned off when there is no USB cable attached and is much cleaner overall. Fixes: 16e8e8072108 ("arm64: dts: qcom: Add device tree for Longcheer L8150") Signed-off-by: Stephan Gerhold <stephan@gerhold.net> --- .../boot/dts/qcom/msm8916-longcheer-l8150.dts | 23 +++++-------------- 1 file changed, 6 insertions(+), 17 deletions(-)