diff options
author | Kyle McMartin | 2010-10-14 22:31:11 -0400 |
---|---|---|
committer | Matt Turner | 2011-01-17 05:42:11 +0100 |
commit | d5ccde0a64c3dbe954a8a13a6ba9fb3b6d7c6225 (patch) | |
tree | 00a7c1a1fc1fa42fdc88bdab8a30e40e3dcaa775 /arch/alpha/kernel/sys_wildfire.c | |
parent | e78bf5e6cbe837daa6ab628a5f679548742994d3 (diff) |
alpha: use set_irq_chip and push down __do_IRQ to the machine types
Also kill superfluous IRQ_DISABLED initialization, since that's the
default state of the irq_desc[i].status field.
Tested-by: Michael Cree <mcree@orcon.net.nz>
Signed-off-by: Kyle McMartin <kyle@redhat.com>
Signed-off-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'arch/alpha/kernel/sys_wildfire.c')
-rw-r--r-- | arch/alpha/kernel/sys_wildfire.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/arch/alpha/kernel/sys_wildfire.c b/arch/alpha/kernel/sys_wildfire.c index 62fd972e18ef..ea86103f53c3 100644 --- a/arch/alpha/kernel/sys_wildfire.c +++ b/arch/alpha/kernel/sys_wildfire.c @@ -198,15 +198,17 @@ wildfire_init_irq_per_pca(int qbbno, int pcano) for (i = 0; i < 16; ++i) { if (i == 2) continue; - irq_desc[i+irq_bias].status = IRQ_DISABLED | IRQ_LEVEL; - irq_desc[i+irq_bias].chip = &wildfire_irq_type; + irq_desc[i+irq_bias].status |= IRQ_LEVEL; + set_irq_chip_and_handler(i+irq_bias, &wildfire_irq_type, + alpha_do_IRQ); } - irq_desc[36+irq_bias].status = IRQ_DISABLED | IRQ_LEVEL; - irq_desc[36+irq_bias].chip = &wildfire_irq_type; + irq_desc[36+irq_bias].status |= IRQ_LEVEL; + set_irq_chip_and_handler(36+irq_bias, &wildfire_irq_type, alpha_do_IRQ); for (i = 40; i < 64; ++i) { - irq_desc[i+irq_bias].status = IRQ_DISABLED | IRQ_LEVEL; - irq_desc[i+irq_bias].chip = &wildfire_irq_type; + irq_desc[i+irq_bias].status |= IRQ_LEVEL; + set_irq_chip_and_handler(i+irq_bias, &wildfire_irq_type, + alpha_do_IRQ); } setup_irq(32+irq_bias, &isa_enable); |