drivers/usb/dwc3/dwc3-qcom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
With vbus override enabled when in OTG dr_mode, Host<->Peripheral
switch now works on SM8550, otherwise the DWC3 seems to be stuck
in Host mode only.
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
drivers/usb/dwc3/dwc3-qcom.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
index b0a0351d2d8b..959fc925ca7c 100644
--- a/drivers/usb/dwc3/dwc3-qcom.c
+++ b/drivers/usb/dwc3/dwc3-qcom.c
@@ -901,7 +901,7 @@ static int dwc3_qcom_probe(struct platform_device *pdev)
qcom->mode = usb_get_dr_mode(&qcom->dwc3->dev);
/* enable vbus override for device mode */
- if (qcom->mode == USB_DR_MODE_PERIPHERAL)
+ if (qcom->mode != USB_DR_MODE_HOST)
dwc3_qcom_vbus_override_enable(qcom, true);
/* register extcon to override sw_vbus on Vbus change later */
---
base-commit: 1b929c02afd37871d5afb9d498426f83432e71c2
change-id: 20230123-topic-sm8550-upstream-dwc3-qcom-otg-81795ea148db
Best regards,
--
Neil Armstrong <neil.armstrong@linaro.org>
On 23/01/2023 09:01, Neil Armstrong wrote: > With vbus override enabled when in OTG dr_mode, Host<->Peripheral > switch now works on SM8550, otherwise the DWC3 seems to be stuck > in Host mode only. > > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > --- > drivers/usb/dwc3/dwc3-qcom.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c > index b0a0351d2d8b..959fc925ca7c 100644 > --- a/drivers/usb/dwc3/dwc3-qcom.c > +++ b/drivers/usb/dwc3/dwc3-qcom.c > @@ -901,7 +901,7 @@ static int dwc3_qcom_probe(struct platform_device *pdev) > qcom->mode = usb_get_dr_mode(&qcom->dwc3->dev); > > /* enable vbus override for device mode */ > - if (qcom->mode == USB_DR_MODE_PERIPHERAL) > + if (qcom->mode != USB_DR_MODE_HOST) > dwc3_qcom_vbus_override_enable(qcom, true); > > /* register extcon to override sw_vbus on Vbus change later */ > > --- > base-commit: 1b929c02afd37871d5afb9d498426f83432e71c2 > change-id: 20230123-topic-sm8550-upstream-dwc3-qcom-otg-81795ea148db > > Best regards, This makes logical sense => only over-ride VBUS when !Host Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
On Mon, Jan 23, 2023 at 10:01:25AM +0100, Neil Armstrong wrote: > With vbus override enabled when in OTG dr_mode, Host<->Peripheral > switch now works on SM8550, otherwise the DWC3 seems to be stuck > in Host mode only. > > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > --- > drivers/usb/dwc3/dwc3-qcom.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c > index b0a0351d2d8b..959fc925ca7c 100644 > --- a/drivers/usb/dwc3/dwc3-qcom.c > +++ b/drivers/usb/dwc3/dwc3-qcom.c > @@ -901,7 +901,7 @@ static int dwc3_qcom_probe(struct platform_device *pdev) > qcom->mode = usb_get_dr_mode(&qcom->dwc3->dev); > > /* enable vbus override for device mode */ > - if (qcom->mode == USB_DR_MODE_PERIPHERAL) > + if (qcom->mode != USB_DR_MODE_HOST) > dwc3_qcom_vbus_override_enable(qcom, true); > > /* register extcon to override sw_vbus on Vbus change later */ > > --- What commit does this fix? Should it go to stable kernels? thanks, greg k-h
On 23/01/2023 10:35, Greg Kroah-Hartman wrote: > On Mon, Jan 23, 2023 at 10:01:25AM +0100, Neil Armstrong wrote: >> With vbus override enabled when in OTG dr_mode, Host<->Peripheral >> switch now works on SM8550, otherwise the DWC3 seems to be stuck >> in Host mode only. >> >> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> >> --- >> drivers/usb/dwc3/dwc3-qcom.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c >> index b0a0351d2d8b..959fc925ca7c 100644 >> --- a/drivers/usb/dwc3/dwc3-qcom.c >> +++ b/drivers/usb/dwc3/dwc3-qcom.c >> @@ -901,7 +901,7 @@ static int dwc3_qcom_probe(struct platform_device *pdev) >> qcom->mode = usb_get_dr_mode(&qcom->dwc3->dev); >> >> /* enable vbus override for device mode */ >> - if (qcom->mode == USB_DR_MODE_PERIPHERAL) >> + if (qcom->mode != USB_DR_MODE_HOST) >> dwc3_qcom_vbus_override_enable(qcom, true); >> >> /* register extcon to override sw_vbus on Vbus change later */ >> >> --- > > What commit does this fix? Should it go to stable kernels? a4333c3a6ba9 usb: dwc3: Add Qualcomm DWC3 glue driver Will resend with Fixes tag, Neil > > thanks, > > greg k-h
© 2016 - 2025 Red Hat, Inc.