On 24.01.2023 09:31, 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. > > Fixes: a4333c3a6ba9 ("usb: dwc3: Add Qualcomm DWC3 glue driver") > Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> > Signed-off-by: Neil Armstrong <neil.armstrong@xxxxxxxxxx> > --- Required for SM6115P Lenovo Tab P11 to switch to peripheral with otg dr_mode as well! Tested-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> Konrad > Changes in v2: > - Added Bryan's reviewed-by > - Added Fixes tag > - Link to v1: https://lore.kernel.org/r/20230123-topic-sm8550-upstream-dwc3-qcom-otg-v1-1-e287a418aa5f@xxxxxxxxxx > --- > 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,