dwc3: gadget: Remove disabling events and ep0 from gadget stop
Controller driver explicitly puts the controller in low power mode when cable disconnected. However, due to config-fs and ADB design which unbinds composition on every cable disconnect results in detaching/stopping gadget driver on every cable disconnect. Gadget stop will explicitly brings the controller out of low power mode to disable events and ep0 which is not necessary as controller is already in low power mode. These operations are not required for composition switch as well because gadget pull-up call back will take care of that. Hence, Remove disabling events and ep0 from stop gadget callback. Change-Id: If2b3e241076a4e0eeb87eeb4361398313fca6962 Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
This commit is contained in:
parent
9a5e4de102
commit
5c57c9e196
1 changed files with 0 additions and 13 deletions
|
@ -2130,24 +2130,11 @@ static int dwc3_gadget_stop(struct usb_gadget *g)
|
|||
struct dwc3 *dwc = gadget_to_dwc(g);
|
||||
unsigned long flags;
|
||||
|
||||
pm_runtime_get_sync(dwc->dev);
|
||||
dbg_event(0xFF, "Stop gsync",
|
||||
atomic_read(&dwc->dev->power.usage_count));
|
||||
dwc3_gadget_disable_irq(dwc);
|
||||
|
||||
spin_lock_irqsave(&dwc->lock, flags);
|
||||
|
||||
__dwc3_gadget_ep_disable(dwc->eps[0]);
|
||||
__dwc3_gadget_ep_disable(dwc->eps[1]);
|
||||
|
||||
dwc->gadget_driver = NULL;
|
||||
|
||||
spin_unlock_irqrestore(&dwc->lock, flags);
|
||||
|
||||
pm_runtime_mark_last_busy(dwc->dev);
|
||||
pm_runtime_put_autosuspend(dwc->dev);
|
||||
dbg_event(0xFF, "Auto_susgsync", 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue