Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e1f1af43 authored by Vamsi Krishna Samavedam's avatar Vamsi Krishna Samavedam Committed by Mayank Rana
Browse files

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: default avatarVamsi Krishna Samavedam <vskrishn@codeaurora.org>
Signed-off-by: default avatarMayank Rana <mrana@codeaurora.org>
parent 934d9cd2
Loading
Loading
Loading
Loading
+0 −6
Original line number Original line Diff line number Diff line
@@ -2078,16 +2078,10 @@ static int dwc3_gadget_stop(struct usb_gadget *g)
	struct dwc3	*dwc = gadget_to_dwc(g);
	struct dwc3	*dwc = gadget_to_dwc(g);
	unsigned long	flags;
	unsigned long	flags;


	pm_runtime_get_sync(dwc->dev);

	spin_lock_irqsave(&dwc->lock, flags);
	spin_lock_irqsave(&dwc->lock, flags);
	__dwc3_gadget_stop(dwc);
	dwc->gadget_driver = NULL;
	dwc->gadget_driver = NULL;
	spin_unlock_irqrestore(&dwc->lock, flags);
	spin_unlock_irqrestore(&dwc->lock, flags);


	pm_runtime_mark_last_busy(dwc->dev);
	pm_runtime_put_autosuspend(dwc->dev);

	return 0;
	return 0;
}
}