diff options
author | David S. Miller <davem@davemloft.net> | 2006-06-20 04:20:00 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-06-20 04:20:00 -0400 |
commit | fd0504c3217d6d1bc8f33f53fb536299cae8feda (patch) | |
tree | 4379f5376358d1f54fc183f458614f289ed6d326 /arch/sparc64/kernel/traps.c | |
parent | 3185d4d2873a46ca1620d784013f285522091aa0 (diff) |
[SPARC64]: Send all device interrupts via one PIL.
This is the first in a series of cleanups that will hopefully
allow a seamless attempt at using the generic IRQ handling
infrastructure in the Linux kernel.
Define PIL_DEVICE_IRQ and vector all device interrupts through
there.
Get rid of the ugly pil0_dummy_{bucket,desc}, instead vector
the timer interrupt directly to a specific handler since the
timer interrupt is the only event that will be signaled on
PIL 14.
The irq_worklist is now in the per-cpu trap_block[].
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/traps.c')
-rw-r--r-- | arch/sparc64/kernel/traps.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c index 563db528e031..5059cbd4feee 100644 --- a/arch/sparc64/kernel/traps.c +++ b/arch/sparc64/kernel/traps.c | |||
@@ -2544,7 +2544,9 @@ void __init trap_init(void) | |||
2544 | (TRAP_PER_CPU_TSB_HUGE != | 2544 | (TRAP_PER_CPU_TSB_HUGE != |
2545 | offsetof(struct trap_per_cpu, tsb_huge)) || | 2545 | offsetof(struct trap_per_cpu, tsb_huge)) || |
2546 | (TRAP_PER_CPU_TSB_HUGE_TEMP != | 2546 | (TRAP_PER_CPU_TSB_HUGE_TEMP != |
2547 | offsetof(struct trap_per_cpu, tsb_huge_temp))) | 2547 | offsetof(struct trap_per_cpu, tsb_huge_temp)) || |
2548 | (TRAP_PER_CPU_IRQ_WORKLIST != | ||
2549 | offsetof(struct trap_per_cpu, irq_worklist))) | ||
2548 | trap_per_cpu_offsets_are_bolixed_dave(); | 2550 | trap_per_cpu_offsets_are_bolixed_dave(); |
2549 | 2551 | ||
2550 | if ((TSB_CONFIG_TSB != | 2552 | if ((TSB_CONFIG_TSB != |