diff options
author | Jeff Garzik <jgarzik@pretzel.yyz.us> | 2005-06-22 21:50:57 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-06-22 21:50:57 -0400 |
commit | a5324343955997d1439f26518ddac567cd5d134b (patch) | |
tree | f43558389c41e3a0f076c4ee55d77c4aa1561779 /kernel/irq | |
parent | 8199d3a79c224bbe5943fa08684e1f93a17881b0 (diff) | |
parent | a4936044001694f033fe4ea94d6034d51a6b465c (diff) |
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'kernel/irq')
-rw-r--r-- | kernel/irq/handle.c | 3 | ||||
-rw-r--r-- | kernel/irq/manage.c | 8 |
2 files changed, 9 insertions, 2 deletions
diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c index 2fb0e46e11f3..436c7d93c00a 100644 --- a/kernel/irq/handle.c +++ b/kernel/irq/handle.c | |||
@@ -30,6 +30,7 @@ | |||
30 | */ | 30 | */ |
31 | irq_desc_t irq_desc[NR_IRQS] __cacheline_aligned = { | 31 | irq_desc_t irq_desc[NR_IRQS] __cacheline_aligned = { |
32 | [0 ... NR_IRQS-1] = { | 32 | [0 ... NR_IRQS-1] = { |
33 | .status = IRQ_DISABLED, | ||
33 | .handler = &no_irq_type, | 34 | .handler = &no_irq_type, |
34 | .lock = SPIN_LOCK_UNLOCKED | 35 | .lock = SPIN_LOCK_UNLOCKED |
35 | } | 36 | } |
@@ -118,8 +119,6 @@ fastcall unsigned int __do_IRQ(unsigned int irq, struct pt_regs *regs) | |||
118 | */ | 119 | */ |
119 | desc->handler->ack(irq); | 120 | desc->handler->ack(irq); |
120 | action_ret = handle_IRQ_event(irq, regs, desc->action); | 121 | action_ret = handle_IRQ_event(irq, regs, desc->action); |
121 | if (!noirqdebug) | ||
122 | note_interrupt(irq, desc, action_ret); | ||
123 | desc->handler->end(irq); | 122 | desc->handler->end(irq); |
124 | return 1; | 123 | return 1; |
125 | } | 124 | } |
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 5202e4c4a5b6..ac6700985705 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -6,6 +6,7 @@ | |||
6 | * This file contains driver APIs to the irq subsystem. | 6 | * This file contains driver APIs to the irq subsystem. |
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <linux/config.h> | ||
9 | #include <linux/irq.h> | 10 | #include <linux/irq.h> |
10 | #include <linux/module.h> | 11 | #include <linux/module.h> |
11 | #include <linux/random.h> | 12 | #include <linux/random.h> |
@@ -255,6 +256,13 @@ void free_irq(unsigned int irq, void *dev_id) | |||
255 | 256 | ||
256 | /* Found it - now remove it from the list of entries */ | 257 | /* Found it - now remove it from the list of entries */ |
257 | *pp = action->next; | 258 | *pp = action->next; |
259 | |||
260 | /* Currently used only by UML, might disappear one day.*/ | ||
261 | #ifdef CONFIG_IRQ_RELEASE_METHOD | ||
262 | if (desc->handler->release) | ||
263 | desc->handler->release(irq, dev_id); | ||
264 | #endif | ||
265 | |||
258 | if (!desc->action) { | 266 | if (!desc->action) { |
259 | desc->status |= IRQ_DISABLED; | 267 | desc->status |= IRQ_DISABLED; |
260 | if (desc->handler->shutdown) | 268 | if (desc->handler->shutdown) |