X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fsh64%2Fmach-cayman%2Firq.c;h=228ce61c3515caf94191fc4542ec9c02e41f6fcf;hb=16c70f8c1b54b61c3b951b6fb220df250fe09b32;hp=4de91077d9398ed040f83be0a2fbf45f4e6389b6;hpb=5fc42a6ed0ec81088c37caadb45898ae6cd0ad2c;p=linux-2.6.git diff --git a/arch/sh64/mach-cayman/irq.c b/arch/sh64/mach-cayman/irq.c index 4de91077d..228ce61c3 100644 --- a/arch/sh64/mach-cayman/irq.c +++ b/arch/sh64/mach-cayman/irq.c @@ -12,7 +12,6 @@ * Copyright (C) 2002 Stuart Menefy */ -#include #include #include #include @@ -45,13 +44,13 @@ static irqreturn_t cayman_interrupt_pci2(int irq, void *dev_id, struct pt_regs * static struct irqaction cayman_action_smsc = { .name = "Cayman SMSC Mux", .handler = cayman_interrupt_smsc, - .flags = SA_INTERRUPT, + .flags = IRQF_DISABLED, }; static struct irqaction cayman_action_pci2 = { .name = "Cayman PCI2 Mux", .handler = cayman_interrupt_pci2, - .flags = SA_INTERRUPT, + .flags = IRQF_DISABLED, }; static void enable_cayman_irq(unsigned int irq) @@ -64,11 +63,11 @@ static void enable_cayman_irq(unsigned int irq) irq -= START_EXT_IRQS; reg = EPLD_MASK_BASE + ((irq / 8) << 2); bit = 1<<(irq % 8); - save_and_cli(flags); + local_irq_save(flags); mask = ctrl_inl(reg); mask |= bit; ctrl_outl(mask, reg); - restore_flags(flags); + local_irq_restore(flags); } void disable_cayman_irq(unsigned int irq) @@ -81,11 +80,11 @@ void disable_cayman_irq(unsigned int irq) irq -= START_EXT_IRQS; reg = EPLD_MASK_BASE + ((irq / 8) << 2); bit = 1<<(irq % 8); - save_and_cli(flags); + local_irq_save(flags); mask = ctrl_inl(reg); mask &= ~bit; ctrl_outl(mask, reg); - restore_flags(flags); + local_irq_restore(flags); } static void ack_cayman_irq(unsigned int irq) @@ -187,7 +186,7 @@ void init_cayman_irq(void) } for (i=0; i