arm64: dts: qcom: msm8916-longcheer-l8150: Use &pm8916_usbin extcon

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: 16e8e80721 ("arm64: dts: qcom: Add device tree for Longcheer L8150")
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210928112945.25310-3-stephan@gerhold.net
This commit is contained in:
Stephan Gerhold
2021-09-28 13:29:45 +02:00
committed by Bjorn Andersson
parent f5d7bca554
commit b30cad26d8

View File

@@ -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;
};
};