summaryrefslogtreecommitdiffstats
path: root/arch/alpha/kernel/irq_alpha.c
diff options
context:
space:
mode:
authorKyle McMartin <kyle@redhat.com>2010-10-15 04:31:25 +0200
committerMatt Turner <mattst88@monolith.freenet-rz.de>2011-01-17 05:42:12 +0100
commita891b393dd7f6ed84ecee98c0eac4a808ff2cbbc (patch)
treeab4ee31ef54691f492e77dfc2d937f62c055cb1a /arch/alpha/kernel/irq_alpha.c
parentalpha: use set_irq_chip and push down __do_IRQ to the machine types (diff)
downloadlinux-a891b393dd7f6ed84ecee98c0eac4a808ff2cbbc.tar.xz
linux-a891b393dd7f6ed84ecee98c0eac4a808ff2cbbc.zip
alpha: irq clean up
Stop touching irq_desc[irq] directly, instead use accessor functions provided. Use irq_has_action instead of directly testing the irq_desc. 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/irq_alpha.c')
-rw-r--r--arch/alpha/kernel/irq_alpha.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/alpha/kernel/irq_alpha.c b/arch/alpha/kernel/irq_alpha.c
index 4c8bb374eb0a..1b2c8bb81460 100644
--- a/arch/alpha/kernel/irq_alpha.c
+++ b/arch/alpha/kernel/irq_alpha.c
@@ -241,9 +241,13 @@ static struct irq_chip rtc_irq_type = {
void __init
init_rtc_irq(void)
{
- irq_desc[RTC_IRQ].status = IRQ_DISABLED;
- irq_desc[RTC_IRQ].chip = &rtc_irq_type;
- setup_irq(RTC_IRQ, &timer_irqaction);
+ struct irq_desc *desc = irq_to_desc(RTC_IRQ);
+
+ if (desc) {
+ desc->status |= IRQ_DISABLED;
+ set_irq_chip(RTC_IRQ, &rtc_irq_type);
+ setup_irq(RTC_IRQ, &timer_irqaction);
+ }
}
/* Dummy irqactions. */