diff options
Diffstat (limited to 'kernel/irq/manage.c')
-rw-r--r-- | kernel/irq/manage.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 5202e4c4a5b6..5fde8177eedf 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -255,6 +255,10 @@ void free_irq(unsigned int irq, void *dev_id) | |||
255 | 255 | ||
256 | /* Found it - now remove it from the list of entries */ | 256 | /* Found it - now remove it from the list of entries */ |
257 | *pp = action->next; | 257 | *pp = action->next; |
258 | |||
259 | if (desc->handler->release) | ||
260 | desc->handler->release(irq, dev_id); | ||
261 | |||
258 | if (!desc->action) { | 262 | if (!desc->action) { |
259 | desc->status |= IRQ_DISABLED; | 263 | desc->status |= IRQ_DISABLED; |
260 | if (desc->handler->shutdown) | 264 | if (desc->handler->shutdown) |