diff options
author | Tony Lindgren <tony@atomide.com> | 2017-01-03 19:13:48 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-01-12 05:39:18 -0500 |
commit | d7550d7d6ae2c769a32a48d7a02c351dc61efe3f (patch) | |
tree | 440e63eaff3ffb3f6ff89b597d46b0a91df40596 | |
parent | 5e3c2920e9f2f21d132df92318c5df2751da0b1f (diff) |
usb: musb: Fix trying to free already-free IRQ 4
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>
-rw-r--r-- | drivers/usb/musb/musbhsdma.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/musb/musbhsdma.h b/drivers/usb/musb/musbhsdma.h index f7b13fd25257..a3dcbd55e436 100644 --- a/drivers/usb/musb/musbhsdma.h +++ b/drivers/usb/musb/musbhsdma.h | |||
@@ -157,5 +157,5 @@ struct musb_dma_controller { | |||
157 | void __iomem *base; | 157 | void __iomem *base; |
158 | u8 channel_count; | 158 | u8 channel_count; |
159 | u8 used_channels; | 159 | u8 used_channels; |
160 | u8 irq; | 160 | int irq; |
161 | }; | 161 | }; |