Commit 2691cb4e authored by Stephen Boyd's avatar Stephen Boyd Committed by Andy Gross

arm64: dts: qcom: Force host mode for USB on apq8016-sbc

Commit ed75d6a9 ("arm64: dts: qcom: Collapse usb support into
one node") breaks host mode support on apq8016-sbc boards. This
is because the mux driver (tc7usb40mu) hasn't been merged.
Without that driver, we can't toggle the GPIO going to the mux to
route out the D+/D- lines to the USB hub that's on the board.

One solution would be to totally revert this change, but that
opens us up to other problems when two USB drivers are operating
the same hardware block at the same time. Let's modify the DT so
that the USB controller is always in host mode and connected to
the hub so that things like USB keyboards and mouses work. This
is the mode that most people prefer anyway with these devices. We
also delete the usb-switch node because the binding was never
accepted upstream.

In the future, we can add muxing support and then update the DT
to support both modes at runtime. Patches to support this are
already on the mailing list.

Fixes: ed75d6a9 ("arm64: dts: qcom: Collapse usb support into one node")
Reported-by: default avatarRob Clark <robdclark@gmail.com>
Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
Signed-off-by: default avatarAndy Gross <andy.gross@linaro.org>
parent 5771a8c0
......@@ -17,6 +17,7 @@ pinconf {
function = PMIC_GPIO_FUNC_NORMAL;
power-source = <PM8916_GPIO_VPH>;
input-disable;
output-high;
};
};
......
......@@ -213,11 +213,14 @@ sdhci@07864000 {
};
usb@78d9000 {
extcon = <&usb_id>, <&usb_id>;
extcon = <&usb_id>;
status = "okay";
adp-disable;
hnp-disable;
srp-disable;
dr_mode = "host";
pinctrl-names = "default";
pinctrl-0 = <&usb_sw_sel_pm>;
ulpi {
phy {
v1p8-supply = <&pm8916_l7>;
......@@ -337,19 +340,11 @@ usb2513 {
usb_id: usb-id {
compatible = "linux,extcon-usb-gpio";
id-gpio = <&msmgpio 121 GPIO_ACTIVE_HIGH>;
vbus-gpio = <&msmgpio 121 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&usb_id_default>;
};
usb-switch {
compatible = "toshiba,tc7usb40mu";
switch-gpios = <&pm8916_gpios 4 GPIO_ACTIVE_HIGH>;
extcon = <&usb_id>;
pinctrl-names = "default";
pinctrl-0 = <&usb_sw_sel_pm>;
};
hdmi-out {
compatible = "hdmi-connector";
type = "a";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment