[PATCH v2 1/2] usb: dwc3: gadget: Avoid controller stop in .suspend if !softconnect

Roger Quadros
2023-05-02T16:21:47Z

If softconnect is not set it means the controller has not started,
so no point in stopping it in dwc3_gadget_suspend()

Cc: stable@vger.kernel.org # 5.16
Fixes: 8217f07a5023 ("usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind")
Signed-off-by: Roger Quadros <rogerq@kernel.org>
---
drivers/usb/dwc3/gadget.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index c0ca4d12f95d..b5170374cd18 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -4656,7 +4656,7 @@ int dwc3_gadget_suspend(struct dwc3 *dwc)
{
unsigned long flags;

- if (!dwc->gadget_driver)
+ if (!dwc->gadget_driver || !dwc->softconnect)
return 0;

dwc3_gadget_run_stop(dwc, false);
--
2.34.1