Commit 5a1da544 authored by Peter Chen's avatar Peter Chen Committed by Felipe Balbi

usb: gadget: core: do not try to disconnect gadget if it is not connected

Current UDC core connects gadget during the loading gadget flow
(udc_bind_to_driver->usb_udc_connect_control), but for
platforms which do not connect gadget if the VBUS is not there,
they call usb_gadget_disconnect, but the gadget is not connected
at this time, notify disconnecton for the gadget driver is meaningless
at this situation.
Signed-off-by: default avatarPeter Chen <peter.chen@nxp.com>
Signed-off-by: default avatarFelipe Balbi <balbi@kernel.org>
parent 8266b08e
...@@ -715,6 +715,9 @@ int usb_gadget_disconnect(struct usb_gadget *gadget) ...@@ -715,6 +715,9 @@ int usb_gadget_disconnect(struct usb_gadget *gadget)
goto out; goto out;
} }
if (!gadget->connected)
goto out;
if (gadget->deactivated) { if (gadget->deactivated) {
/* /*
* If gadget is deactivated we only save new state. * If gadget is deactivated we only save new state.
......
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