| From 8c300fe282fa254ea730c92cb0983e2642dc1fff Mon Sep 17 00:00:00 2001 |
| From: Tony Lindgren <tony@atomide.com> |
| Date: Tue, 3 Jan 2017 18:13:48 -0600 |
| Subject: usb: musb: Fix trying to free already-free IRQ 4 |
| |
| From: Tony Lindgren <tony@atomide.com> |
| |
| commit 8c300fe282fa254ea730c92cb0983e2642dc1fff upstream. |
| |
| When unloading omap2430, we can get the following splat: |
| |
| WARNING: CPU: 1 PID: 295 at kernel/irq/manage.c:1478 __free_irq+0xa8/0x2c8 |
| Trying to free already-free IRQ 4 |
| ... |
| [<c01a8b78>] (free_irq) from [<bf0aea84>] |
| (musbhs_dma_controller_destroy+0x28/0xb0 [musb_hdrc]) |
| [<bf0aea84>] (musbhs_dma_controller_destroy [musb_hdrc]) from |
| [<bf09f88c>] (musb_remove+0xf0/0x12c [musb_hdrc]) |
| [<bf09f88c>] (musb_remove [musb_hdrc]) from [<c056a384>] |
| (platform_drv_remove+0x24/0x3c) |
| ... |
| |
| This is because the irq number in use is 260 nowadays, and the dma |
| controller is using u8 instead of int. |
| |
| Fixes: 6995eb68aab7 ("USB: musb: enable low level DMA operation for Blackfin") |
| Signed-off-by: Tony Lindgren <tony@atomide.com> |
| [b-liu@ti.com: added Fixes tag] |
| Signed-off-by: Bin Liu <b-liu@ti.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/usb/musb/musbhsdma.h | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/usb/musb/musbhsdma.h |
| +++ b/drivers/usb/musb/musbhsdma.h |
| @@ -157,5 +157,5 @@ struct musb_dma_controller { |
| void __iomem *base; |
| u8 channel_count; |
| u8 used_channels; |
| - u8 irq; |
| + int irq; |
| }; |