diff options
author | Minas Harutyunyan <[email protected]> | 2020-05-30 11:41:50 +0400 |
---|---|---|
committer | Felipe Balbi <[email protected]> | 2020-07-09 10:13:07 +0300 |
commit | 4fdf228cdf6925af45a2066d403821e0977bfddb (patch) | |
tree | fcbe845321ec1defb0fb0299d1bef5a35c5028e3 | |
parent | 65b7cf48c211ece5e2560a334eb9608e48775a8f (diff) |
usb: dwc2: Fix shutdown callback in platform
To avoid lot of interrupts from dwc2 core, which can be asserted in
specific conditions need to disable interrupts on HW level instead of
disable IRQs on Kernel level, because of IRQ can be shared between
drivers.
Cc: [email protected]
Fixes: a40a00318c7fc ("usb: dwc2: add shutdown callback to platform variant")
Tested-by: Frank Mori Hess <[email protected]>
Reviewed-by: Alan Stern <[email protected]>
Reviewed-by: Doug Anderson <[email protected]>
Reviewed-by: Frank Mori Hess <[email protected]>
Signed-off-by: Minas Harutyunyan <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
-rw-r--r-- | drivers/usb/dwc2/platform.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/dwc2/platform.c b/drivers/usb/dwc2/platform.c index c347d93eae64..cb8ddbd53718 100644 --- a/drivers/usb/dwc2/platform.c +++ b/drivers/usb/dwc2/platform.c @@ -342,7 +342,8 @@ static void dwc2_driver_shutdown(struct platform_device *dev) { struct dwc2_hsotg *hsotg = platform_get_drvdata(dev); - disable_irq(hsotg->irq); + dwc2_disable_global_interrupts(hsotg); + synchronize_irq(hsotg->irq); } /** |