summaryrefslogtreecommitdiffstats
path: root/drivers/usb/dwc2
diff options
context:
space:
mode:
authorGregory Herrero2015-09-22 15:16:48 +0200
committerFelipe Balbi2015-10-01 19:40:17 +0200
commit5bbf6ce0a964c77d9522cf377fd7a4c4af030378 (patch)
tree935982cb570db26a681c0ab518d7d6228a6123d0 /drivers/usb/dwc2
parentusb: dwc2: host: add disconnect interrupt to host only interrupts (diff)
downloadkernel-qcow2-linux-5bbf6ce0a964c77d9522cf377fd7a4c4af030378.tar.gz
kernel-qcow2-linux-5bbf6ce0a964c77d9522cf377fd7a4c4af030378.tar.xz
kernel-qcow2-linux-5bbf6ce0a964c77d9522cf377fd7a4c4af030378.zip
usb: dwc2: host: disable interrupt during stop
Disable host interrupts before synchronising dwc2 irq. So that interrupts are not generated once controller is stopped. Signed-off-by: Gregory Herrero <gregory.herrero@intel.com> Signed-off-by: Mian Yousaf Kaukab <yousaf.kaukab@intel.com> Tested-by: Robert Baldyga <r.baldyga@samsung.com> Tested-by: Dinh Nguyen <dinguyen@opensource.altera.com> Tested-by: John Youn <johnyoun@synopsys.com> Acked-by: John Youn <johnyoun@synopsys.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/dwc2')
-rw-r--r--drivers/usb/dwc2/hcd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/dwc2/hcd.c b/drivers/usb/dwc2/hcd.c
index 257f9579705d..de9d2e2bbf48 100644
--- a/drivers/usb/dwc2/hcd.c
+++ b/drivers/usb/dwc2/hcd.c
@@ -2350,6 +2350,9 @@ static void _dwc2_hcd_stop(struct usb_hcd *hcd)
struct dwc2_hsotg *hsotg = dwc2_hcd_to_hsotg(hcd);
unsigned long flags;
+ /* Turn off all host-specific interrupts */
+ dwc2_disable_host_interrupts(hsotg);
+
/* Wait for interrupt processing to finish */
synchronize_irq(hcd->irq);