diff --git a/[refs] b/[refs]
index a87959633930..b9fbe5c494ee 100644
--- a/[refs]
+++ b/[refs]
@@ -1,2 +1,2 @@
---
-refs/heads/master: 6ce6c7faf2d0fede5e1530b0f731a90f138fd69e
+refs/heads/master: 8ef1a14379e105c1419d21e96ffac53202bc0501
diff --git a/trunk/Documentation/DocBook/videobook.tmpl b/trunk/Documentation/DocBook/videobook.tmpl
index b629da33951d..fdff984a5161 100644
--- a/trunk/Documentation/DocBook/videobook.tmpl
+++ b/trunk/Documentation/DocBook/videobook.tmpl
@@ -976,7 +976,7 @@ static int camera_close(struct video_device *dev)
Interrupt Handling
Our example handler is for an ISA bus device. If it was PCI you would be
- able to share the interrupt and would have set IRQF_SHARED to indicate a
+ able to share the interrupt and would have set SA_SHIRQ to indicate a
shared IRQ. We pass the device pointer as the interrupt routine argument. We
don't need to since we only support one card but doing this will make it
easier to upgrade the driver for multiple devices in the future.
diff --git a/trunk/Documentation/feature-removal-schedule.txt b/trunk/Documentation/feature-removal-schedule.txt
index 99f219a01e0e..1cbbb8e28999 100644
--- a/trunk/Documentation/feature-removal-schedule.txt
+++ b/trunk/Documentation/feature-removal-schedule.txt
@@ -257,12 +257,3 @@ Why: Code does no longer build since at least 2.6.0, apparently there is
Who: Ralf Baechle
---------------------------
-
-What: Interrupt only SA_* flags
-When: Januar 2007
-Why: The interrupt related SA_* flags are replaced by IRQF_* to move them
- out of the signal namespace.
-
-Who: Thomas Gleixner
-
----------------------------
diff --git a/trunk/Documentation/pci.txt b/trunk/Documentation/pci.txt
index 2b395e478961..3242e5c1ee9c 100644
--- a/trunk/Documentation/pci.txt
+++ b/trunk/Documentation/pci.txt
@@ -225,7 +225,7 @@ Generic flavors of pci_request_region() are request_mem_region()
Use these for address resources that are not described by "normal" PCI
interfaces (e.g. BAR).
- All interrupt handlers should be registered with IRQF_SHARED and use the devid
+ All interrupt handlers should be registered with SA_SHIRQ and use the devid
to map IRQs to devices (remember that all PCI interrupts are shared).
diff --git a/trunk/Documentation/scsi/tmscsim.txt b/trunk/Documentation/scsi/tmscsim.txt
index df7a02bfb5bf..e165229adf50 100644
--- a/trunk/Documentation/scsi/tmscsim.txt
+++ b/trunk/Documentation/scsi/tmscsim.txt
@@ -109,7 +109,7 @@ than the 33.33 MHz being in the PCI spec.
If you want to share the IRQ with another device and the driver refuses to
do so, you might succeed with changing the DC390_IRQ type in tmscsim.c to
-IRQF_SHARED | IRQF_DISABLED.
+SA_SHIRQ | SA_INTERRUPT.
3.Features
diff --git a/trunk/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl b/trunk/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
index 69866d5997a4..bb18115d5170 100644
--- a/trunk/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
+++ b/trunk/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
@@ -1149,7 +1149,7 @@
}
chip->port = pci_resource_start(pci, 0);
if (request_irq(pci->irq, snd_mychip_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "My Chip", chip)) {
+ SA_INTERRUPT|SA_SHIRQ, "My Chip", chip)) {
printk(KERN_ERR "cannot grab irq %d\n", pci->irq);
snd_mychip_free(chip);
return -EBUSY;
@@ -1323,7 +1323,7 @@
irq, snd_mychip_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "My Chip", chip)) {
+ SA_INTERRUPT|SA_SHIRQ, "My Chip", chip)) {
printk(KERN_ERR "cannot grab irq %d\n", pci->irq);
snd_mychip_free(chip);
return -EBUSY;
@@ -1342,7 +1342,7 @@
On the PCI bus, the interrupts can be shared. Thus,
- IRQF_SHARED is given as the interrupt flag of
+ SA_SHIRQ is given as the interrupt flag of
request_irq().
diff --git a/trunk/arch/alpha/kernel/irq.c b/trunk/arch/alpha/kernel/irq.c
index 729c475d2269..bd193ffd6fe0 100644
--- a/trunk/arch/alpha/kernel/irq.c
+++ b/trunk/arch/alpha/kernel/irq.c
@@ -94,12 +94,12 @@ show_interrupts(struct seq_file *p, void *v)
#endif
seq_printf(p, " %14s", irq_desc[irq].chip->typename);
seq_printf(p, " %c%s",
- (action->flags & IRQF_DISABLED)?'+':' ',
+ (action->flags & SA_INTERRUPT)?'+':' ',
action->name);
for (action=action->next; action; action = action->next) {
seq_printf(p, ", %c%s",
- (action->flags & IRQF_DISABLED)?'+':' ',
+ (action->flags & SA_INTERRUPT)?'+':' ',
action->name);
}
diff --git a/trunk/arch/alpha/kernel/irq_alpha.c b/trunk/arch/alpha/kernel/irq_alpha.c
index ddf5cf8dcb0b..ffa4ac543cf2 100644
--- a/trunk/arch/alpha/kernel/irq_alpha.c
+++ b/trunk/arch/alpha/kernel/irq_alpha.c
@@ -214,7 +214,7 @@ static unsigned int rtc_startup(unsigned int irq) { return 0; }
struct irqaction timer_irqaction = {
.handler = timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "timer",
};
diff --git a/trunk/arch/alpha/kernel/sys_jensen.c b/trunk/arch/alpha/kernel/sys_jensen.c
index 4ac2b328b8de..0148e095638f 100644
--- a/trunk/arch/alpha/kernel/sys_jensen.c
+++ b/trunk/arch/alpha/kernel/sys_jensen.c
@@ -74,7 +74,7 @@ jensen_local_startup(unsigned int irq)
* the IPL from being dropped during handler processing.
*/
if (irq_desc[irq].action)
- irq_desc[irq].action->flags |= IRQF_DISABLED;
+ irq_desc[irq].action->flags |= SA_INTERRUPT;
return 0;
}
diff --git a/trunk/arch/alpha/kernel/sys_titan.c b/trunk/arch/alpha/kernel/sys_titan.c
index 302aab38d95f..a8bfc8c16a7d 100644
--- a/trunk/arch/alpha/kernel/sys_titan.c
+++ b/trunk/arch/alpha/kernel/sys_titan.c
@@ -279,15 +279,15 @@ titan_late_init(void)
* all reported to the kernel as machine checks, so the handler
* is a nop so it can be called to count the individual events.
*/
- request_irq(63+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(63+16, titan_intr_nop, SA_INTERRUPT,
"CChip Error", NULL);
- request_irq(62+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(62+16, titan_intr_nop, SA_INTERRUPT,
"PChip 0 H_Error", NULL);
- request_irq(61+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(61+16, titan_intr_nop, SA_INTERRUPT,
"PChip 1 H_Error", NULL);
- request_irq(60+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(60+16, titan_intr_nop, SA_INTERRUPT,
"PChip 0 C_Error", NULL);
- request_irq(59+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(59+16, titan_intr_nop, SA_INTERRUPT,
"PChip 1 C_Error", NULL);
/*
@@ -348,9 +348,9 @@ privateer_init_pci(void)
* Hook a couple of extra err interrupts that the
* common titan code won't.
*/
- request_irq(53+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(53+16, titan_intr_nop, SA_INTERRUPT,
"NMI", NULL);
- request_irq(50+16, titan_intr_nop, IRQF_DISABLED,
+ request_irq(50+16, titan_intr_nop, SA_INTERRUPT,
"Temperature Warning", NULL);
/*
diff --git a/trunk/arch/arm26/kernel/irq.c b/trunk/arch/arm26/kernel/irq.c
index d87d68b77d66..e08ba2955ec7 100644
--- a/trunk/arch/arm26/kernel/irq.c
+++ b/trunk/arch/arm26/kernel/irq.c
@@ -190,7 +190,7 @@ __do_irq(unsigned int irq, struct irqaction *action, struct pt_regs *regs)
int ret;
spin_unlock(&irq_controller_lock);
- if (!(action->flags & IRQF_DISABLED))
+ if (!(action->flags & SA_INTERRUPT))
local_irq_enable();
status = 0;
@@ -201,7 +201,7 @@ __do_irq(unsigned int irq, struct irqaction *action, struct pt_regs *regs)
action = action->next;
} while (action);
- if (status & IRQF_SAMPLE_RANDOM)
+ if (status & SA_SAMPLE_RANDOM)
add_interrupt_randomness(irq);
spin_lock_irq(&irq_controller_lock);
@@ -451,7 +451,7 @@ int setup_irq(unsigned int irq, struct irqaction *new)
* so we have to be careful not to interfere with a
* running system.
*/
- if (new->flags & IRQF_SAMPLE_RANDOM) {
+ if (new->flags & SA_SAMPLE_RANDOM) {
/*
* This function might sleep, we want to call it first,
* outside of the atomic block.
@@ -471,7 +471,7 @@ int setup_irq(unsigned int irq, struct irqaction *new)
p = &desc->action;
if ((old = *p) != NULL) {
/* Can't share interrupts unless both agree to */
- if (!(old->flags & new->flags & IRQF_SHARED)) {
+ if (!(old->flags & new->flags & SA_SHIRQ)) {
spin_unlock_irqrestore(&irq_controller_lock, flags);
return -EBUSY;
}
@@ -526,11 +526,11 @@ int setup_irq(unsigned int irq, struct irqaction *new)
*
* Flags:
*
- * IRQF_SHARED Interrupt is shared
+ * SA_SHIRQ Interrupt is shared
*
- * IRQF_DISABLED Disable local interrupts while processing
+ * SA_INTERRUPT Disable local interrupts while processing
*
- * IRQF_SAMPLE_RANDOM The interrupt can be used for entropy
+ * SA_SAMPLE_RANDOM The interrupt can be used for entropy
*
*/
@@ -542,7 +542,7 @@ int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_
struct irqaction *action;
if (irq >= NR_IRQS || !irq_desc[irq].valid || !handler ||
- (irq_flags & IRQF_SHARED && !dev_id))
+ (irq_flags & SA_SHIRQ && !dev_id))
return -EINVAL;
action = (struct irqaction *)kmalloc(sizeof(struct irqaction), GFP_KERNEL);
diff --git a/trunk/arch/arm26/kernel/time.c b/trunk/arch/arm26/kernel/time.c
index db63d75d0715..718de9bed950 100644
--- a/trunk/arch/arm26/kernel/time.c
+++ b/trunk/arch/arm26/kernel/time.c
@@ -205,7 +205,7 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction timer_irq = {
.name = "timer",
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.handler = timer_interrupt,
};
diff --git a/trunk/arch/cris/arch-v10/drivers/gpio.c b/trunk/arch/cris/arch-v10/drivers/gpio.c
index 48fd801792d1..25df4ada951a 100644
--- a/trunk/arch/cris/arch-v10/drivers/gpio.c
+++ b/trunk/arch/cris/arch-v10/drivers/gpio.c
@@ -937,11 +937,11 @@ gpio_init(void)
* in some tests.
*/
if (request_irq(TIMER0_IRQ_NBR, gpio_poll_timer_interrupt,
- IRQF_SHARED | IRQF_DISABLED,"gpio poll", NULL)) {
+ SA_SHIRQ | SA_INTERRUPT,"gpio poll", NULL)) {
printk(KERN_CRIT "err: timer0 irq for gpio\n");
}
if (request_irq(PA_IRQ_NBR, gpio_pa_interrupt,
- IRQF_SHARED | IRQF_DISABLED,"gpio PA", NULL)) {
+ SA_SHIRQ | SA_INTERRUPT,"gpio PA", NULL)) {
printk(KERN_CRIT "err: PA irq for gpio\n");
}
diff --git a/trunk/arch/cris/arch-v10/kernel/time.c b/trunk/arch/cris/arch-v10/kernel/time.c
index 9c22b76e129a..fe65cb89f54c 100644
--- a/trunk/arch/cris/arch-v10/kernel/time.c
+++ b/trunk/arch/cris/arch-v10/kernel/time.c
@@ -251,11 +251,11 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
return IRQ_HANDLED;
}
-/* timer is IRQF_SHARED so drivers can add stuff to the timer irq chain
- * it needs to be IRQF_DISABLED to make the jiffies update work properly
+/* timer is SA_SHIRQ so drivers can add stuff to the timer irq chain
+ * it needs to be SA_INTERRUPT to make the jiffies update work properly
*/
-static struct irqaction irq2 = { timer_interrupt, IRQF_SHARED | IRQF_DISABLED,
+static struct irqaction irq2 = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
CPU_MASK_NONE, "timer", NULL, NULL};
void __init
diff --git a/trunk/arch/cris/arch-v32/drivers/gpio.c b/trunk/arch/cris/arch-v32/drivers/gpio.c
index 00e9167de530..113bdff4fd3c 100644
--- a/trunk/arch/cris/arch-v32/drivers/gpio.c
+++ b/trunk/arch/cris/arch-v32/drivers/gpio.c
@@ -744,11 +744,11 @@ gpio_init(void)
* in some tests.
*/
if (request_irq(TIMER_INTR_VECT, gpio_poll_timer_interrupt,
- IRQF_SHARED | IRQF_DISABLED,"gpio poll", &alarmlist)) {
+ SA_SHIRQ | SA_INTERRUPT,"gpio poll", &alarmlist)) {
printk("err: timer0 irq for gpio\n");
}
if (request_irq(GEN_IO_INTR_VECT, gpio_pa_interrupt,
- IRQF_SHARED | IRQF_DISABLED,"gpio PA", &alarmlist)) {
+ SA_SHIRQ | SA_INTERRUPT,"gpio PA", &alarmlist)) {
printk("err: PA irq for gpio\n");
}
/* enable the gio and timer irq in global config */
diff --git a/trunk/arch/cris/arch-v32/kernel/arbiter.c b/trunk/arch/cris/arch-v32/kernel/arbiter.c
index 420a5312ed03..82d44c9afc1e 100644
--- a/trunk/arch/cris/arch-v32/kernel/arbiter.c
+++ b/trunk/arch/cris/arch-v32/kernel/arbiter.c
@@ -119,7 +119,7 @@ static void crisv32_arbiter_init(void)
crisv32_arbiter_config(EXT_REGION);
crisv32_arbiter_config(INT_REGION);
- if (request_irq(MEMARB_INTR_VECT, crisv32_arbiter_irq, IRQF_DISABLED,
+ if (request_irq(MEMARB_INTR_VECT, crisv32_arbiter_irq, SA_INTERRUPT,
"arbiter", NULL))
printk(KERN_ERR "Couldn't allocate arbiter IRQ\n");
diff --git a/trunk/arch/cris/arch-v32/kernel/fasttimer.c b/trunk/arch/cris/arch-v32/kernel/fasttimer.c
index 5daeb6f7f3b7..caaa86bd5e87 100644
--- a/trunk/arch/cris/arch-v32/kernel/fasttimer.c
+++ b/trunk/arch/cris/arch-v32/kernel/fasttimer.c
@@ -981,7 +981,7 @@ void fast_timer_init(void)
proc_register_dynamic(&proc_root, &fasttimer_proc_entry);
#endif
#endif /* PROC_FS */
- if(request_irq(TIMER_INTR_VECT, timer_trig_interrupt, IRQF_DISABLED,
+ if(request_irq(TIMER_INTR_VECT, timer_trig_interrupt, SA_INTERRUPT,
"fast timer int", NULL))
{
printk("err: timer1 irq\n");
diff --git a/trunk/arch/cris/arch-v32/kernel/irq.c b/trunk/arch/cris/arch-v32/kernel/irq.c
index cc361bf578ae..e2d2b3fdb5b1 100644
--- a/trunk/arch/cris/arch-v32/kernel/irq.c
+++ b/trunk/arch/cris/arch-v32/kernel/irq.c
@@ -268,7 +268,7 @@ void
crisv32_do_IRQ(int irq, int block, struct pt_regs* regs)
{
/* Interrupts that may not be moved to another CPU and
- * are IRQF_DISABLED may skip blocking. This is currently
+ * are SA_INTERRUPT may skip blocking. This is currently
* only valid for the timer IRQ and the IPI and is used
* for the timer interrupt to avoid watchdog starvation.
*/
diff --git a/trunk/arch/cris/arch-v32/kernel/smp.c b/trunk/arch/cris/arch-v32/kernel/smp.c
index 464ecaec3bc0..da40d19a151e 100644
--- a/trunk/arch/cris/arch-v32/kernel/smp.c
+++ b/trunk/arch/cris/arch-v32/kernel/smp.c
@@ -62,7 +62,7 @@ static unsigned long irq_regs[NR_CPUS] =
static irqreturn_t crisv32_ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs);
static int send_ipi(int vector, int wait, cpumask_t cpu_mask);
-static struct irqaction irq_ipi = { crisv32_ipi_interrupt, IRQF_DISABLED,
+static struct irqaction irq_ipi = { crisv32_ipi_interrupt, SA_INTERRUPT,
CPU_MASK_NONE, "ipi", NULL, NULL};
extern void cris_mmu_init(void);
diff --git a/trunk/arch/cris/arch-v32/kernel/time.c b/trunk/arch/cris/arch-v32/kernel/time.c
index 50f3f93293d6..4bac1d6c37fb 100644
--- a/trunk/arch/cris/arch-v32/kernel/time.c
+++ b/trunk/arch/cris/arch-v32/kernel/time.c
@@ -241,16 +241,12 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
return IRQ_HANDLED;
}
-/* timer is IRQF_SHARED so drivers can add stuff to the timer irq chain
- * it needs to be IRQF_DISABLED to make the jiffies update work properly
+/* timer is SA_SHIRQ so drivers can add stuff to the timer irq chain
+ * it needs to be SA_INTERRUPT to make the jiffies update work properly
*/
-static struct irqaction irq_timer = {
- .mask = timer_interrupt,
- .flags = IRQF_SHARED | IRQF_DISABLED,
- .mask = CPU_MASK_NONE,
- .name = "timer"
-};
+static struct irqaction irq_timer = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
+ CPU_MASK_NONE, "timer", NULL, NULL};
void __init
cris_timer_init(void)
diff --git a/trunk/arch/cris/kernel/irq.c b/trunk/arch/cris/kernel/irq.c
index 903ea62c6e21..1f9099627a72 100644
--- a/trunk/arch/cris/kernel/irq.c
+++ b/trunk/arch/cris/kernel/irq.c
@@ -85,7 +85,7 @@ int show_interrupts(struct seq_file *p, void *v)
/* called by the assembler IRQ entry functions defined in irq.h
* to dispatch the interrupts to registred handlers
* interrupts are disabled upon entry - depending on if the
- * interrupt was registred with IRQF_DISABLED or not, interrupts
+ * interrupt was registred with SA_INTERRUPT or not, interrupts
* are re-enabled or not.
*/
diff --git a/trunk/arch/frv/kernel/irq-routing.c b/trunk/arch/frv/kernel/irq-routing.c
index 53886adf47de..b90b70a761d1 100644
--- a/trunk/arch/frv/kernel/irq-routing.c
+++ b/trunk/arch/frv/kernel/irq-routing.c
@@ -81,7 +81,7 @@ void distribute_irqs(struct irq_group *group, unsigned long irqmask)
if (action) {
int status = 0;
-// if (!(action->flags & IRQF_DISABLED))
+// if (!(action->flags & SA_INTERRUPT))
// local_irq_enable();
do {
@@ -90,7 +90,7 @@ void distribute_irqs(struct irq_group *group, unsigned long irqmask)
action = action->next;
} while (action);
- if (status & IRQF_SAMPLE_RANDOM)
+ if (status & SA_SAMPLE_RANDOM)
add_interrupt_randomness(irq);
local_irq_disable();
}
diff --git a/trunk/arch/frv/kernel/irq.c b/trunk/arch/frv/kernel/irq.c
index 08967010be04..5920f52bf9c8 100644
--- a/trunk/arch/frv/kernel/irq.c
+++ b/trunk/arch/frv/kernel/irq.c
@@ -341,11 +341,11 @@ asmlinkage void do_NMI(void)
*
* Flags:
*
- * IRQF_SHARED Interrupt is shared
+ * SA_SHIRQ Interrupt is shared
*
- * IRQF_DISABLED Disable local interrupts while processing
+ * SA_INTERRUPT Disable local interrupts while processing
*
- * IRQF_SAMPLE_RANDOM The interrupt can be used for entropy
+ * SA_SAMPLE_RANDOM The interrupt can be used for entropy
*
*/
@@ -365,7 +365,7 @@ int request_irq(unsigned int irq,
* to figure out which interrupt is which (messes up the
* interrupt freeing logic etc).
*/
- if (irqflags & IRQF_SHARED) {
+ if (irqflags & SA_SHIRQ) {
if (!dev_id)
printk("Bad boy: %s (at 0x%x) called us without a dev_id!\n",
devname, (&irq)[-1]);
@@ -576,7 +576,7 @@ int setup_irq(unsigned int irq, struct irqaction *new)
* so we have to be careful not to interfere with a
* running system.
*/
- if (new->flags & IRQF_SAMPLE_RANDOM) {
+ if (new->flags & SA_SAMPLE_RANDOM) {
/*
* This function might sleep, we want to call it first,
* outside of the atomic block.
@@ -592,7 +592,7 @@ int setup_irq(unsigned int irq, struct irqaction *new)
spin_lock_irqsave(&level->lock, flags);
/* can't share interrupts unless all parties agree to */
- if (level->usage != 0 && !(level->flags & new->flags & IRQF_SHARED)) {
+ if (level->usage != 0 && !(level->flags & new->flags & SA_SHIRQ)) {
spin_unlock_irqrestore(&level->lock,flags);
return -EBUSY;
}
diff --git a/trunk/arch/frv/kernel/time.c b/trunk/arch/frv/kernel/time.c
index d5b64e193d92..24cf85f89e40 100644
--- a/trunk/arch/frv/kernel/time.c
+++ b/trunk/arch/frv/kernel/time.c
@@ -47,7 +47,7 @@ unsigned long __delay_loops_MHz;
static irqreturn_t timer_interrupt(int irq, void *dummy, struct pt_regs *regs);
static struct irqaction timer_irq = {
- timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL
+ timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL
};
static inline int set_rtc_mmss(unsigned long nowtime)
diff --git a/trunk/arch/h8300/kernel/ints.c b/trunk/arch/h8300/kernel/ints.c
index 1488b6ace18c..edb3c4170013 100644
--- a/trunk/arch/h8300/kernel/ints.c
+++ b/trunk/arch/h8300/kernel/ints.c
@@ -158,7 +158,7 @@ int request_irq(unsigned int irq,
irq_handle->devname = devname;
irq_list[irq] = irq_handle;
- if (irq_handle->flags & IRQF_SAMPLE_RANDOM)
+ if (irq_handle->flags & SA_SAMPLE_RANDOM)
rand_initialize_irq(irq);
enable_irq(irq);
@@ -222,7 +222,7 @@ asmlinkage void process_int(int irq, struct pt_regs *fp)
if (irq_list[irq]) {
irq_list[irq]->handler(irq, irq_list[irq]->dev_id, fp);
irq_list[irq]->count++;
- if (irq_list[irq]->flags & IRQF_SAMPLE_RANDOM)
+ if (irq_list[irq]->flags & SA_SAMPLE_RANDOM)
add_interrupt_randomness(irq);
}
} else {
diff --git a/trunk/arch/h8300/platform/h8s/ints.c b/trunk/arch/h8300/platform/h8s/ints.c
index 270440de4610..f6ed663bdde0 100644
--- a/trunk/arch/h8300/platform/h8s/ints.c
+++ b/trunk/arch/h8300/platform/h8s/ints.c
@@ -192,7 +192,7 @@ int request_irq(unsigned int irq,
irq_handle->dev_id = dev_id;
irq_handle->devname = devname;
irq_list[irq] = irq_handle;
- if (irq_handle->flags & IRQF_SAMPLE_RANDOM)
+ if (irq_handle->flags & SA_SAMPLE_RANDOM)
rand_initialize_irq(irq);
/* enable interrupt */
@@ -270,7 +270,7 @@ asmlinkage void process_int(unsigned long vec, struct pt_regs *fp)
if (irq_list[vec]) {
irq_list[vec]->handler(vec, irq_list[vec]->dev_id, fp);
irq_list[vec]->count++;
- if (irq_list[vec]->flags & IRQF_SAMPLE_RANDOM)
+ if (irq_list[vec]->flags & SA_SAMPLE_RANDOM)
add_interrupt_randomness(vec);
}
} else {
diff --git a/trunk/arch/i386/mach-default/setup.c b/trunk/arch/i386/mach-default/setup.c
index c511705c386c..77c8c83815c1 100644
--- a/trunk/arch/i386/mach-default/setup.c
+++ b/trunk/arch/i386/mach-default/setup.c
@@ -79,7 +79,7 @@ void __init trap_init_hook(void)
{
}
-static struct irqaction irq0 = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL};
+static struct irqaction irq0 = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL};
/**
* time_init_hook - do any specific initialisations for the system timer.
diff --git a/trunk/arch/i386/mach-visws/setup.c b/trunk/arch/i386/mach-visws/setup.c
index 885c7cbfd478..1f84cdb24779 100644
--- a/trunk/arch/i386/mach-visws/setup.c
+++ b/trunk/arch/i386/mach-visws/setup.c
@@ -115,7 +115,7 @@ void __init pre_setup_arch_hook()
static struct irqaction irq0 = {
.handler = timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "timer",
};
diff --git a/trunk/arch/i386/mach-voyager/setup.c b/trunk/arch/i386/mach-voyager/setup.c
index cfa16c151c8f..9da9ef09068d 100644
--- a/trunk/arch/i386/mach-voyager/setup.c
+++ b/trunk/arch/i386/mach-voyager/setup.c
@@ -40,7 +40,7 @@ void __init trap_init_hook(void)
{
}
-static struct irqaction irq0 = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL};
+static struct irqaction irq0 = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL};
void __init time_init_hook(void)
{
diff --git a/trunk/arch/i386/pci/irq.c b/trunk/arch/i386/pci/irq.c
index 4a8995c9c762..bdb4896c56e6 100644
--- a/trunk/arch/i386/pci/irq.c
+++ b/trunk/arch/i386/pci/irq.c
@@ -864,7 +864,7 @@ static int pcibios_lookup_irq(struct pci_dev *dev, int assign)
for (i = 0; i < 16; i++) {
if (!(mask & (1 << i)))
continue;
- if (pirq_penalty[i] < pirq_penalty[newirq] && can_request_irq(i, IRQF_SHARED))
+ if (pirq_penalty[i] < pirq_penalty[newirq] && can_request_irq(i, SA_SHIRQ))
newirq = i;
}
}
diff --git a/trunk/arch/ia64/hp/sim/simserial.c b/trunk/arch/ia64/hp/sim/simserial.c
index 0daacc20ed36..33a3bbc8f67f 100644
--- a/trunk/arch/ia64/hp/sim/simserial.c
+++ b/trunk/arch/ia64/hp/sim/simserial.c
@@ -46,7 +46,7 @@
#define NR_PORTS 1 /* only one port for now */
-#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? IRQF_SHARED : IRQF_DISABLED)
+#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? SA_SHIRQ : SA_INTERRUPT)
#define SSC_GETCHAR 21
diff --git a/trunk/arch/ia64/kernel/irq_ia64.c b/trunk/arch/ia64/kernel/irq_ia64.c
index a041367f043b..3e6fcb056bcb 100644
--- a/trunk/arch/ia64/kernel/irq_ia64.c
+++ b/trunk/arch/ia64/kernel/irq_ia64.c
@@ -235,7 +235,7 @@ extern irqreturn_t handle_IPI (int irq, void *dev_id, struct pt_regs *regs);
static struct irqaction ipi_irqaction = {
.handler = handle_IPI,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "IPI"
};
#endif
diff --git a/trunk/arch/ia64/kernel/mca.c b/trunk/arch/ia64/kernel/mca.c
index eb8e8dc5ac8e..584df1772845 100644
--- a/trunk/arch/ia64/kernel/mca.c
+++ b/trunk/arch/ia64/kernel/mca.c
@@ -1457,38 +1457,38 @@ __setup("disable_cpe_poll", ia64_mca_disable_cpe_polling);
static struct irqaction cmci_irqaction = {
.handler = ia64_mca_cmc_int_handler,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "cmc_hndlr"
};
static struct irqaction cmcp_irqaction = {
.handler = ia64_mca_cmc_int_caller,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "cmc_poll"
};
static struct irqaction mca_rdzv_irqaction = {
.handler = ia64_mca_rendez_int_handler,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "mca_rdzv"
};
static struct irqaction mca_wkup_irqaction = {
.handler = ia64_mca_wakeup_int_handler,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "mca_wkup"
};
#ifdef CONFIG_ACPI
static struct irqaction mca_cpe_irqaction = {
.handler = ia64_mca_cpe_int_handler,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "cpe_hndlr"
};
static struct irqaction mca_cpep_irqaction = {
.handler = ia64_mca_cpe_int_caller,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "cpe_poll"
};
#endif /* CONFIG_ACPI */
diff --git a/trunk/arch/ia64/kernel/perfmon.c b/trunk/arch/ia64/kernel/perfmon.c
index c7ccd6ee1ddf..92b815d13418 100644
--- a/trunk/arch/ia64/kernel/perfmon.c
+++ b/trunk/arch/ia64/kernel/perfmon.c
@@ -6439,7 +6439,7 @@ pfm_flush_pmds(struct task_struct *task, pfm_context_t *ctx)
static struct irqaction perfmon_irqaction = {
.handler = pfm_interrupt_handler,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "perfmon"
};
diff --git a/trunk/arch/ia64/kernel/time.c b/trunk/arch/ia64/kernel/time.c
index 6928ef0d64d8..71ccddabc715 100644
--- a/trunk/arch/ia64/kernel/time.c
+++ b/trunk/arch/ia64/kernel/time.c
@@ -231,7 +231,7 @@ ia64_init_itm (void)
static struct irqaction timer_irqaction = {
.handler = timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "timer"
};
diff --git a/trunk/arch/ia64/sn/kernel/huberror.c b/trunk/arch/ia64/sn/kernel/huberror.c
index 96fb81e6321f..56ab6bae00ee 100644
--- a/trunk/arch/ia64/sn/kernel/huberror.c
+++ b/trunk/arch/ia64/sn/kernel/huberror.c
@@ -178,7 +178,7 @@ void hubiio_crb_error_handler(struct hubdev_info *hubdev_info)
*/
void hub_error_init(struct hubdev_info *hubdev_info)
{
- if (request_irq(SGI_II_ERROR, (void *)hub_eint_handler, IRQF_SHARED,
+ if (request_irq(SGI_II_ERROR, (void *)hub_eint_handler, SA_SHIRQ,
"SN_hub_error", (void *)hubdev_info))
printk("hub_error_init: Failed to request_irq for 0x%p\n",
hubdev_info);
@@ -196,7 +196,7 @@ void hub_error_init(struct hubdev_info *hubdev_info)
void ice_error_init(struct hubdev_info *hubdev_info)
{
if (request_irq
- (SGI_TIO_ERROR, (void *)hub_eint_handler, IRQF_SHARED, "SN_TIO_error",
+ (SGI_TIO_ERROR, (void *)hub_eint_handler, SA_SHIRQ, "SN_TIO_error",
(void *)hubdev_info))
printk("ice_error_init: request_irq() error hubdev_info 0x%p\n",
hubdev_info);
diff --git a/trunk/arch/ia64/sn/kernel/xpc_channel.c b/trunk/arch/ia64/sn/kernel/xpc_channel.c
index c2f69f7942af..8255a9be4632 100644
--- a/trunk/arch/ia64/sn/kernel/xpc_channel.c
+++ b/trunk/arch/ia64/sn/kernel/xpc_channel.c
@@ -202,7 +202,7 @@ xpc_setup_infrastructure(struct xpc_partition *part)
init_waitqueue_head(&part->channel_mgr_wq);
sprintf(part->IPI_owner, "xpc%02d", partid);
- ret = request_irq(SGI_XPC_NOTIFY, xpc_notify_IRQ_handler, IRQF_SHARED,
+ ret = request_irq(SGI_XPC_NOTIFY, xpc_notify_IRQ_handler, SA_SHIRQ,
part->IPI_owner, (void *) (u64) partid);
if (ret != 0) {
dev_err(xpc_chan, "can't register NOTIFY IRQ handler, "
diff --git a/trunk/arch/ia64/sn/pci/pcibr/pcibr_provider.c b/trunk/arch/ia64/sn/pci/pcibr/pcibr_provider.c
index 838c93c9a16a..ab1211ef0176 100644
--- a/trunk/arch/ia64/sn/pci/pcibr/pcibr_provider.c
+++ b/trunk/arch/ia64/sn/pci/pcibr/pcibr_provider.c
@@ -139,7 +139,7 @@ pcibr_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
* register the bridge's error interrupt handler
*/
if (request_irq(SGI_PCIASIC_ERROR, (void *)pcibr_error_intr_handler,
- IRQF_SHARED, "PCIBR error", (void *)(soft))) {
+ SA_SHIRQ, "PCIBR error", (void *)(soft))) {
printk(KERN_WARNING
"pcibr cannot allocate interrupt for error handler\n");
}
diff --git a/trunk/arch/ia64/sn/pci/tioca_provider.c b/trunk/arch/ia64/sn/pci/tioca_provider.c
index c36b0f5affb3..e4aa839d0189 100644
--- a/trunk/arch/ia64/sn/pci/tioca_provider.c
+++ b/trunk/arch/ia64/sn/pci/tioca_provider.c
@@ -646,7 +646,7 @@ tioca_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
if (request_irq(SGI_TIOCA_ERROR,
tioca_error_intr_handler,
- IRQF_SHARED, "TIOCA error", (void *)tioca_common))
+ SA_SHIRQ, "TIOCA error", (void *)tioca_common))
printk(KERN_WARNING
"%s: Unable to get irq %d. "
"Error interrupts won't be routed for TIOCA bus %d\n",
diff --git a/trunk/arch/ia64/sn/pci/tioce_provider.c b/trunk/arch/ia64/sn/pci/tioce_provider.c
index 17cd34284886..2d7948567ebc 100644
--- a/trunk/arch/ia64/sn/pci/tioce_provider.c
+++ b/trunk/arch/ia64/sn/pci/tioce_provider.c
@@ -1027,7 +1027,7 @@ tioce_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
if (request_irq(SGI_PCIASIC_ERROR,
tioce_error_intr_handler,
- IRQF_SHARED, "TIOCE error", (void *)tioce_common))
+ SA_SHIRQ, "TIOCE error", (void *)tioce_common))
printk(KERN_WARNING
"%s: Unable to get irq %d. "
"Error interrupts won't be routed for "
diff --git a/trunk/arch/m32r/kernel/time.c b/trunk/arch/m32r/kernel/time.c
index ded0be07a476..efff6f5151df 100644
--- a/trunk/arch/m32r/kernel/time.c
+++ b/trunk/arch/m32r/kernel/time.c
@@ -237,7 +237,7 @@ irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
return IRQ_HANDLED;
}
-struct irqaction irq0 = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE,
+struct irqaction irq0 = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE,
"MFT2", NULL, NULL };
void __init time_init(void)
diff --git a/trunk/arch/m68k/amiga/amiints.c b/trunk/arch/m68k/amiga/amiints.c
index 96c79d840cff..f9403f4640a1 100644
--- a/trunk/arch/m68k/amiga/amiints.c
+++ b/trunk/arch/m68k/amiga/amiints.c
@@ -22,7 +22,7 @@
*
* 07/08/99: rewamp of the interrupt handling - we now have two types of
* interrupts, normal and fast handlers, fast handlers being
- * marked with IRQF_DISABLED and runs with all other interrupts
+ * marked with SA_INTERRUPT and runs with all other interrupts
* disabled. Normal interrupts disable their own source but
* run with all other interrupt sources enabled.
* PORTS and EXTER interrupts are always shared even if the
diff --git a/trunk/arch/m68k/amiga/cia.c b/trunk/arch/m68k/amiga/cia.c
index dbad30054721..0956e45399e5 100644
--- a/trunk/arch/m68k/amiga/cia.c
+++ b/trunk/arch/m68k/amiga/cia.c
@@ -176,5 +176,5 @@ void __init cia_init_IRQ(struct ciabase *base)
/* override auto int and install CIA handler */
m68k_setup_irq_controller(&auto_irq_controller, base->handler_irq, 1);
m68k_irq_startup(base->handler_irq);
- request_irq(base->handler_irq, cia_handler, IRQF_SHARED, base->name, base);
+ request_irq(base->handler_irq, cia_handler, SA_SHIRQ, base->name, base);
}
diff --git a/trunk/arch/m68k/kernel/ints.c b/trunk/arch/m68k/kernel/ints.c
index b33e37fb7b0e..e969f0477640 100644
--- a/trunk/arch/m68k/kernel/ints.c
+++ b/trunk/arch/m68k/kernel/ints.c
@@ -192,7 +192,7 @@ int setup_irq(unsigned int irq, struct irq_node *node)
prev = irq_list + irq;
if (*prev) {
/* Can't share interrupts unless both agree to */
- if (!((*prev)->flags & node->flags & IRQF_SHARED)) {
+ if (!((*prev)->flags & node->flags & SA_SHIRQ)) {
spin_unlock_irqrestore(&contr->lock, flags);
return -EBUSY;
}
diff --git a/trunk/arch/m68knommu/platform/5307/pit.c b/trunk/arch/m68knommu/platform/5307/pit.c
index 9dc5688f71b5..994c893df1a4 100644
--- a/trunk/arch/m68knommu/platform/5307/pit.c
+++ b/trunk/arch/m68knommu/platform/5307/pit.c
@@ -48,7 +48,7 @@ void coldfire_pit_init(irqreturn_t (*handler)(int, void *, struct pt_regs *))
volatile unsigned char *icrp;
volatile unsigned long *imrp;
- request_irq(MCFINT_VECBASE + MCFINT_PIT1, handler, IRQF_DISABLED,
+ request_irq(MCFINT_VECBASE + MCFINT_PIT1, handler, SA_INTERRUPT,
"ColdFire Timer", NULL);
icrp = (volatile unsigned char *) (MCF_IPSBAR + MCFICM_INTC0 +
diff --git a/trunk/arch/m68knommu/platform/5307/timers.c b/trunk/arch/m68knommu/platform/5307/timers.c
index 24781f009337..c3a9755c2d1f 100644
--- a/trunk/arch/m68knommu/platform/5307/timers.c
+++ b/trunk/arch/m68knommu/platform/5307/timers.c
@@ -61,7 +61,7 @@ void coldfire_timer_init(irqreturn_t (*handler)(int, void *, struct pt_regs *))
__raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 |
MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, TA(MCFTIMER_TMR));
- request_irq(mcf_timervector, handler, IRQF_DISABLED, "timer", NULL);
+ request_irq(mcf_timervector, handler, SA_INTERRUPT, "timer", NULL);
mcf_settimericr(1, mcf_timerlevel);
#ifdef CONFIG_HIGHPROFILE
@@ -125,7 +125,7 @@ void coldfire_profile_init(void)
MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, PA(MCFTIMER_TMR));
request_irq(mcf_profilevector, coldfire_profile_tick,
- (IRQF_DISABLED | IRQ_FLG_FAST), "profile timer", NULL);
+ (SA_INTERRUPT | IRQ_FLG_FAST), "profile timer", NULL);
mcf_settimericr(2, 7);
}
diff --git a/trunk/arch/mips/au1000/common/dbdma.c b/trunk/arch/mips/au1000/common/dbdma.c
index 98244d51c154..69cabb7463ff 100644
--- a/trunk/arch/mips/au1000/common/dbdma.c
+++ b/trunk/arch/mips/au1000/common/dbdma.c
@@ -892,7 +892,7 @@ static void au1xxx_dbdma_init(void)
#error Unknown Au1x00 SOC
#endif
- if (request_irq(irq_nr, dbdma_interrupt, IRQF_DISABLED,
+ if (request_irq(irq_nr, dbdma_interrupt, SA_INTERRUPT,
"Au1xxx dbdma", (void *)dbdma_gptr))
printk("Can't get 1550 dbdma irq");
}
diff --git a/trunk/arch/mips/au1000/common/irq.c b/trunk/arch/mips/au1000/common/irq.c
index 29d6f8178bad..c0d56c130a59 100644
--- a/trunk/arch/mips/au1000/common/irq.c
+++ b/trunk/arch/mips/au1000/common/irq.c
@@ -309,7 +309,7 @@ void startup_match20_interrupt(irqreturn_t (*handler)(int, void *, struct pt_reg
* can avoid it. --cgray
*/
action.dev_id = handler;
- action.flags = IRQF_DISABLED;
+ action.flags = SA_INTERRUPT;
cpus_clear(action.mask);
action.name = "Au1xxx TOY";
action.handler = handler;
diff --git a/trunk/arch/mips/au1000/common/usbdev.c b/trunk/arch/mips/au1000/common/usbdev.c
index 63bcb3a95dc7..2cab7629702c 100644
--- a/trunk/arch/mips/au1000/common/usbdev.c
+++ b/trunk/arch/mips/au1000/common/usbdev.c
@@ -1465,14 +1465,14 @@ usbdev_init(struct usb_device_descriptor* dev_desc,
*/
/* request the USB device transfer complete interrupt */
- if (request_irq(AU1000_USB_DEV_REQ_INT, req_sus_intr, IRQF_DISABLED,
+ if (request_irq(AU1000_USB_DEV_REQ_INT, req_sus_intr, SA_INTERRUPT,
"USBdev req", &usbdev)) {
err("Can't get device request intr");
ret = -ENXIO;
goto out;
}
/* request the USB device suspend interrupt */
- if (request_irq(AU1000_USB_DEV_SUS_INT, req_sus_intr, IRQF_DISABLED,
+ if (request_irq(AU1000_USB_DEV_SUS_INT, req_sus_intr, SA_INTERRUPT,
"USBdev sus", &usbdev)) {
err("Can't get device suspend intr");
ret = -ENXIO;
@@ -1483,7 +1483,7 @@ usbdev_init(struct usb_device_descriptor* dev_desc,
if ((ep0->indma = request_au1000_dma(ep_dma_id[0].id,
ep_dma_id[0].str,
dma_done_ep0_intr,
- IRQF_DISABLED,
+ SA_INTERRUPT,
&usbdev)) < 0) {
err("Can't get %s DMA", ep_dma_id[0].str);
ret = -ENXIO;
@@ -1516,7 +1516,7 @@ usbdev_init(struct usb_device_descriptor* dev_desc,
request_au1000_dma(ep_dma_id[ep->address].id,
ep_dma_id[ep->address].str,
dma_done_ep_intr,
- IRQF_DISABLED,
+ SA_INTERRUPT,
&usbdev);
if (ep->indma < 0) {
err("Can't get %s DMA",
diff --git a/trunk/arch/mips/basler/excite/excite_iodev.c b/trunk/arch/mips/basler/excite/excite_iodev.c
index b288151b532e..91121e523043 100644
--- a/trunk/arch/mips/basler/excite/excite_iodev.c
+++ b/trunk/arch/mips/basler/excite/excite_iodev.c
@@ -113,7 +113,7 @@ static int __exit iodev_remove(struct device *dev)
static int iodev_open(struct inode *i, struct file *f)
{
- return request_irq(iodev_irq, iodev_irqhdl, IRQF_DISABLED,
+ return request_irq(iodev_irq, iodev_irqhdl, SA_INTERRUPT,
iodev_name, &miscdev);
}
diff --git a/trunk/arch/mips/dec/setup.c b/trunk/arch/mips/dec/setup.c
index 2684f121784b..9c707b9ceb65 100644
--- a/trunk/arch/mips/dec/setup.c
+++ b/trunk/arch/mips/dec/setup.c
@@ -105,7 +105,7 @@ static struct irqaction fpuirq = {
};
static struct irqaction busirq = {
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "bus error",
};
@@ -124,7 +124,7 @@ static void __init dec_be_init(void)
case MACH_DS23100: /* DS2100/DS3100 Pmin/Pmax */
board_be_handler = dec_kn01_be_handler;
busirq.handler = dec_kn01_be_interrupt;
- busirq.flags |= IRQF_SHARED;
+ busirq.flags |= SA_SHIRQ;
dec_kn01_be_init();
break;
case MACH_DS5000_1XX: /* DS5000/1xx 3min */
diff --git a/trunk/arch/mips/gt64120/common/time.c b/trunk/arch/mips/gt64120/common/time.c
index d837b26fbe51..c64a7723cafb 100644
--- a/trunk/arch/mips/gt64120/common/time.c
+++ b/trunk/arch/mips/gt64120/common/time.c
@@ -77,7 +77,7 @@ void gt64120_time_init(void)
* the values to the correct interrupt line.
*/
timer.handler = gt64120_irq;
- timer.flags = IRQF_SHARED | IRQF_DISABLED;
+ timer.flags = SA_SHIRQ | SA_INTERRUPT;
timer.name = "timer";
timer.dev_id = NULL;
timer.next = NULL;
diff --git a/trunk/arch/mips/kernel/rtlx.c b/trunk/arch/mips/kernel/rtlx.c
index cdab1b2cd134..caf777f83289 100644
--- a/trunk/arch/mips/kernel/rtlx.c
+++ b/trunk/arch/mips/kernel/rtlx.c
@@ -487,7 +487,7 @@ static struct file_operations rtlx_fops = {
static struct irqaction rtlx_irq = {
.handler = rtlx_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "RTLX",
};
diff --git a/trunk/arch/mips/kernel/smp-mt.c b/trunk/arch/mips/kernel/smp-mt.c
index 93429a4d3012..57770902b9ae 100644
--- a/trunk/arch/mips/kernel/smp-mt.c
+++ b/trunk/arch/mips/kernel/smp-mt.c
@@ -130,13 +130,13 @@ irqreturn_t ipi_call_interrupt(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction irq_resched = {
.handler = ipi_resched_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "IPI_resched"
};
static struct irqaction irq_call = {
.handler = ipi_call_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "IPI_call"
};
diff --git a/trunk/arch/mips/kernel/smtc.c b/trunk/arch/mips/kernel/smtc.c
index a48d9e553083..70cf09afdf56 100644
--- a/trunk/arch/mips/kernel/smtc.c
+++ b/trunk/arch/mips/kernel/smtc.c
@@ -1002,7 +1002,7 @@ void setup_cross_vpe_interrupts(void)
set_vi_handler(MIPS_CPU_IPI_IRQ, ipi_irq_dispatch);
irq_ipi.handler = ipi_interrupt;
- irq_ipi.flags = IRQF_DISABLED;
+ irq_ipi.flags = SA_INTERRUPT;
irq_ipi.name = "SMTC_IPI";
setup_irq_smtc(cpu_ipi_irq, &irq_ipi, (0x100 << MIPS_CPU_IPI_IRQ));
diff --git a/trunk/arch/mips/kernel/time.c b/trunk/arch/mips/kernel/time.c
index 2393c11d5a20..c2b1fcf6024f 100644
--- a/trunk/arch/mips/kernel/time.c
+++ b/trunk/arch/mips/kernel/time.c
@@ -579,7 +579,7 @@ unsigned int mips_hpt_frequency;
static struct irqaction timer_irqaction = {
.handler = timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "timer",
};
diff --git a/trunk/arch/mips/momentum/jaguar_atx/irq.c b/trunk/arch/mips/momentum/jaguar_atx/irq.c
index f9067469a656..ec4032b38f19 100644
--- a/trunk/arch/mips/momentum/jaguar_atx/irq.c
+++ b/trunk/arch/mips/momentum/jaguar_atx/irq.c
@@ -71,7 +71,7 @@ asmlinkage void plat_irq_dispatch(struct pt_regs *regs)
}
static struct irqaction cascade_mv64340 = {
- no_action, IRQF_DISABLED, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
+ no_action, SA_INTERRUPT, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
};
void __init arch_init_irq(void)
diff --git a/trunk/arch/mips/momentum/ocelot_3/irq.c b/trunk/arch/mips/momentum/ocelot_3/irq.c
index 793782a9c195..87c63c340ae3 100644
--- a/trunk/arch/mips/momentum/ocelot_3/irq.c
+++ b/trunk/arch/mips/momentum/ocelot_3/irq.c
@@ -54,7 +54,7 @@
#include
static struct irqaction cascade_mv64340 = {
- no_action, IRQF_DISABLED, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
+ no_action, SA_INTERRUPT, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
};
void __init arch_init_irq(void)
diff --git a/trunk/arch/mips/momentum/ocelot_c/irq.c b/trunk/arch/mips/momentum/ocelot_c/irq.c
index 9d44ae1e156b..86f61ce59e53 100644
--- a/trunk/arch/mips/momentum/ocelot_c/irq.c
+++ b/trunk/arch/mips/momentum/ocelot_c/irq.c
@@ -52,11 +52,11 @@ extern void uart_irq_init(void);
extern void cpci_irq_init(void);
static struct irqaction cascade_fpga = {
- no_action, IRQF_DISABLED, CPU_MASK_NONE, "cascade via FPGA", NULL, NULL
+ no_action, SA_INTERRUPT, CPU_MASK_NONE, "cascade via FPGA", NULL, NULL
};
static struct irqaction cascade_mv64340 = {
- no_action, IRQF_DISABLED, CPU_MASK_NONE, "cascade via MV64340", NULL, NULL
+ no_action, SA_INTERRUPT, CPU_MASK_NONE, "cascade via MV64340", NULL, NULL
};
extern void ll_uart_irq(struct pt_regs *regs);
diff --git a/trunk/arch/mips/momentum/ocelot_g/gt-irq.c b/trunk/arch/mips/momentum/ocelot_g/gt-irq.c
index 9fb2493fff02..047457f3b97a 100644
--- a/trunk/arch/mips/momentum/ocelot_g/gt-irq.c
+++ b/trunk/arch/mips/momentum/ocelot_g/gt-irq.c
@@ -173,7 +173,7 @@ void gt64240_time_init(void)
* the values to the correct interrupt line.
*/
timer.handler = >64240_p0int_irq;
- timer.flags = IRQF_SHARED | IRQF_DISABLED;
+ timer.flags = SA_SHIRQ | SA_INTERRUPT;
timer.name = "timer";
timer.dev_id = NULL;
timer.next = NULL;
diff --git a/trunk/arch/mips/philips/pnx8550/common/int.c b/trunk/arch/mips/philips/pnx8550/common/int.c
index 8aca317d4624..388a4df73040 100644
--- a/trunk/arch/mips/philips/pnx8550/common/int.c
+++ b/trunk/arch/mips/philips/pnx8550/common/int.c
@@ -219,13 +219,13 @@ static struct hw_interrupt_type level_irq_type = {
static struct irqaction gic_action = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "GIC",
};
static struct irqaction timer_action = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "Timer",
};
diff --git a/trunk/arch/mips/sgi-ip22/ip22-int.c b/trunk/arch/mips/sgi-ip22/ip22-int.c
index 2d8762818d95..aee567dc372a 100644
--- a/trunk/arch/mips/sgi-ip22/ip22-int.c
+++ b/trunk/arch/mips/sgi-ip22/ip22-int.c
@@ -272,32 +272,32 @@ static void indy_buserror_irq(struct pt_regs *regs)
static struct irqaction local0_cascade = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "local0 cascade",
};
static struct irqaction local1_cascade = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "local1 cascade",
};
static struct irqaction buserr = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "Bus Error",
};
static struct irqaction map0_cascade = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "mapable0 cascade",
};
#ifdef USE_LIO3_IRQ
static struct irqaction map1_cascade = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "mapable1 cascade",
};
#define SGI_INTERRUPTS SGINT_END
diff --git a/trunk/arch/mips/sgi-ip27/ip27-irq.c b/trunk/arch/mips/sgi-ip27/ip27-irq.c
index 597ec73359b7..a94e4c785805 100644
--- a/trunk/arch/mips/sgi-ip27/ip27-irq.c
+++ b/trunk/arch/mips/sgi-ip27/ip27-irq.c
@@ -118,7 +118,7 @@ static int ms1bit(unsigned long x)
}
/*
- * This code is unnecessarily complex, because we do IRQF_DISABLED
+ * This code is unnecessarily complex, because we do SA_INTERRUPT
* intr enabling. Basically, once we grab the set of intrs we need
* to service, we must mask _all_ these interrupts; firstly, to make
* sure the same intr does not intr again, causing recursion that
diff --git a/trunk/arch/mips/sgi-ip27/ip27-timer.c b/trunk/arch/mips/sgi-ip27/ip27-timer.c
index 3ca614a851e5..1fb860c7ac6d 100644
--- a/trunk/arch/mips/sgi-ip27/ip27-timer.c
+++ b/trunk/arch/mips/sgi-ip27/ip27-timer.c
@@ -217,7 +217,7 @@ static struct hw_interrupt_type rt_irq_type = {
static struct irqaction rt_irqaction = {
.handler = ip27_rt_timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "timer"
};
diff --git a/trunk/arch/mips/sgi-ip32/ip32-irq.c b/trunk/arch/mips/sgi-ip32/ip32-irq.c
index 3b7e74b6222e..00b94aaf6371 100644
--- a/trunk/arch/mips/sgi-ip32/ip32-irq.c
+++ b/trunk/arch/mips/sgi-ip32/ip32-irq.c
@@ -125,9 +125,9 @@ extern irqreturn_t crime_memerr_intr (int irq, void *dev_id,
extern irqreturn_t crime_cpuerr_intr (int irq, void *dev_id,
struct pt_regs *regs);
-struct irqaction memerr_irq = { crime_memerr_intr, IRQF_DISABLED,
+struct irqaction memerr_irq = { crime_memerr_intr, SA_INTERRUPT,
CPU_MASK_NONE, "CRIME memory error", NULL, NULL };
-struct irqaction cpuerr_irq = { crime_cpuerr_intr, IRQF_DISABLED,
+struct irqaction cpuerr_irq = { crime_cpuerr_intr, SA_INTERRUPT,
CPU_MASK_NONE, "CRIME CPU error", NULL, NULL };
/*
@@ -316,9 +316,9 @@ static struct hw_interrupt_type ip32_macepci_interrupt = {
MACEISA_KEYB_POLL_INT | \
MACEISA_MOUSE_INT | \
MACEISA_MOUSE_POLL_INT | \
- MACEIIRQF_TIMER0_INT | \
- MACEIIRQF_TIMER1_INT | \
- MACEIIRQF_TIMER2_INT)
+ MACEISA_TIMER0_INT | \
+ MACEISA_TIMER1_INT | \
+ MACEISA_TIMER2_INT)
#define MACEISA_SUPERIO_INT (MACEISA_PARALLEL_INT | \
MACEISA_PAR_CTXA_INT | \
MACEISA_PAR_CTXB_INT | \
@@ -349,7 +349,7 @@ static void enable_maceisa_irq (unsigned int irq)
case MACEISA_AUDIO_SW_IRQ ... MACEISA_AUDIO3_MERR_IRQ:
crime_int = MACE_AUDIO_INT;
break;
- case MACEISA_RTC_IRQ ... MACEIIRQF_TIMER2_IRQ:
+ case MACEISA_RTC_IRQ ... MACEISA_TIMER2_IRQ:
crime_int = MACE_MISC_INT;
break;
case MACEISA_PARALLEL_IRQ ... MACEISA_SERIAL2_RDMAOR_IRQ:
diff --git a/trunk/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c b/trunk/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c
index ec0a0de3083d..ee943cb1328c 100644
--- a/trunk/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c
+++ b/trunk/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c
@@ -337,7 +337,7 @@ int toshiba_rbtx4927_irq_nested(int sw_irq)
}
//#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, 0, CPU_MASK_NONE, s, NULL, NULL }
-#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, IRQF_SHARED, CPU_MASK_NONE, s, NULL, NULL }
+#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, SA_SHIRQ, CPU_MASK_NONE, s, NULL, NULL }
static struct irqaction toshiba_rbtx4927_irq_ioc_action =
TOSHIBA_RBTX4927_PIC_ACTION(TOSHIBA_RBTX4927_IOC_NAME);
#ifdef CONFIG_TOSHIBA_FPCIB0
diff --git a/trunk/arch/parisc/kernel/irq.c b/trunk/arch/parisc/kernel/irq.c
index 5b8803cc3d69..52761d96f991 100644
--- a/trunk/arch/parisc/kernel/irq.c
+++ b/trunk/arch/parisc/kernel/irq.c
@@ -366,14 +366,14 @@ void do_cpu_irq_mask(struct pt_regs *regs)
static struct irqaction timer_action = {
.handler = timer_interrupt,
.name = "timer",
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
};
#ifdef CONFIG_SMP
static struct irqaction ipi_action = {
.handler = ipi_interrupt,
.name = "IPI",
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
};
#endif
diff --git a/trunk/arch/powerpc/platforms/cell/interrupt.c b/trunk/arch/powerpc/platforms/cell/interrupt.c
index 22da1335445a..880c8083d16f 100644
--- a/trunk/arch/powerpc/platforms/cell/interrupt.c
+++ b/trunk/arch/powerpc/platforms/cell/interrupt.c
@@ -304,11 +304,11 @@ static void iic_request_ipi(int ipi, const char *name)
int irq;
irq = iic_ipi_to_irq(ipi);
- /* IPIs are marked IRQF_DISABLED as they must run with irqs
+ /* IPIs are marked SA_INTERRUPT as they must run with irqs
* disabled */
get_irq_desc(irq)->chip = &iic_pic;
get_irq_desc(irq)->status |= IRQ_PER_CPU;
- request_irq(irq, iic_ipi_action, IRQF_DISABLED, name, NULL);
+ request_irq(irq, iic_ipi_action, SA_INTERRUPT, name, NULL);
}
void iic_request_IPIs(void)
diff --git a/trunk/arch/powerpc/platforms/cell/spu_base.c b/trunk/arch/powerpc/platforms/cell/spu_base.c
index 656c1ef5f4ad..b306723abb87 100644
--- a/trunk/arch/powerpc/platforms/cell/spu_base.c
+++ b/trunk/arch/powerpc/platforms/cell/spu_base.c
@@ -274,19 +274,19 @@ spu_request_irqs(struct spu *spu)
snprintf(spu->irq_c0, sizeof (spu->irq_c0), "spe%02d.0", spu->number);
ret = request_irq(irq_base + spu->isrc,
- spu_irq_class_0, IRQF_DISABLED, spu->irq_c0, spu);
+ spu_irq_class_0, SA_INTERRUPT, spu->irq_c0, spu);
if (ret)
goto out;
snprintf(spu->irq_c1, sizeof (spu->irq_c1), "spe%02d.1", spu->number);
ret = request_irq(irq_base + IIC_CLASS_STRIDE + spu->isrc,
- spu_irq_class_1, IRQF_DISABLED, spu->irq_c1, spu);
+ spu_irq_class_1, SA_INTERRUPT, spu->irq_c1, spu);
if (ret)
goto out1;
snprintf(spu->irq_c2, sizeof (spu->irq_c2), "spe%02d.2", spu->number);
ret = request_irq(irq_base + 2*IIC_CLASS_STRIDE + spu->isrc,
- spu_irq_class_2, IRQF_DISABLED, spu->irq_c2, spu);
+ spu_irq_class_2, SA_INTERRUPT, spu->irq_c2, spu);
if (ret)
goto out2;
goto out;
diff --git a/trunk/arch/powerpc/platforms/powermac/pic.c b/trunk/arch/powerpc/platforms/powermac/pic.c
index c9b09a9e6050..532bce57c0dc 100644
--- a/trunk/arch/powerpc/platforms/powermac/pic.c
+++ b/trunk/arch/powerpc/platforms/powermac/pic.c
@@ -381,7 +381,7 @@ static struct irqaction xmon_action = {
static struct irqaction gatwick_cascade_action = {
.handler = gatwick_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "cascade",
};
diff --git a/trunk/arch/powerpc/platforms/powermac/smp.c b/trunk/arch/powerpc/platforms/powermac/smp.c
index 827b7121ffb8..63affcb24219 100644
--- a/trunk/arch/powerpc/platforms/powermac/smp.c
+++ b/trunk/arch/powerpc/platforms/powermac/smp.c
@@ -377,7 +377,7 @@ static void __init psurge_dual_sync_tb(int cpu_nr)
static struct irqaction psurge_irqaction = {
.handler = psurge_primary_intr,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "primary IPI",
};
diff --git a/trunk/arch/powerpc/platforms/pseries/xics.c b/trunk/arch/powerpc/platforms/pseries/xics.c
index 2ffebe31cb2d..4d935d0817f2 100644
--- a/trunk/arch/powerpc/platforms/pseries/xics.c
+++ b/trunk/arch/powerpc/platforms/pseries/xics.c
@@ -59,7 +59,7 @@ static struct radix_tree_root irq_map = RADIX_TREE_INIT(GFP_ATOMIC);
/*
* Mark IPIs as higher priority so we can take them inside interrupts that
- * arent marked IRQF_DISABLED
+ * arent marked SA_INTERRUPT
*/
#define IPI_PRIORITY 4
@@ -586,12 +586,9 @@ void xics_request_IPIs(void)
{
virt_irq_to_real_map[XICS_IPI] = XICS_IPI;
- /*
- * IPIs are marked IRQF_DISABLED as they must run with irqs
- * disabled
- */
- request_irq(irq_offset_up(XICS_IPI), xics_ipi_action,
- IRQF_DISABLED, "IPI", NULL);
+ /* IPIs are marked SA_INTERRUPT as they must run with irqs disabled */
+ request_irq(irq_offset_up(XICS_IPI), xics_ipi_action, SA_INTERRUPT,
+ "IPI", NULL);
get_irq_desc(irq_offset_up(XICS_IPI))->status |= IRQ_PER_CPU;
}
#endif
diff --git a/trunk/arch/powerpc/sysdev/i8259.c b/trunk/arch/powerpc/sysdev/i8259.c
index 1a3ef1ab9d6e..2bff30f6d635 100644
--- a/trunk/arch/powerpc/sysdev/i8259.c
+++ b/trunk/arch/powerpc/sysdev/i8259.c
@@ -167,7 +167,7 @@ static struct resource pic_edgectrl_iores = {
static struct irqaction i8259_irqaction = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "82c59 secondary cascade",
};
diff --git a/trunk/arch/powerpc/sysdev/mpic.c b/trunk/arch/powerpc/sysdev/mpic.c
index 7e469358895f..63ff89575cbb 100644
--- a/trunk/arch/powerpc/sysdev/mpic.c
+++ b/trunk/arch/powerpc/sysdev/mpic.c
@@ -540,7 +540,7 @@ static void mpic_end_ipi(unsigned int irq)
* IPIs are marked IRQ_PER_CPU. This has the side effect of
* preventing the IRQ_PENDING/IRQ_INPROGRESS logic from
* applying to them. We EOI them late to avoid re-entering.
- * We mark IPI's with IRQF_DISABLED as they must run with
+ * We mark IPI's with SA_INTERRUPT as they must run with
* irqs disabled.
*/
mpic_eoi(mpic);
@@ -1027,17 +1027,14 @@ void mpic_request_ipis(void)
printk("requesting IPIs ... \n");
- /*
- * IPIs are marked IRQF_DISABLED as they must run with irqs
- * disabled
- */
- request_irq(mpic->ipi_offset+0, mpic_ipi_action, IRQF_DISABLED,
+ /* IPIs are marked SA_INTERRUPT as they must run with irqs disabled */
+ request_irq(mpic->ipi_offset+0, mpic_ipi_action, SA_INTERRUPT,
"IPI0 (call function)", mpic);
- request_irq(mpic->ipi_offset+1, mpic_ipi_action, IRQF_DISABLED,
+ request_irq(mpic->ipi_offset+1, mpic_ipi_action, SA_INTERRUPT,
"IPI1 (reschedule)", mpic);
- request_irq(mpic->ipi_offset+2, mpic_ipi_action, IRQF_DISABLED,
+ request_irq(mpic->ipi_offset+2, mpic_ipi_action, SA_INTERRUPT,
"IPI2 (unused)", mpic);
- request_irq(mpic->ipi_offset+3, mpic_ipi_action, IRQF_DISABLED,
+ request_irq(mpic->ipi_offset+3, mpic_ipi_action, SA_INTERRUPT,
"IPI3 (debugger break)", mpic);
printk("IPIs requested... \n");
diff --git a/trunk/arch/ppc/8260_io/fcc_enet.c b/trunk/arch/ppc/8260_io/fcc_enet.c
index e347fe88316d..cd5f3faa4b20 100644
--- a/trunk/arch/ppc/8260_io/fcc_enet.c
+++ b/trunk/arch/ppc/8260_io/fcc_enet.c
@@ -2116,7 +2116,7 @@ init_fcc_startup(fcc_info_t *fip, struct net_device *dev)
#ifdef PHY_INTERRUPT
#ifdef CONFIG_ADS8272
- if (request_irq(PHY_INTERRUPT, mii_link_interrupt, IRQF_SHARED,
+ if (request_irq(PHY_INTERRUPT, mii_link_interrupt, SA_SHIRQ,
"mii", dev) < 0)
printk(KERN_CRIT "Can't get MII IRQ %d\n", PHY_INTERRUPT);
#else
diff --git a/trunk/arch/ppc/platforms/85xx/mpc8560_ads.c b/trunk/arch/ppc/platforms/85xx/mpc8560_ads.c
index d90cd24d018e..026ace320729 100644
--- a/trunk/arch/ppc/platforms/85xx/mpc8560_ads.c
+++ b/trunk/arch/ppc/platforms/85xx/mpc8560_ads.c
@@ -131,7 +131,7 @@ static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction cpm2_irqaction = {
.handler = cpm2_cascade,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "cpm2_cascade",
};
diff --git a/trunk/arch/ppc/platforms/85xx/mpc85xx_cds_common.c b/trunk/arch/ppc/platforms/85xx/mpc85xx_cds_common.c
index 75204588a3e7..139cf0d00855 100644
--- a/trunk/arch/ppc/platforms/85xx/mpc85xx_cds_common.c
+++ b/trunk/arch/ppc/platforms/85xx/mpc85xx_cds_common.c
@@ -136,7 +136,7 @@ static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction cpm2_irqaction = {
.handler = cpm2_cascade,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "cpm2_cascade",
};
diff --git a/trunk/arch/ppc/platforms/85xx/stx_gp3.c b/trunk/arch/ppc/platforms/85xx/stx_gp3.c
index 495aa79bb3a1..224612412cbe 100644
--- a/trunk/arch/ppc/platforms/85xx/stx_gp3.c
+++ b/trunk/arch/ppc/platforms/85xx/stx_gp3.c
@@ -166,7 +166,7 @@ static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction cpm2_irqaction = {
.handler = cpm2_cascade,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "cpm2_cascade",
};
diff --git a/trunk/arch/ppc/platforms/85xx/tqm85xx.c b/trunk/arch/ppc/platforms/85xx/tqm85xx.c
index 189ed4175f9f..1c90f113cc8f 100644
--- a/trunk/arch/ppc/platforms/85xx/tqm85xx.c
+++ b/trunk/arch/ppc/platforms/85xx/tqm85xx.c
@@ -190,7 +190,7 @@ static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction cpm2_irqaction = {
.handler = cpm2_cascade,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "cpm2_cascade",
};
diff --git a/trunk/arch/ppc/platforms/hdpu.c b/trunk/arch/ppc/platforms/hdpu.c
index e0f112a1fd0b..71af4b488621 100644
--- a/trunk/arch/ppc/platforms/hdpu.c
+++ b/trunk/arch/ppc/platforms/hdpu.c
@@ -837,7 +837,7 @@ static void smp_hdpu_setup_cpu(int cpu_nr)
mv64x60_write(&bh, MV64360_CPU0_DOORBELL_CLR, 0xff);
mv64x60_write(&bh, MV64360_CPU0_DOORBELL_MASK, 0xff);
request_irq(60, hdpu_smp_cpu0_int_handler,
- IRQF_DISABLED, hdpu_smp0, 0);
+ SA_INTERRUPT, hdpu_smp0, 0);
}
if (cpu_nr == 1) {
@@ -857,7 +857,7 @@ static void smp_hdpu_setup_cpu(int cpu_nr)
mv64x60_write(&bh, MV64360_CPU1_DOORBELL_CLR, 0x0);
mv64x60_write(&bh, MV64360_CPU1_DOORBELL_MASK, 0xff);
request_irq(28, hdpu_smp_cpu1_int_handler,
- IRQF_DISABLED, hdpu_smp1, 0);
+ SA_INTERRUPT, hdpu_smp1, 0);
}
}
diff --git a/trunk/arch/ppc/platforms/radstone_ppc7d.c b/trunk/arch/ppc/platforms/radstone_ppc7d.c
index 3bb530af0297..97d6c21091e0 100644
--- a/trunk/arch/ppc/platforms/radstone_ppc7d.c
+++ b/trunk/arch/ppc/platforms/radstone_ppc7d.c
@@ -1310,7 +1310,7 @@ static void ppc7d_init2(void)
/* Hook up i8259 interrupt which is connected to GPP28 */
request_irq(mv64360_irq_base + MV64x60_IRQ_GPP28, ppc7d_i8259_intr,
- IRQF_DISABLED, "I8259 (GPP28) interrupt", (void *)0);
+ SA_INTERRUPT, "I8259 (GPP28) interrupt", (void *)0);
/* Configure MPP16 as watchdog NMI, MPP17 as watchdog WDE */
spin_lock_irqsave(&mv64x60_lock, flags);
diff --git a/trunk/arch/ppc/platforms/sbc82xx.c b/trunk/arch/ppc/platforms/sbc82xx.c
index 60b769c7f3fc..8cff1e303349 100644
--- a/trunk/arch/ppc/platforms/sbc82xx.c
+++ b/trunk/arch/ppc/platforms/sbc82xx.c
@@ -145,7 +145,7 @@ static irqreturn_t sbc82xx_i8259_demux(int irq, void *dev_id, struct pt_regs *re
static struct irqaction sbc82xx_i8259_irqaction = {
.handler = sbc82xx_i8259_demux,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "i8259 demux",
};
diff --git a/trunk/arch/ppc/syslib/gt64260_pic.c b/trunk/arch/ppc/syslib/gt64260_pic.c
index 7fd550a7d586..91096b38ae70 100644
--- a/trunk/arch/ppc/syslib/gt64260_pic.c
+++ b/trunk/arch/ppc/syslib/gt64260_pic.c
@@ -297,7 +297,7 @@ gt64260_register_hdlrs(void)
/* Register CPU interface error interrupt handler */
if ((rc = request_irq(MV64x60_IRQ_CPU_ERR,
- gt64260_cpu_error_int_handler, IRQF_DISABLED, CPU_INTR_STR, 0)))
+ gt64260_cpu_error_int_handler, SA_INTERRUPT, CPU_INTR_STR, 0)))
printk(KERN_WARNING "Can't register cpu error handler: %d", rc);
mv64x60_write(&bh, MV64x60_CPU_ERR_MASK, 0);
@@ -305,7 +305,7 @@ gt64260_register_hdlrs(void)
/* Register PCI 0 error interrupt handler */
if ((rc = request_irq(MV64360_IRQ_PCI0, gt64260_pci_error_int_handler,
- IRQF_DISABLED, PCI0_INTR_STR, (void *)0)))
+ SA_INTERRUPT, PCI0_INTR_STR, (void *)0)))
printk(KERN_WARNING "Can't register pci 0 error handler: %d",
rc);
@@ -314,7 +314,7 @@ gt64260_register_hdlrs(void)
/* Register PCI 1 error interrupt handler */
if ((rc = request_irq(MV64360_IRQ_PCI1, gt64260_pci_error_int_handler,
- IRQF_DISABLED, PCI1_INTR_STR, (void *)1)))
+ SA_INTERRUPT, PCI1_INTR_STR, (void *)1)))
printk(KERN_WARNING "Can't register pci 1 error handler: %d",
rc);
diff --git a/trunk/arch/ppc/syslib/ibm440gx_common.c b/trunk/arch/ppc/syslib/ibm440gx_common.c
index 4b77e6c8c87f..0440d8f4ce16 100644
--- a/trunk/arch/ppc/syslib/ibm440gx_common.c
+++ b/trunk/arch/ppc/syslib/ibm440gx_common.c
@@ -149,7 +149,7 @@ void __init ibm440gx_l2c_enable(void){
unsigned long flags;
/* Install error handler */
- if (request_irq(87, l2c_error_handler, IRQF_DISABLED, "L2C", 0) < 0){
+ if (request_irq(87, l2c_error_handler, SA_INTERRUPT, "L2C", 0) < 0){
printk(KERN_ERR "Cannot install L2C error handler, cache is not enabled\n");
return;
}
diff --git a/trunk/arch/ppc/syslib/m82xx_pci.c b/trunk/arch/ppc/syslib/m82xx_pci.c
index d3fa264e179e..63fa5b313396 100644
--- a/trunk/arch/ppc/syslib/m82xx_pci.c
+++ b/trunk/arch/ppc/syslib/m82xx_pci.c
@@ -139,7 +139,7 @@ pq2pci_irq_demux(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction pq2pci_irqaction = {
.handler = pq2pci_irq_demux,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
.name = "PQ2 PCI cascade",
};
diff --git a/trunk/arch/ppc/syslib/mv64360_pic.c b/trunk/arch/ppc/syslib/mv64360_pic.c
index 3f6d162f87cf..a4244d468381 100644
--- a/trunk/arch/ppc/syslib/mv64360_pic.c
+++ b/trunk/arch/ppc/syslib/mv64360_pic.c
@@ -380,7 +380,7 @@ mv64360_register_hdlrs(void)
/* Clear old errors and register CPU interface error intr handler */
mv64x60_write(&bh, MV64x60_CPU_ERR_CAUSE, 0);
if ((rc = request_irq(MV64x60_IRQ_CPU_ERR + mv64360_irq_base,
- mv64360_cpu_error_int_handler, IRQF_DISABLED, CPU_INTR_STR, 0)))
+ mv64360_cpu_error_int_handler, SA_INTERRUPT, CPU_INTR_STR, 0)))
printk(KERN_WARNING "Can't register cpu error handler: %d", rc);
mv64x60_write(&bh, MV64x60_CPU_ERR_MASK, 0);
@@ -389,14 +389,14 @@ mv64360_register_hdlrs(void)
/* Clear old errors and register internal SRAM error intr handler */
mv64x60_write(&bh, MV64360_SRAM_ERR_CAUSE, 0);
if ((rc = request_irq(MV64360_IRQ_SRAM_PAR_ERR + mv64360_irq_base,
- mv64360_sram_error_int_handler,IRQF_DISABLED,SRAM_INTR_STR, 0)))
+ mv64360_sram_error_int_handler,SA_INTERRUPT,SRAM_INTR_STR, 0)))
printk(KERN_WARNING "Can't register SRAM error handler: %d",rc);
/* Clear old errors and register PCI 0 error intr handler */
mv64x60_write(&bh, MV64x60_PCI0_ERR_CAUSE, 0);
if ((rc = request_irq(MV64360_IRQ_PCI0 + mv64360_irq_base,
mv64360_pci_error_int_handler,
- IRQF_DISABLED, PCI0_INTR_STR, (void *)0)))
+ SA_INTERRUPT, PCI0_INTR_STR, (void *)0)))
printk(KERN_WARNING "Can't register pci 0 error handler: %d",
rc);
@@ -411,7 +411,7 @@ mv64360_register_hdlrs(void)
mv64x60_write(&bh, MV64x60_PCI1_ERR_CAUSE, 0);
if ((rc = request_irq(MV64360_IRQ_PCI1 + mv64360_irq_base,
mv64360_pci_error_int_handler,
- IRQF_DISABLED, PCI1_INTR_STR, (void *)1)))
+ SA_INTERRUPT, PCI1_INTR_STR, (void *)1)))
printk(KERN_WARNING "Can't register pci 1 error handler: %d",
rc);
diff --git a/trunk/arch/ppc/syslib/open_pic.c b/trunk/arch/ppc/syslib/open_pic.c
index aa0b95788705..08973663fa24 100644
--- a/trunk/arch/ppc/syslib/open_pic.c
+++ b/trunk/arch/ppc/syslib/open_pic.c
@@ -575,21 +575,18 @@ void openpic_request_IPIs(void)
if (OpenPIC == NULL)
return;
- /*
- * IPIs are marked IRQF_DISABLED as they must run with irqs
- * disabled
- */
+ /* IPIs are marked SA_INTERRUPT as they must run with irqs disabled */
request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset,
- openpic_ipi_action, IRQF_DISABLED,
+ openpic_ipi_action, SA_INTERRUPT,
"IPI0 (call function)", NULL);
request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+1,
- openpic_ipi_action, IRQF_DISABLED,
+ openpic_ipi_action, SA_INTERRUPT,
"IPI1 (reschedule)", NULL);
request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+2,
- openpic_ipi_action, IRQF_DISABLED,
+ openpic_ipi_action, SA_INTERRUPT,
"IPI2 (invalidate tlb)", NULL);
request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+3,
- openpic_ipi_action, IRQF_DISABLED,
+ openpic_ipi_action, SA_INTERRUPT,
"IPI3 (xmon break)", NULL);
for ( i = 0; i < OPENPIC_NUM_IPI ; i++ )
@@ -694,7 +691,7 @@ openpic_init_nmi_irq(u_int irq)
static struct irqaction openpic_cascade_irqaction = {
.handler = no_action,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
};
diff --git a/trunk/arch/sh/boards/snapgear/setup.c b/trunk/arch/sh/boards/snapgear/setup.c
index f1f7c70c9402..046b896d04f9 100644
--- a/trunk/arch/sh/boards/snapgear/setup.c
+++ b/trunk/arch/sh/boards/snapgear/setup.c
@@ -50,7 +50,7 @@ static int __init eraseconfig_init(void)
{
printk("SnapGear: EraseConfig init\n");
/* Setup "EraseConfig" switch on external IRQ 0 */
- if (request_irq(IRL0_IRQ, eraseconfig_interrupt, IRQF_DISABLED,
+ if (request_irq(IRL0_IRQ, eraseconfig_interrupt, SA_INTERRUPT,
"Erase Config", NULL))
printk("SnapGear: failed to register IRQ%d for Reset witch\n",
IRL0_IRQ);
diff --git a/trunk/arch/sh/cchips/hd6446x/hd64461/setup.c b/trunk/arch/sh/cchips/hd6446x/hd64461/setup.c
index ad126016720f..9b361a91a1a6 100644
--- a/trunk/arch/sh/cchips/hd6446x/hd64461/setup.c
+++ b/trunk/arch/sh/cchips/hd6446x/hd64461/setup.c
@@ -133,7 +133,7 @@ int hd64461_irq_demux(int irq)
return __irq_demux(irq);
}
-static struct irqaction irq0 = { hd64461_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "HD64461", NULL, NULL };
+static struct irqaction irq0 = { hd64461_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "HD64461", NULL, NULL };
int __init setup_hd64461(void)
{
diff --git a/trunk/arch/sh/cchips/hd6446x/hd64465/gpio.c b/trunk/arch/sh/cchips/hd6446x/hd64465/gpio.c
index 72320d02d69a..9785fdef868e 100644
--- a/trunk/arch/sh/cchips/hd6446x/hd64465/gpio.c
+++ b/trunk/arch/sh/cchips/hd6446x/hd64465/gpio.c
@@ -170,7 +170,7 @@ static int __init hd64465_gpio_init(void)
if (!request_region(HD64465_REG_GPACR, 0x1000, MODNAME))
return -EBUSY;
if (request_irq(HD64465_IRQ_GPIO, hd64465_gpio_interrupt,
- IRQF_DISABLED, MODNAME, 0))
+ SA_INTERRUPT, MODNAME, 0))
goto out_irqfailed;
printk("HD64465 GPIO layer on irq %d\n", HD64465_IRQ_GPIO);
diff --git a/trunk/arch/sh/cchips/hd6446x/hd64465/setup.c b/trunk/arch/sh/cchips/hd6446x/hd64465/setup.c
index d2b2851bc44b..b2b0aa48a3a7 100644
--- a/trunk/arch/sh/cchips/hd6446x/hd64465/setup.c
+++ b/trunk/arch/sh/cchips/hd6446x/hd64465/setup.c
@@ -153,7 +153,7 @@ int hd64465_irq_demux(int irq)
return irq;
}
-static struct irqaction irq0 = { hd64465_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "HD64465", NULL, NULL};
+static struct irqaction irq0 = { hd64465_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "HD64465", NULL, NULL};
static int __init setup_hd64465(void)
diff --git a/trunk/arch/sh/cchips/voyagergx/irq.c b/trunk/arch/sh/cchips/voyagergx/irq.c
index 0dc1fb8f9687..6a74464dab2d 100644
--- a/trunk/arch/sh/cchips/voyagergx/irq.c
+++ b/trunk/arch/sh/cchips/voyagergx/irq.c
@@ -165,7 +165,7 @@ int voyagergx_irq_demux(int irq)
static struct irqaction irq0 = {
.name = "voyagergx",
.handler = voyagergx_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
};
diff --git a/trunk/arch/sh/drivers/dma/dma-g2.c b/trunk/arch/sh/drivers/dma/dma-g2.c
index 0f866f8789f0..5afab6f56ec3 100644
--- a/trunk/arch/sh/drivers/dma/dma-g2.c
+++ b/trunk/arch/sh/drivers/dma/dma-g2.c
@@ -56,7 +56,7 @@ static irqreturn_t g2_dma_interrupt(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction g2_dma_irq = {
.name = "g2 DMA handler",
.handler = g2_dma_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
};
static int g2_enable_dma(struct dma_channel *chan)
diff --git a/trunk/arch/sh/drivers/dma/dma-pvr2.c b/trunk/arch/sh/drivers/dma/dma-pvr2.c
index 30a580aa7cbd..df604975ccc8 100644
--- a/trunk/arch/sh/drivers/dma/dma-pvr2.c
+++ b/trunk/arch/sh/drivers/dma/dma-pvr2.c
@@ -70,7 +70,7 @@ static int pvr2_xfer_dma(struct dma_channel *chan)
static struct irqaction pvr2_dma_irq = {
.name = "pvr2 DMA handler",
.handler = pvr2_dma_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
};
static struct dma_ops pvr2_dma_ops = {
diff --git a/trunk/arch/sh/drivers/dma/dma-sh.c b/trunk/arch/sh/drivers/dma/dma-sh.c
index e028a2d2a4ea..fecd8f8d0466 100644
--- a/trunk/arch/sh/drivers/dma/dma-sh.c
+++ b/trunk/arch/sh/drivers/dma/dma-sh.c
@@ -90,7 +90,7 @@ static int sh_dmac_request_dma(struct dma_channel *chan)
chan->chan);
return request_irq(get_dmte_irq(chan->chan), dma_tei,
- IRQF_DISABLED, name, chan);
+ SA_INTERRUPT, name, chan);
}
static void sh_dmac_free_dma(struct dma_channel *chan)
@@ -258,7 +258,7 @@ static int __init sh_dmac_init(void)
#ifdef CONFIG_CPU_SH4
make_ipr_irq(DMAE_IRQ, DMA_IPR_ADDR, DMA_IPR_POS, DMA_PRIORITY);
- i = request_irq(DMAE_IRQ, dma_err, IRQF_DISABLED, "DMAC Address Error", 0);
+ i = request_irq(DMAE_IRQ, dma_err, SA_INTERRUPT, "DMAC Address Error", 0);
if (i < 0)
return i;
#endif
diff --git a/trunk/arch/sh/drivers/pci/pci-st40.c b/trunk/arch/sh/drivers/pci/pci-st40.c
index 7c81b8b65bb5..21f3017e5c28 100644
--- a/trunk/arch/sh/drivers/pci/pci-st40.c
+++ b/trunk/arch/sh/drivers/pci/pci-st40.c
@@ -447,7 +447,7 @@ static int __init pcibios_init(void)
PHYSADDR(memory_end) - PHYSADDR(memory_start));
if (request_irq(ST40PCI_ERR_IRQ, st40_pci_irq,
- IRQF_DISABLED, "st40pci", NULL)) {
+ SA_INTERRUPT, "st40pci", NULL)) {
printk(KERN_ERR "st40pci: Cannot hook interrupt\n");
return -EIO;
}
diff --git a/trunk/arch/sh/kernel/timers/timer-tmu.c b/trunk/arch/sh/kernel/timers/timer-tmu.c
index d4212add53b2..96a64cb13106 100644
--- a/trunk/arch/sh/kernel/timers/timer-tmu.c
+++ b/trunk/arch/sh/kernel/timers/timer-tmu.c
@@ -107,7 +107,7 @@ static irqreturn_t tmu_timer_interrupt(int irq, void *dev_id,
static struct irqaction tmu_irq = {
.name = "timer",
.handler = tmu_timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.mask = CPU_MASK_NONE,
};
diff --git a/trunk/arch/sh64/kernel/dma.c b/trunk/arch/sh64/kernel/dma.c
index 32c6f0549bf1..09cd9f4670b5 100644
--- a/trunk/arch/sh64/kernel/dma.c
+++ b/trunk/arch/sh64/kernel/dma.c
@@ -115,7 +115,7 @@ static irqreturn_t dma_mte(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction irq_dmte = {
.handler = dma_mte,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "DMA MTE",
};
@@ -152,7 +152,7 @@ static irqreturn_t dma_err(int irq, void *dev_id, struct pt_regs *regs)
static struct irqaction irq_derr = {
.handler = dma_err,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "DMA Error",
};
diff --git a/trunk/arch/sh64/kernel/pci_sh5.c b/trunk/arch/sh64/kernel/pci_sh5.c
index 9dae689b6a9b..3c04951ff736 100644
--- a/trunk/arch/sh64/kernel/pci_sh5.c
+++ b/trunk/arch/sh64/kernel/pci_sh5.c
@@ -473,13 +473,13 @@ static void __init pcibios_size_bridges(void)
static int __init pcibios_init(void)
{
if (request_irq(IRQ_ERR, pcish5_err_irq,
- IRQF_DISABLED, "PCI Error",NULL) < 0) {
+ SA_INTERRUPT, "PCI Error",NULL) < 0) {
printk(KERN_ERR "PCISH5: Cannot hook PCI_PERR interrupt\n");
return -EINVAL;
}
if (request_irq(IRQ_SERR, pcish5_serr_irq,
- IRQF_DISABLED, "PCI SERR interrupt", NULL) < 0) {
+ SA_INTERRUPT, "PCI SERR interrupt", NULL) < 0) {
printk(KERN_ERR "PCISH5: Cannot hook PCI_SERR interrupt\n");
return -EINVAL;
}
diff --git a/trunk/arch/sh64/kernel/time.c b/trunk/arch/sh64/kernel/time.c
index b8162e59030e..ba9eb992f4a5 100644
--- a/trunk/arch/sh64/kernel/time.c
+++ b/trunk/arch/sh64/kernel/time.c
@@ -484,8 +484,8 @@ static irqreturn_t sh64_rtc_interrupt(int irq, void *dev_id,
return IRQ_HANDLED;
}
-static struct irqaction irq0 = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL};
-static struct irqaction irq1 = { sh64_rtc_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "rtc", NULL, NULL};
+static struct irqaction irq0 = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL};
+static struct irqaction irq1 = { sh64_rtc_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "rtc", NULL, NULL};
void __init time_init(void)
{
diff --git a/trunk/arch/sh64/mach-cayman/irq.c b/trunk/arch/sh64/mach-cayman/irq.c
index 228ce61c3515..cac94219dd5f 100644
--- a/trunk/arch/sh64/mach-cayman/irq.c
+++ b/trunk/arch/sh64/mach-cayman/irq.c
@@ -44,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 = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
};
static struct irqaction cayman_action_pci2 = {
.name = "Cayman PCI2 Mux",
.handler = cayman_interrupt_pci2,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
};
static void enable_cayman_irq(unsigned int irq)
diff --git a/trunk/arch/sparc/kernel/irq.c b/trunk/arch/sparc/kernel/irq.c
index cde73327ca96..b81af076ef48 100644
--- a/trunk/arch/sparc/kernel/irq.c
+++ b/trunk/arch/sparc/kernel/irq.c
@@ -191,11 +191,11 @@ int show_interrupts(struct seq_file *p, void *v)
}
#endif
seq_printf(p, " %c %s",
- (action->flags & IRQF_DISABLED) ? '+' : ' ',
+ (action->flags & SA_INTERRUPT) ? '+' : ' ',
action->name);
for (action=action->next; action; action = action->next) {
seq_printf(p, ",%s %s",
- (action->flags & IRQF_DISABLED) ? " +" : "",
+ (action->flags & SA_INTERRUPT) ? " +" : "",
action->name);
}
seq_putc(p, '\n');
@@ -243,7 +243,7 @@ void free_irq(unsigned int irq, void *dev_id)
printk("Trying to free free shared IRQ%d\n",irq);
goto out_unlock;
}
- } else if (action->flags & IRQF_SHARED) {
+ } else if (action->flags & SA_SHIRQ) {
printk("Trying to free shared IRQ%d with NULL device ID\n", irq);
goto out_unlock;
}
@@ -395,9 +395,9 @@ int request_fast_irq(unsigned int irq,
action = sparc_irq[cpu_irq].action;
if(action) {
- if(action->flags & IRQF_SHARED)
+ if(action->flags & SA_SHIRQ)
panic("Trying to register fast irq when already shared.\n");
- if(irqflags & IRQF_SHARED)
+ if(irqflags & SA_SHIRQ)
panic("Trying to register fast irq as shared.\n");
/* Anyway, someone already owns it so cannot be made fast. */
@@ -497,11 +497,11 @@ int request_irq(unsigned int irq,
actionp = &sparc_irq[cpu_irq].action;
action = *actionp;
if (action) {
- if (!(action->flags & IRQF_SHARED) || !(irqflags & IRQF_SHARED)) {
+ if (!(action->flags & SA_SHIRQ) || !(irqflags & SA_SHIRQ)) {
ret = -EBUSY;
goto out_unlock;
}
- if ((action->flags & IRQF_DISABLED) != (irqflags & IRQF_DISABLED)) {
+ if ((action->flags & SA_INTERRUPT) != (irqflags & SA_INTERRUPT)) {
printk("Attempt to mix fast and slow interrupts on IRQ%d denied\n", irq);
ret = -EBUSY;
goto out_unlock;
diff --git a/trunk/arch/sparc/kernel/pcic.c b/trunk/arch/sparc/kernel/pcic.c
index bfd31aac2df3..22422ff10602 100644
--- a/trunk/arch/sparc/kernel/pcic.c
+++ b/trunk/arch/sparc/kernel/pcic.c
@@ -745,7 +745,7 @@ void __init pci_time_init(void)
writel (PCI_COUNTER_IRQ_SET(timer_irq, 0),
pcic->pcic_regs+PCI_COUNTER_IRQ);
irq = request_irq(timer_irq, pcic_timer_handler,
- (IRQF_DISABLED | SA_STATIC_ALLOC), "timer", NULL);
+ (SA_INTERRUPT | SA_STATIC_ALLOC), "timer", NULL);
if (irq) {
prom_printf("time_init: unable to attach IRQ%d\n", timer_irq);
prom_halt();
diff --git a/trunk/arch/sparc/kernel/sun4c_irq.c b/trunk/arch/sparc/kernel/sun4c_irq.c
index 4be2c86ea540..50e988b9c8c3 100644
--- a/trunk/arch/sparc/kernel/sun4c_irq.c
+++ b/trunk/arch/sparc/kernel/sun4c_irq.c
@@ -179,7 +179,7 @@ static void __init sun4c_init_timers(irqreturn_t (*counter_fn)(int, void *, stru
irq = request_irq(TIMER_IRQ,
counter_fn,
- (IRQF_DISABLED | SA_STATIC_ALLOC),
+ (SA_INTERRUPT | SA_STATIC_ALLOC),
"timer", NULL);
if (irq) {
prom_printf("time_init: unable to attach IRQ%d\n",TIMER_IRQ);
diff --git a/trunk/arch/sparc/kernel/sun4d_irq.c b/trunk/arch/sparc/kernel/sun4d_irq.c
index 74eed9775ac0..cbf8ee81cf5b 100644
--- a/trunk/arch/sparc/kernel/sun4d_irq.c
+++ b/trunk/arch/sparc/kernel/sun4d_irq.c
@@ -107,13 +107,13 @@ found_it: seq_printf(p, "%3d: ", i);
kstat_cpu(cpu_logical_map(x)).irqs[i]);
#endif
seq_printf(p, "%c %s",
- (action->flags & IRQF_DISABLED) ? '+' : ' ',
+ (action->flags & SA_INTERRUPT) ? '+' : ' ',
action->name);
action = action->next;
for (;;) {
for (; action; action = action->next) {
seq_printf(p, ",%s %s",
- (action->flags & IRQF_DISABLED) ? " +" : "",
+ (action->flags & SA_INTERRUPT) ? " +" : "",
action->name);
}
if (!sbusl) break;
@@ -160,7 +160,7 @@ void sun4d_free_irq(unsigned int irq, void *dev_id)
printk("Trying to free free shared IRQ%d\n",irq);
goto out_unlock;
}
- } else if (action->flags & IRQF_SHARED) {
+ } else if (action->flags & SA_SHIRQ) {
printk("Trying to free shared IRQ%d with NULL device ID\n", irq);
goto out_unlock;
}
@@ -298,13 +298,13 @@ int sun4d_request_irq(unsigned int irq,
action = *actionp;
if (action) {
- if ((action->flags & IRQF_SHARED) && (irqflags & IRQF_SHARED)) {
+ if ((action->flags & SA_SHIRQ) && (irqflags & SA_SHIRQ)) {
for (tmp = action; tmp->next; tmp = tmp->next);
} else {
ret = -EBUSY;
goto out_unlock;
}
- if ((action->flags & IRQF_DISABLED) ^ (irqflags & IRQF_DISABLED)) {
+ if ((action->flags & SA_INTERRUPT) ^ (irqflags & SA_INTERRUPT)) {
printk("Attempt to mix fast and slow interrupts on IRQ%d denied\n", irq);
ret = -EBUSY;
goto out_unlock;
@@ -490,7 +490,7 @@ static void __init sun4d_init_timers(irqreturn_t (*counter_fn)(int, void *, stru
irq = request_irq(TIMER_IRQ,
counter_fn,
- (IRQF_DISABLED | SA_STATIC_ALLOC),
+ (SA_INTERRUPT | SA_STATIC_ALLOC),
"timer", NULL);
if (irq) {
prom_printf("time_init: unable to attach IRQ%d\n",TIMER_IRQ);
diff --git a/trunk/arch/sparc/kernel/sun4m_irq.c b/trunk/arch/sparc/kernel/sun4m_irq.c
index 7cefa301efea..38ac672b1149 100644
--- a/trunk/arch/sparc/kernel/sun4m_irq.c
+++ b/trunk/arch/sparc/kernel/sun4m_irq.c
@@ -278,7 +278,7 @@ static void __init sun4m_init_timers(irqreturn_t (*counter_fn)(int, void *, stru
irq = request_irq(TIMER_IRQ,
counter_fn,
- (IRQF_DISABLED | SA_STATIC_ALLOC),
+ (SA_INTERRUPT | SA_STATIC_ALLOC),
"timer", NULL);
if (irq) {
prom_printf("time_init: unable to attach IRQ%d\n",TIMER_IRQ);
diff --git a/trunk/arch/sparc/kernel/tick14.c b/trunk/arch/sparc/kernel/tick14.c
index d3b4daac705f..591547af4c65 100644
--- a/trunk/arch/sparc/kernel/tick14.c
+++ b/trunk/arch/sparc/kernel/tick14.c
@@ -74,7 +74,7 @@ void claim_ticker14(irqreturn_t (*handler)(int, void *, struct pt_regs *),
if (!request_irq(irq_nr,
handler,
- (IRQF_DISABLED | SA_STATIC_ALLOC),
+ (SA_INTERRUPT | SA_STATIC_ALLOC),
"counter14",
NULL)) {
install_linux_ticker();
diff --git a/trunk/arch/sparc64/kernel/ebus.c b/trunk/arch/sparc64/kernel/ebus.c
index 8a9b470e1b65..a1023bb1a217 100644
--- a/trunk/arch/sparc64/kernel/ebus.c
+++ b/trunk/arch/sparc64/kernel/ebus.c
@@ -140,7 +140,7 @@ int ebus_dma_irq_enable(struct ebus_dma_info *p, int on)
if (on) {
if (p->flags & EBUS_DMA_FLAG_USE_EBDMA_HANDLER) {
- if (request_irq(p->irq, ebus_dma_irq, IRQF_SHARED, p->name, p))
+ if (request_irq(p->irq, ebus_dma_irq, SA_SHIRQ, p->name, p))
return -EBUSY;
}
diff --git a/trunk/arch/sparc64/kernel/pci_psycho.c b/trunk/arch/sparc64/kernel/pci_psycho.c
index 197a7ffd57ee..bf7b32b36705 100644
--- a/trunk/arch/sparc64/kernel/pci_psycho.c
+++ b/trunk/arch/sparc64/kernel/pci_psycho.c
@@ -863,11 +863,11 @@ static void psycho_register_error_handlers(struct pci_controller_info *p)
if (op->num_irqs < 6)
return;
- request_irq(op->irqs[1], psycho_ue_intr, IRQF_SHARED, "PSYCHO UE", p);
- request_irq(op->irqs[2], psycho_ce_intr, IRQF_SHARED, "PSYCHO CE", p);
- request_irq(op->irqs[5], psycho_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[1], psycho_ue_intr, SA_SHIRQ, "PSYCHO UE", p);
+ request_irq(op->irqs[2], psycho_ce_intr, SA_SHIRQ, "PSYCHO CE", p);
+ request_irq(op->irqs[5], psycho_pcierr_intr, SA_SHIRQ,
"PSYCHO PCIERR-A", &p->pbm_A);
- request_irq(op->irqs[0], psycho_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[0], psycho_pcierr_intr, SA_SHIRQ,
"PSYCHO PCIERR-B", &p->pbm_B);
/* Enable UE and CE interrupts for controller. */
diff --git a/trunk/arch/sparc64/kernel/pci_sabre.c b/trunk/arch/sparc64/kernel/pci_sabre.c
index 45891850b90d..5e087b0fb4c9 100644
--- a/trunk/arch/sparc64/kernel/pci_sabre.c
+++ b/trunk/arch/sparc64/kernel/pci_sabre.c
@@ -854,14 +854,14 @@ static void sabre_register_error_handlers(struct pci_controller_info *p)
SABRE_UEAFSR_SDRD | SABRE_UEAFSR_SDWR |
SABRE_UEAFSR_SDTE | SABRE_UEAFSR_PDTE));
- request_irq(op->irqs[1], sabre_ue_intr, IRQF_SHARED, "SABRE UE", p);
+ request_irq(op->irqs[1], sabre_ue_intr, SA_SHIRQ, "SABRE UE", p);
sabre_write(base + SABRE_CE_AFSR,
(SABRE_CEAFSR_PDRD | SABRE_CEAFSR_PDWR |
SABRE_CEAFSR_SDRD | SABRE_CEAFSR_SDWR));
- request_irq(op->irqs[2], sabre_ce_intr, IRQF_SHARED, "SABRE CE", p);
- request_irq(op->irqs[0], sabre_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[2], sabre_ce_intr, SA_SHIRQ, "SABRE CE", p);
+ request_irq(op->irqs[0], sabre_pcierr_intr, SA_SHIRQ,
"SABRE PCIERR", p);
tmp = sabre_read(base + SABRE_PCICTRL);
diff --git a/trunk/arch/sparc64/kernel/pci_schizo.c b/trunk/arch/sparc64/kernel/pci_schizo.c
index 75ade83ecc65..5c6e2a9b91f8 100644
--- a/trunk/arch/sparc64/kernel/pci_schizo.c
+++ b/trunk/arch/sparc64/kernel/pci_schizo.c
@@ -998,32 +998,32 @@ static void tomatillo_register_error_handlers(struct pci_controller_info *p)
pbm = pbm_for_ino(p, SCHIZO_UE_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[1], schizo_ue_intr, IRQF_SHARED,
+ request_irq(op->irqs[1], schizo_ue_intr, SA_SHIRQ,
"TOMATILLO_UE", p);
pbm = pbm_for_ino(p, SCHIZO_CE_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[2], schizo_ce_intr, IRQF_SHARED,
+ request_irq(op->irqs[2], schizo_ce_intr, SA_SHIRQ,
"TOMATILLO CE", p);
pbm = pbm_for_ino(p, SCHIZO_PCIERR_A_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[0], schizo_pcierr_intr, SA_SHIRQ,
"TOMATILLO PCIERR-A", pbm);
pbm = pbm_for_ino(p, SCHIZO_PCIERR_B_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[0], schizo_pcierr_intr, SA_SHIRQ,
"TOMATILLO PCIERR-B", pbm);
pbm = pbm_for_ino(p, SCHIZO_SERR_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[3], schizo_safarierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[3], schizo_safarierr_intr, SA_SHIRQ,
"TOMATILLO SERR", p);
/* Enable UE and CE interrupts for controller. */
@@ -1106,32 +1106,32 @@ static void schizo_register_error_handlers(struct pci_controller_info *p)
pbm = pbm_for_ino(p, SCHIZO_UE_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[1], schizo_ue_intr, IRQF_SHARED,
+ request_irq(op->irqs[1], schizo_ue_intr, SA_SHIRQ,
"SCHIZO_UE", p);
pbm = pbm_for_ino(p, SCHIZO_CE_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[2], schizo_ce_intr, IRQF_SHARED,
+ request_irq(op->irqs[2], schizo_ce_intr, SA_SHIRQ,
"SCHIZO CE", p);
pbm = pbm_for_ino(p, SCHIZO_PCIERR_A_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[0], schizo_pcierr_intr, SA_SHIRQ,
"SCHIZO PCIERR-A", pbm);
pbm = pbm_for_ino(p, SCHIZO_PCIERR_B_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[0], schizo_pcierr_intr, SA_SHIRQ,
"SCHIZO PCIERR-B", pbm);
pbm = pbm_for_ino(p, SCHIZO_SERR_INO);
op = of_find_device_by_node(pbm->prom_node);
if (op)
- request_irq(op->irqs[3], schizo_safarierr_intr, IRQF_SHARED,
+ request_irq(op->irqs[3], schizo_safarierr_intr, SA_SHIRQ,
"SCHIZO SERR", p);
/* Enable UE and CE interrupts for controller. */
diff --git a/trunk/arch/sparc64/kernel/sbus.c b/trunk/arch/sparc64/kernel/sbus.c
index c49a57795743..ef68aa4fec65 100644
--- a/trunk/arch/sparc64/kernel/sbus.c
+++ b/trunk/arch/sparc64/kernel/sbus.c
@@ -1065,7 +1065,7 @@ static void __init sysio_register_error_handlers(struct sbus_bus *sbus)
irq = sbus_build_irq(sbus, SYSIO_UE_INO);
if (request_irq(irq, sysio_ue_handler,
- IRQF_SHARED, "SYSIO UE", sbus) < 0) {
+ SA_SHIRQ, "SYSIO UE", sbus) < 0) {
prom_printf("SYSIO[%x]: Cannot register UE interrupt.\n",
sbus->portid);
prom_halt();
@@ -1073,7 +1073,7 @@ static void __init sysio_register_error_handlers(struct sbus_bus *sbus)
irq = sbus_build_irq(sbus, SYSIO_CE_INO);
if (request_irq(irq, sysio_ce_handler,
- IRQF_SHARED, "SYSIO CE", sbus) < 0) {
+ SA_SHIRQ, "SYSIO CE", sbus) < 0) {
prom_printf("SYSIO[%x]: Cannot register CE interrupt.\n",
sbus->portid);
prom_halt();
@@ -1081,7 +1081,7 @@ static void __init sysio_register_error_handlers(struct sbus_bus *sbus)
irq = sbus_build_irq(sbus, SYSIO_SBUSERR_INO);
if (request_irq(irq, sysio_sbus_error_handler,
- IRQF_SHARED, "SYSIO SBUS Error", sbus) < 0) {
+ SA_SHIRQ, "SYSIO SBUS Error", sbus) < 0) {
prom_printf("SYSIO[%x]: Cannot register SBUS Error interrupt.\n",
sbus->portid);
prom_halt();
diff --git a/trunk/arch/um/drivers/line.c b/trunk/arch/um/drivers/line.c
index ebebaabb78ad..5ca57ca33713 100644
--- a/trunk/arch/um/drivers/line.c
+++ b/trunk/arch/um/drivers/line.c
@@ -373,7 +373,7 @@ static irqreturn_t line_write_interrupt(int irq, void *data,
int err;
/* Interrupts are enabled here because we registered the interrupt with
- * IRQF_DISABLED (see line_setup_irq).*/
+ * SA_INTERRUPT (see line_setup_irq).*/
spin_lock_irq(&line->lock);
err = flush_buffer(line);
@@ -406,7 +406,7 @@ static irqreturn_t line_write_interrupt(int irq, void *data,
int line_setup_irq(int fd, int input, int output, struct line *line, void *data)
{
struct line_driver *driver = line->driver;
- int err = 0, flags = IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM;
+ int err = 0, flags = SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM;
if (input)
err = um_request_irq(driver->read_irq, fd, IRQ_READ,
@@ -767,7 +767,7 @@ void register_winch_irq(int fd, int tty_fd, int pid, struct tty_struct *tty)
spin_unlock(&winch_handler_lock);
if(um_request_irq(WINCH_IRQ, fd, IRQ_READ, winch_interrupt,
- IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM,
"winch", winch) < 0)
printk("register_winch_irq - failed to register IRQ\n");
}
diff --git a/trunk/arch/um/drivers/mconsole_kern.c b/trunk/arch/um/drivers/mconsole_kern.c
index b414522f7686..79149314ed04 100644
--- a/trunk/arch/um/drivers/mconsole_kern.c
+++ b/trunk/arch/um/drivers/mconsole_kern.c
@@ -777,7 +777,7 @@ static int mconsole_init(void)
register_reboot_notifier(&reboot_notifier);
err = um_request_irq(MCONSOLE_IRQ, sock, IRQ_READ, mconsole_interrupt,
- IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM,
"mconsole", (void *)sock);
if (err){
printk("Failed to get IRQ for management console\n");
diff --git a/trunk/arch/um/drivers/net_kern.c b/trunk/arch/um/drivers/net_kern.c
index 501f95675d89..8c7279bb353b 100644
--- a/trunk/arch/um/drivers/net_kern.c
+++ b/trunk/arch/um/drivers/net_kern.c
@@ -128,7 +128,7 @@ static int uml_net_open(struct net_device *dev)
}
err = um_request_irq(dev->irq, lp->fd, IRQ_READ, uml_net_interrupt,
- IRQF_DISABLED | IRQF_SHARED, dev->name, dev);
+ SA_INTERRUPT | SA_SHIRQ, dev->name, dev);
if(err != 0){
printk(KERN_ERR "uml_net_open: failed to get irq(%d)\n", err);
err = -ENETUNREACH;
diff --git a/trunk/arch/um/drivers/port_kern.c b/trunk/arch/um/drivers/port_kern.c
index 73755f37a8a8..189839e4f1d4 100644
--- a/trunk/arch/um/drivers/port_kern.c
+++ b/trunk/arch/um/drivers/port_kern.c
@@ -105,7 +105,7 @@ static int port_accept(struct port_list *port)
.port = port });
if(um_request_irq(TELNETD_IRQ, socket[0], IRQ_READ, pipe_interrupt,
- IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM,
"telnetd", conn)){
printk(KERN_ERR "port_accept : failed to get IRQ for "
"telnetd\n");
@@ -186,7 +186,7 @@ void *port_data(int port_num)
goto out_free;
}
if(um_request_irq(ACCEPT_IRQ, fd, IRQ_READ, port_interrupt,
- IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, "port",
+ SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM, "port",
port)){
printk(KERN_ERR "Failed to get IRQ for port %d\n", port_num);
goto out_close;
diff --git a/trunk/arch/um/drivers/ubd_kern.c b/trunk/arch/um/drivers/ubd_kern.c
index 602d7286b9e0..0345e2551247 100644
--- a/trunk/arch/um/drivers/ubd_kern.c
+++ b/trunk/arch/um/drivers/ubd_kern.c
@@ -874,7 +874,7 @@ int ubd_driver_init(void){
return(0);
}
err = um_request_irq(UBD_IRQ, thread_fd, IRQ_READ, ubd_intr,
- IRQF_DISABLED, "ubd", ubd_dev);
+ SA_INTERRUPT, "ubd", ubd_dev);
if(err != 0)
printk(KERN_ERR "um_request_irq failed - errno = %d\n", -err);
return 0;
diff --git a/trunk/arch/um/drivers/xterm_kern.c b/trunk/arch/um/drivers/xterm_kern.c
index 6036ec85895a..d269a80f4b0c 100644
--- a/trunk/arch/um/drivers/xterm_kern.c
+++ b/trunk/arch/um/drivers/xterm_kern.c
@@ -54,7 +54,7 @@ int xterm_fd(int socket, int *pid_out)
init_completion(&data->ready);
err = um_request_irq(XTERM_IRQ, socket, IRQ_READ, xterm_interrupt,
- IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM,
"xterm", data);
if (err){
printk(KERN_ERR "xterm_fd : failed to get IRQ for xterm, "
diff --git a/trunk/arch/um/kernel/irq.c b/trunk/arch/um/kernel/irq.c
index bfd0bdc8cd40..fae43a3054a0 100644
--- a/trunk/arch/um/kernel/irq.c
+++ b/trunk/arch/um/kernel/irq.c
@@ -474,7 +474,7 @@ int init_aio_irq(int irq, char *name, irqreturn_t (*handler)(int, void *,
}
err = um_request_irq(irq, fds[0], IRQ_READ, handler,
- IRQF_DISABLED | IRQF_SAMPLE_RANDOM, name,
+ SA_INTERRUPT | SA_SAMPLE_RANDOM, name,
(void *) (long) fds[0]);
if (err) {
printk("init_aio_irq - : um_request_irq failed, err = %d\n",
diff --git a/trunk/arch/um/kernel/sigio_kern.c b/trunk/arch/um/kernel/sigio_kern.c
index 51b677083948..1c1300fb1e95 100644
--- a/trunk/arch/um/kernel/sigio_kern.c
+++ b/trunk/arch/um/kernel/sigio_kern.c
@@ -31,7 +31,7 @@ int write_sigio_irq(int fd)
int err;
err = um_request_irq(SIGIO_WRITE_IRQ, fd, IRQ_READ, sigio_interrupt,
- IRQF_DISABLED | IRQF_SAMPLE_RANDOM, "write sigio",
+ SA_INTERRUPT | SA_SAMPLE_RANDOM, "write sigio",
NULL);
if(err){
printk("write_sigio_irq : um_request_irq failed, err = %d\n",
diff --git a/trunk/arch/um/kernel/time_kern.c b/trunk/arch/um/kernel/time_kern.c
index d7e044b5e5ee..820fa3615a3f 100644
--- a/trunk/arch/um/kernel/time_kern.c
+++ b/trunk/arch/um/kernel/time_kern.c
@@ -195,7 +195,7 @@ int __init timer_init(void)
int err;
user_time_init();
- err = request_irq(TIMER_IRQ, um_timer, IRQF_DISABLED, "timer", NULL);
+ err = request_irq(TIMER_IRQ, um_timer, SA_INTERRUPT, "timer", NULL);
if(err != 0)
printk(KERN_ERR "timer_init : request_irq failed - "
"errno = %d\n", -err);
diff --git a/trunk/arch/v850/kernel/gbus_int.c b/trunk/arch/v850/kernel/gbus_int.c
index 25d636e79e6a..92918b8d89ef 100644
--- a/trunk/arch/v850/kernel/gbus_int.c
+++ b/trunk/arch/v850/kernel/gbus_int.c
@@ -154,7 +154,7 @@ static unsigned gbus_int_startup_irq (unsigned irq)
/* First enable the CPU interrupt. */
int rval =
request_irq (IRQ_GINT(gint), gbus_int_handle_irq,
- IRQF_DISABLED,
+ SA_INTERRUPT,
"gbus_int_handler",
&gint_num_active_irqs[gint]);
if (rval != 0)
diff --git a/trunk/arch/v850/kernel/rte_me2_cb.c b/trunk/arch/v850/kernel/rte_me2_cb.c
index 3be355a029e2..df7027d85437 100644
--- a/trunk/arch/v850/kernel/rte_me2_cb.c
+++ b/trunk/arch/v850/kernel/rte_me2_cb.c
@@ -263,7 +263,7 @@ static unsigned cb_pic_startup_irq (unsigned irq)
if (cb_pic_active_irqs == 0) {
rval = request_irq (IRQ_CB_PIC, cb_pic_handle_irq,
- IRQF_DISABLED, "cb_pic_handler", 0);
+ SA_INTERRUPT, "cb_pic_handler", 0);
if (rval != 0)
return rval;
}
diff --git a/trunk/arch/v850/kernel/time.c b/trunk/arch/v850/kernel/time.c
index a0b46695f186..c1e85c2aef65 100644
--- a/trunk/arch/v850/kernel/time.c
+++ b/trunk/arch/v850/kernel/time.c
@@ -177,7 +177,7 @@ EXPORT_SYMBOL(do_settimeofday);
static int timer_dev_id;
static struct irqaction timer_irqaction = {
timer_interrupt,
- IRQF_DISABLED,
+ SA_INTERRUPT,
CPU_MASK_NONE,
"timer",
&timer_dev_id,
diff --git a/trunk/arch/x86_64/kernel/time.c b/trunk/arch/x86_64/kernel/time.c
index b9ff75992c16..ebbee6f59ff5 100644
--- a/trunk/arch/x86_64/kernel/time.c
+++ b/trunk/arch/x86_64/kernel/time.c
@@ -889,7 +889,7 @@ int __init time_setup(char *str)
}
static struct irqaction irq0 = {
- timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL
+ timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL
};
void __init time_init(void)
diff --git a/trunk/arch/xtensa/kernel/time.c b/trunk/arch/xtensa/kernel/time.c
index 412ab32de391..4a2c365ba684 100644
--- a/trunk/arch/xtensa/kernel/time.c
+++ b/trunk/arch/xtensa/kernel/time.c
@@ -52,7 +52,7 @@ unsigned long long sched_clock(void)
static irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs);
static struct irqaction timer_irqaction = {
.handler = timer_interrupt,
- .flags = IRQF_DISABLED,
+ .flags = SA_INTERRUPT,
.name = "timer",
};
diff --git a/trunk/drivers/acorn/block/mfmhd.c b/trunk/drivers/acorn/block/mfmhd.c
index 3dd6b7bb5d35..d9c9a35961b3 100644
--- a/trunk/drivers/acorn/block/mfmhd.c
+++ b/trunk/drivers/acorn/block/mfmhd.c
@@ -1278,7 +1278,7 @@ static int mfm_do_init(unsigned char irqmask)
printk("mfm: detected %d hard drive%s\n", mfm_drives,
mfm_drives == 1 ? "" : "s");
- ret = request_irq(mfm_irq, mfm_interrupt_handler, IRQF_DISABLED, "MFM harddisk", NULL);
+ ret = request_irq(mfm_irq, mfm_interrupt_handler, SA_INTERRUPT, "MFM harddisk", NULL);
if (ret) {
printk("mfm: unable to get IRQ%d\n", mfm_irq);
goto out4;
diff --git a/trunk/drivers/acpi/osl.c b/trunk/drivers/acpi/osl.c
index 5a468e2779ae..5dd2ed11a387 100644
--- a/trunk/drivers/acpi/osl.c
+++ b/trunk/drivers/acpi/osl.c
@@ -280,7 +280,7 @@ acpi_os_install_interrupt_handler(u32 gsi, acpi_osd_handler handler,
acpi_irq_handler = handler;
acpi_irq_context = context;
- if (request_irq(irq, acpi_irq, IRQF_SHARED, "acpi", acpi_irq)) {
+ if (request_irq(irq, acpi_irq, SA_SHIRQ, "acpi", acpi_irq)) {
printk(KERN_ERR PREFIX "SCI (IRQ%d) allocation failed\n", irq);
return AE_NOT_ACQUIRED;
}
diff --git a/trunk/drivers/atm/ambassador.c b/trunk/drivers/atm/ambassador.c
index d3b426313a41..4048681f36d5 100644
--- a/trunk/drivers/atm/ambassador.c
+++ b/trunk/drivers/atm/ambassador.c
@@ -2286,7 +2286,7 @@ static int __devinit amb_probe(struct pci_dev *pci_dev, const struct pci_device_
setup_pci_dev(pci_dev);
// grab (but share) IRQ and install handler
- err = request_irq(irq, interrupt_handler, IRQF_SHARED, DEV_LABEL, dev);
+ err = request_irq(irq, interrupt_handler, SA_SHIRQ, DEV_LABEL, dev);
if (err < 0) {
PRINTK (KERN_ERR, "request IRQ failed!");
goto out_reset;
diff --git a/trunk/drivers/atm/eni.c b/trunk/drivers/atm/eni.c
index df359a6c14f6..976ced1f019e 100644
--- a/trunk/drivers/atm/eni.c
+++ b/trunk/drivers/atm/eni.c
@@ -1797,7 +1797,7 @@ static int __devinit eni_start(struct atm_dev *dev)
DPRINTK(">eni_start\n");
eni_dev = ENI_DEV(dev);
- if (request_irq(eni_dev->irq,&eni_int,IRQF_SHARED,DEV_LABEL,dev)) {
+ if (request_irq(eni_dev->irq,&eni_int,SA_SHIRQ,DEV_LABEL,dev)) {
printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",
dev->number,eni_dev->irq);
error = -EAGAIN;
diff --git a/trunk/drivers/atm/firestream.c b/trunk/drivers/atm/firestream.c
index 38fc054bd671..d40605c1af73 100644
--- a/trunk/drivers/atm/firestream.c
+++ b/trunk/drivers/atm/firestream.c
@@ -1829,7 +1829,7 @@ static int __devinit fs_init (struct fs_dev *dev)
init_q (dev, &dev->rx_rq[i], RXB_RQ(i), RXRQ_NENTRIES, 1);
dev->irq = pci_dev->irq;
- if (request_irq (dev->irq, fs_irq, IRQF_SHARED, "firestream", dev)) {
+ if (request_irq (dev->irq, fs_irq, SA_SHIRQ, "firestream", dev)) {
printk (KERN_WARNING "couldn't get irq %d for firestream.\n", pci_dev->irq);
/* XXX undo all previous stuff... */
return 1;
diff --git a/trunk/drivers/atm/fore200e.c b/trunk/drivers/atm/fore200e.c
index 98622130de5b..9be9a4055199 100644
--- a/trunk/drivers/atm/fore200e.c
+++ b/trunk/drivers/atm/fore200e.c
@@ -2123,7 +2123,7 @@ fore200e_change_qos(struct atm_vcc* vcc,struct atm_qos* qos, int flags)
static int __devinit
fore200e_irq_request(struct fore200e* fore200e)
{
- if (request_irq(fore200e->irq, fore200e_interrupt, IRQF_SHARED, fore200e->name, fore200e->atm_dev) < 0) {
+ if (request_irq(fore200e->irq, fore200e_interrupt, SA_SHIRQ, fore200e->name, fore200e->atm_dev) < 0) {
printk(FORE200E "unable to reserve IRQ %s for device %s\n",
fore200e_irq_itoa(fore200e->irq), fore200e->name);
diff --git a/trunk/drivers/atm/he.c b/trunk/drivers/atm/he.c
index d369130f4235..a5cbd3d6e50f 100644
--- a/trunk/drivers/atm/he.c
+++ b/trunk/drivers/atm/he.c
@@ -1007,7 +1007,7 @@ he_init_irq(struct he_dev *he_dev)
he_writel(he_dev, 0x0, GRP_54_MAP);
he_writel(he_dev, 0x0, GRP_76_MAP);
- if (request_irq(he_dev->pci_dev->irq, he_irq_handler, IRQF_DISABLED|IRQF_SHARED, DEV_LABEL, he_dev)) {
+ if (request_irq(he_dev->pci_dev->irq, he_irq_handler, SA_INTERRUPT|SA_SHIRQ, DEV_LABEL, he_dev)) {
hprintk("irq %d already in use\n", he_dev->pci_dev->irq);
return -EINVAL;
}
diff --git a/trunk/drivers/atm/horizon.c b/trunk/drivers/atm/horizon.c
index d1113e845f95..821c81e8cd38 100644
--- a/trunk/drivers/atm/horizon.c
+++ b/trunk/drivers/atm/horizon.c
@@ -2735,7 +2735,7 @@ static int __devinit hrz_probe(struct pci_dev *pci_dev, const struct pci_device_
irq = pci_dev->irq;
if (request_irq(irq,
interrupt_handler,
- IRQF_SHARED, /* irqflags guess */
+ SA_SHIRQ, /* irqflags guess */
DEV_LABEL, /* name guess */
dev)) {
PRINTD(DBG_WARN, "request IRQ failed!");
diff --git a/trunk/drivers/atm/idt77252.c b/trunk/drivers/atm/idt77252.c
index 5d1c6c95262c..8fdb30116f99 100644
--- a/trunk/drivers/atm/idt77252.c
+++ b/trunk/drivers/atm/idt77252.c
@@ -3386,7 +3386,7 @@ init_card(struct atm_dev *dev)
writel(SAR_STAT_TMROF, SAR_REG_STAT);
}
IPRINTK("%s: Request IRQ ... ", card->name);
- if (request_irq(pcidev->irq, idt77252_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pcidev->irq, idt77252_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->name, card) != 0) {
printk("%s: can't allocate IRQ.\n", card->name);
deinit_card(card);
diff --git a/trunk/drivers/atm/iphase.c b/trunk/drivers/atm/iphase.c
index f20b0b2c06c6..333a7bc609d2 100644
--- a/trunk/drivers/atm/iphase.c
+++ b/trunk/drivers/atm/iphase.c
@@ -2488,7 +2488,7 @@ static int __devinit ia_start(struct atm_dev *dev)
u32 ctrl_reg;
IF_EVENT(printk(">ia_start\n");)
iadev = INPH_IA_DEV(dev);
- if (request_irq(iadev->irq, &ia_int, IRQF_SHARED, DEV_LABEL, dev)) {
+ if (request_irq(iadev->irq, &ia_int, SA_SHIRQ, DEV_LABEL, dev)) {
printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",
dev->number, iadev->irq);
error = -EAGAIN;
diff --git a/trunk/drivers/atm/lanai.c b/trunk/drivers/atm/lanai.c
index fe60a59b7fc0..cac09e353be8 100644
--- a/trunk/drivers/atm/lanai.c
+++ b/trunk/drivers/atm/lanai.c
@@ -2240,7 +2240,7 @@ static int __devinit lanai_dev_open(struct atm_dev *atmdev)
conf2_write(lanai);
reg_write(lanai, TX_FIFO_DEPTH, TxDepth_Reg);
reg_write(lanai, 0, CBR_ICG_Reg); /* CBR defaults to no limit */
- if ((result = request_irq(lanai->pci->irq, lanai_int, IRQF_SHARED,
+ if ((result = request_irq(lanai->pci->irq, lanai_int, SA_SHIRQ,
DEV_LABEL, lanai)) != 0) {
printk(KERN_ERR DEV_LABEL ": can't allocate interrupt\n");
goto error_vcctable;
diff --git a/trunk/drivers/atm/nicstar.c b/trunk/drivers/atm/nicstar.c
index b8036899e56f..b78612d3fa46 100644
--- a/trunk/drivers/atm/nicstar.c
+++ b/trunk/drivers/atm/nicstar.c
@@ -625,7 +625,7 @@ static int __devinit ns_init_card(int i, struct pci_dev *pcidev)
if (mac[i] == NULL)
nicstar_init_eprom(card->membase);
- if (request_irq(pcidev->irq, &ns_irq_handler, IRQF_DISABLED | IRQF_SHARED, "nicstar", card) != 0)
+ if (request_irq(pcidev->irq, &ns_irq_handler, SA_INTERRUPT | SA_SHIRQ, "nicstar", card) != 0)
{
printk("nicstar%d: can't allocate IRQ %d.\n", i, pcidev->irq);
error = 9;
diff --git a/trunk/drivers/atm/zatm.c b/trunk/drivers/atm/zatm.c
index 2c65e82f0d6b..1699c934bad0 100644
--- a/trunk/drivers/atm/zatm.c
+++ b/trunk/drivers/atm/zatm.c
@@ -1270,7 +1270,7 @@ static int __init zatm_start(struct atm_dev *dev)
zatm_dev->rx_map = zatm_dev->tx_map = NULL;
for (i = 0; i < NR_MBX; i++)
zatm_dev->mbx_start[i] = 0;
- error = request_irq(zatm_dev->irq, zatm_int, IRQF_SHARED, DEV_LABEL, dev);
+ error = request_irq(zatm_dev->irq, zatm_int, SA_SHIRQ, DEV_LABEL, dev);
if (error < 0) {
printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",
dev->number,zatm_dev->irq);
diff --git a/trunk/drivers/block/DAC960.c b/trunk/drivers/block/DAC960.c
index 4cd23c3eab41..50ca1aa4ee3b 100644
--- a/trunk/drivers/block/DAC960.c
+++ b/trunk/drivers/block/DAC960.c
@@ -3014,7 +3014,7 @@ DAC960_DetectController(struct pci_dev *PCI_Device,
Acquire shared access to the IRQ Channel.
*/
IRQ_Channel = PCI_Device->irq;
- if (request_irq(IRQ_Channel, InterruptHandler, IRQF_SHARED,
+ if (request_irq(IRQ_Channel, InterruptHandler, SA_SHIRQ,
Controller->FullModelName, Controller) < 0)
{
DAC960_Error("Unable to acquire IRQ Channel %d for Controller at\n",
diff --git a/trunk/drivers/block/cciss.c b/trunk/drivers/block/cciss.c
index 1c4df22dfd2a..05fb08312c01 100644
--- a/trunk/drivers/block/cciss.c
+++ b/trunk/drivers/block/cciss.c
@@ -3159,7 +3159,7 @@ static int __devinit cciss_init_one(struct pci_dev *pdev,
/* make sure the board interrupts are off */
hba[i]->access.set_intr_mask(hba[i], CCISS_INTR_OFF);
if (request_irq(hba[i]->intr[SIMPLE_MODE_INT], do_cciss_intr,
- IRQF_DISABLED | IRQF_SHARED, hba[i]->devname, hba[i])) {
+ SA_INTERRUPT | SA_SHIRQ, hba[i]->devname, hba[i])) {
printk(KERN_ERR "cciss: Unable to get irq %d for %s\n",
hba[i]->intr[SIMPLE_MODE_INT], hba[i]->devname);
goto clean2;
diff --git a/trunk/drivers/block/cpqarray.c b/trunk/drivers/block/cpqarray.c
index 757f42dd8e86..bfd245df0a8c 100644
--- a/trunk/drivers/block/cpqarray.c
+++ b/trunk/drivers/block/cpqarray.c
@@ -408,7 +408,7 @@ static int __init cpqarray_register_ctlr( int i, struct pci_dev *pdev)
}
hba[i]->access.set_intr_mask(hba[i], 0);
if (request_irq(hba[i]->intr, do_ida_intr,
- IRQF_DISABLED|IRQF_SHARED, hba[i]->devname, hba[i]))
+ SA_INTERRUPT|SA_SHIRQ, hba[i]->devname, hba[i]))
{
printk(KERN_ERR "cpqarray: Unable to get irq %d for %s\n",
hba[i]->intr, hba[i]->devname);
diff --git a/trunk/drivers/block/ps2esdi.c b/trunk/drivers/block/ps2esdi.c
index 5537974fb242..aef5a0ccabc9 100644
--- a/trunk/drivers/block/ps2esdi.c
+++ b/trunk/drivers/block/ps2esdi.c
@@ -340,9 +340,9 @@ static int __init ps2esdi_geninit(void)
/* try to grab IRQ, and try to grab a slow IRQ if it fails, so we can
share with the SCSI driver */
if (request_irq(PS2ESDI_IRQ, ps2esdi_interrupt_handler,
- IRQF_DISABLED | IRQF_SHARED, "PS/2 ESDI", &ps2esdi_gendisk)
+ SA_INTERRUPT | SA_SHIRQ, "PS/2 ESDI", &ps2esdi_gendisk)
&& request_irq(PS2ESDI_IRQ, ps2esdi_interrupt_handler,
- IRQF_SHARED, "PS/2 ESDI", &ps2esdi_gendisk)
+ SA_SHIRQ, "PS/2 ESDI", &ps2esdi_gendisk)
) {
printk("%s: Unable to get IRQ %d\n", DEVICE_NAME, PS2ESDI_IRQ);
error = -EBUSY;
diff --git a/trunk/drivers/block/sx8.c b/trunk/drivers/block/sx8.c
index c6beee18a07c..10a4aa5fb54d 100644
--- a/trunk/drivers/block/sx8.c
+++ b/trunk/drivers/block/sx8.c
@@ -1676,7 +1676,7 @@ static int carm_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
pci_set_master(pdev);
- rc = request_irq(pdev->irq, carm_interrupt, IRQF_SHARED, DRV_NAME, host);
+ rc = request_irq(pdev->irq, carm_interrupt, SA_SHIRQ, DRV_NAME, host);
if (rc) {
printk(KERN_ERR DRV_NAME "(%s): irq alloc failure\n",
pci_name(pdev));
diff --git a/trunk/drivers/block/umem.c b/trunk/drivers/block/umem.c
index 5d8925bd9045..f675f97f2a78 100644
--- a/trunk/drivers/block/umem.c
+++ b/trunk/drivers/block/umem.c
@@ -1040,7 +1040,7 @@ static int __devinit mm_pci_probe(struct pci_dev *dev, const struct pci_device_i
card->win_size = data;
- if (request_irq(dev->irq, mm_interrupt, IRQF_SHARED, "pci-umem", card)) {
+ if (request_irq(dev->irq, mm_interrupt, SA_SHIRQ, "pci-umem", card)) {
printk(KERN_ERR "MM%d: Unable to allocate IRQ\n", card->card_number);
ret = -ENODEV;
diff --git a/trunk/drivers/cdrom/cdu31a.c b/trunk/drivers/cdrom/cdu31a.c
index 37bdb0163f0d..5f0f2027f29e 100644
--- a/trunk/drivers/cdrom/cdu31a.c
+++ b/trunk/drivers/cdrom/cdu31a.c
@@ -3141,7 +3141,7 @@ int __init cdu31a_init(void)
if (cdu31a_irq > 0) {
if (request_irq
- (cdu31a_irq, cdu31a_interrupt, IRQF_DISABLED,
+ (cdu31a_irq, cdu31a_interrupt, SA_INTERRUPT,
"cdu31a", NULL)) {
printk(KERN_WARNING PFX "Unable to grab IRQ%d for "
"the CDU31A driver\n", cdu31a_irq);
diff --git a/trunk/drivers/cdrom/mcdx.c b/trunk/drivers/cdrom/mcdx.c
index dcd1ab684f3e..788c7a0b2fe3 100644
--- a/trunk/drivers/cdrom/mcdx.c
+++ b/trunk/drivers/cdrom/mcdx.c
@@ -1193,7 +1193,7 @@ static int __init mcdx_init_drive(int drive)
}
xtrace(INIT, "init() subscribe irq and i/o\n");
- if (request_irq(stuffp->irq, mcdx_intr, IRQF_DISABLED, "mcdx", stuffp)) {
+ if (request_irq(stuffp->irq, mcdx_intr, SA_INTERRUPT, "mcdx", stuffp)) {
release_region(stuffp->wreg_data, MCDX_IO_SIZE);
xwarn("%s=0x%03x,%d: Init failed. Can't get irq (%d).\n",
MCDX, stuffp->wreg_data, stuffp->irq, stuffp->irq);
diff --git a/trunk/drivers/cdrom/sonycd535.c b/trunk/drivers/cdrom/sonycd535.c
index 30ab56258a92..8f7cc452af8d 100644
--- a/trunk/drivers/cdrom/sonycd535.c
+++ b/trunk/drivers/cdrom/sonycd535.c
@@ -1527,7 +1527,7 @@ static int __init sony535_init(void)
}
if (sony535_irq_used > 0) {
if (request_irq(sony535_irq_used, cdu535_interrupt,
- IRQF_DISABLED, CDU535_HANDLE, NULL)) {
+ SA_INTERRUPT, CDU535_HANDLE, NULL)) {
printk("Unable to grab IRQ%d for the " CDU535_MESSAGE_NAME
" driver; polling instead.\n", sony535_irq_used);
sony535_irq_used = 0;
diff --git a/trunk/drivers/char/amiserial.c b/trunk/drivers/char/amiserial.c
index 9d6713a93ed7..3e7dc7cbd740 100644
--- a/trunk/drivers/char/amiserial.c
+++ b/trunk/drivers/char/amiserial.c
@@ -2051,7 +2051,7 @@ static int __init rs_init(void)
/* set ISRs, and then disable the rx interrupts */
request_irq(IRQ_AMIGA_TBE, ser_tx_int, 0, "serial TX", state);
- request_irq(IRQ_AMIGA_RBF, ser_rx_int, IRQF_DISABLED, "serial RX", state);
+ request_irq(IRQ_AMIGA_RBF, ser_rx_int, SA_INTERRUPT, "serial RX", state);
/* turn off Rx and Tx interrupts */
custom.intena = IF_RBF | IF_TBE;
diff --git a/trunk/drivers/char/applicom.c b/trunk/drivers/char/applicom.c
index bcc4668835b5..72fb60765c45 100644
--- a/trunk/drivers/char/applicom.c
+++ b/trunk/drivers/char/applicom.c
@@ -229,7 +229,7 @@ static int __init applicom_init(void)
continue;
}
- if (request_irq(dev->irq, &ac_interrupt, IRQF_SHARED, "Applicom PCI", &dummy)) {
+ if (request_irq(dev->irq, &ac_interrupt, SA_SHIRQ, "Applicom PCI", &dummy)) {
printk(KERN_INFO "Could not allocate IRQ %d for PCI Applicom device.\n", dev->irq);
iounmap(RamIO);
pci_disable_device(dev);
@@ -276,7 +276,7 @@ static int __init applicom_init(void)
printk(KERN_NOTICE "Applicom ISA card found at mem 0x%lx, irq %d\n", mem + (LEN_RAM_IO*i), irq);
if (!numisa) {
- if (request_irq(irq, &ac_interrupt, IRQF_SHARED, "Applicom ISA", &dummy)) {
+ if (request_irq(irq, &ac_interrupt, SA_SHIRQ, "Applicom ISA", &dummy)) {
printk(KERN_WARNING "Could not allocate IRQ %d for ISA Applicom device.\n", irq);
iounmap(RamIO);
apbs[boardno - 1].RamIO = NULL;
diff --git a/trunk/drivers/char/cyclades.c b/trunk/drivers/char/cyclades.c
index c1c67281750d..1f61a6744a26 100644
--- a/trunk/drivers/char/cyclades.c
+++ b/trunk/drivers/char/cyclades.c
@@ -4612,7 +4612,7 @@ cy_detect_isa(void)
/* allocate IRQ */
if(request_irq(cy_isa_irq, cyy_interrupt,
- IRQF_DISABLED, "Cyclom-Y", &cy_card[j]))
+ SA_INTERRUPT, "Cyclom-Y", &cy_card[j]))
{
printk("Cyclom-Y/ISA found at 0x%lx ",
(unsigned long) cy_isa_address);
@@ -4785,7 +4785,7 @@ cy_detect_pci(void)
/* allocate IRQ */
if(request_irq(cy_pci_irq, cyy_interrupt,
- IRQF_SHARED, "Cyclom-Y", &cy_card[j]))
+ SA_SHIRQ, "Cyclom-Y", &cy_card[j]))
{
printk("Cyclom-Y/PCI found at 0x%lx ",
(ulong) cy_pci_phys2);
@@ -4965,7 +4965,7 @@ cy_detect_pci(void)
/* allocate IRQ only if board has an IRQ */
if( (cy_pci_irq != 0) && (cy_pci_irq != 255) ) {
if(request_irq(cy_pci_irq, cyz_interrupt,
- IRQF_SHARED, "Cyclades-Z", &cy_card[j]))
+ SA_SHIRQ, "Cyclades-Z", &cy_card[j]))
{
printk("Cyclom-8Zo/PCI found at 0x%lx ",
(ulong) cy_pci_phys2);
@@ -5059,7 +5059,7 @@ cy_detect_pci(void)
/* allocate IRQ only if board has an IRQ */
if( (cy_pci_irq != 0) && (cy_pci_irq != 255) ) {
if(request_irq(cy_pci_irq, cyz_interrupt,
- IRQF_SHARED, "Cyclades-Z", &cy_card[j]))
+ SA_SHIRQ, "Cyclades-Z", &cy_card[j]))
{
printk("Cyclom-Ze/PCI found at 0x%lx ",
(ulong) cy_pci_phys2);
diff --git a/trunk/drivers/char/drm/drm_irq.c b/trunk/drivers/char/drm/drm_irq.c
index ebdb7182c4fd..611a1173091d 100644
--- a/trunk/drivers/char/drm/drm_irq.c
+++ b/trunk/drivers/char/drm/drm_irq.c
@@ -130,7 +130,7 @@ static int drm_irq_install(drm_device_t * dev)
/* Install handler */
if (drm_core_check_feature(dev, DRIVER_IRQ_SHARED))
- sh_flags = IRQF_SHARED;
+ sh_flags = SA_SHIRQ;
ret = request_irq(dev->irq, dev->driver->irq_handler,
sh_flags, dev->devname, dev);
diff --git a/trunk/drivers/char/esp.c b/trunk/drivers/char/esp.c
index afcd83d9984b..9827d170ca17 100644
--- a/trunk/drivers/char/esp.c
+++ b/trunk/drivers/char/esp.c
@@ -883,7 +883,7 @@ static int startup(struct esp_struct * info)
* Allocate the IRQ
*/
- retval = request_irq(info->irq, rs_interrupt_single, IRQF_SHARED,
+ retval = request_irq(info->irq, rs_interrupt_single, SA_SHIRQ,
"esp serial", info);
if (retval) {
diff --git a/trunk/drivers/char/ftape/lowlevel/fdc-io.c b/trunk/drivers/char/ftape/lowlevel/fdc-io.c
index 65c9d2ec60bd..093fdf98b19a 100644
--- a/trunk/drivers/char/ftape/lowlevel/fdc-io.c
+++ b/trunk/drivers/char/ftape/lowlevel/fdc-io.c
@@ -1268,7 +1268,7 @@ static int fdc_grab_irq_and_dma(void)
/* Get fast interrupt handler.
*/
if (request_irq(fdc.irq, ftape_interrupt,
- IRQF_DISABLED, "ft", ftape_id)) {
+ SA_INTERRUPT, "ft", ftape_id)) {
TRACE_ABORT(-EIO, ft_t_bug,
"Unable to grab IRQ%d for ftape driver",
fdc.irq);
diff --git a/trunk/drivers/char/hpet.c b/trunk/drivers/char/hpet.c
index e5643f3aa73f..8b6c76f8ef0e 100644
--- a/trunk/drivers/char/hpet.c
+++ b/trunk/drivers/char/hpet.c
@@ -395,7 +395,7 @@ static int hpet_ioctl_ieon(struct hpet_dev *devp)
sprintf(devp->hd_name, "hpet%d", (int)(devp - hpetp->hp_dev));
irq_flags = devp->hd_flags & HPET_SHARED_IRQ
- ? IRQF_SHARED : IRQF_DISABLED;
+ ? SA_SHIRQ : SA_INTERRUPT;
if (request_irq(irq, hpet_interrupt, irq_flags,
devp->hd_name, (void *)devp)) {
printk(KERN_ERR "hpet: IRQ %d is not free\n", irq);
diff --git a/trunk/drivers/char/hvc_console.c b/trunk/drivers/char/hvc_console.c
index ca2f538e549e..859e5005c785 100644
--- a/trunk/drivers/char/hvc_console.c
+++ b/trunk/drivers/char/hvc_console.c
@@ -346,7 +346,7 @@ static int hvc_open(struct tty_struct *tty, struct file * filp)
spin_unlock_irqrestore(&hp->lock, flags);
/* check error, fallback to non-irq */
if (irq != NO_IRQ)
- rc = request_irq(irq, hvc_handle_interrupt, IRQF_DISABLED, "hvc_console", hp);
+ rc = request_irq(irq, hvc_handle_interrupt, SA_INTERRUPT, "hvc_console", hp);
/*
* If the request_irq() fails and we return an error. The tty layer
diff --git a/trunk/drivers/char/hvcs.c b/trunk/drivers/char/hvcs.c
index 4589ff302b07..130dedc37568 100644
--- a/trunk/drivers/char/hvcs.c
+++ b/trunk/drivers/char/hvcs.c
@@ -899,7 +899,7 @@ static int hvcs_enable_device(struct hvcs_struct *hvcsd, uint32_t unit_address,
* the conn was registered and now.
*/
if (!(rc = request_irq(irq, &hvcs_handle_interrupt,
- IRQF_DISABLED, "ibmhvcs", hvcsd))) {
+ SA_INTERRUPT, "ibmhvcs", hvcsd))) {
/*
* It is possible the vty-server was removed after the irq was
* requested but before we have time to enable interrupts.
diff --git a/trunk/drivers/char/hvsi.c b/trunk/drivers/char/hvsi.c
index 8dc205b275e3..7b04eb153205 100644
--- a/trunk/drivers/char/hvsi.c
+++ b/trunk/drivers/char/hvsi.c
@@ -1168,7 +1168,7 @@ static int __init hvsi_init(void)
struct hvsi_struct *hp = &hvsi_ports[i];
int ret = 1;
- ret = request_irq(hp->virq, hvsi_interrupt, IRQF_DISABLED, "hvsi", hp);
+ ret = request_irq(hp->virq, hvsi_interrupt, SA_INTERRUPT, "hvsi", hp);
if (ret)
printk(KERN_ERR "HVSI: couldn't reserve irq 0x%x (error %i)\n",
hp->virq, ret);
diff --git a/trunk/drivers/char/ip2/ip2main.c b/trunk/drivers/char/ip2/ip2main.c
index a4200a2b0811..f9aa53c76f99 100644
--- a/trunk/drivers/char/ip2/ip2main.c
+++ b/trunk/drivers/char/ip2/ip2main.c
@@ -491,8 +491,8 @@ static struct tty_operations ip2_ops = {
/* initialisation of the devices and driver structures, and registers itself */
/* with the relevant kernel modules. */
/******************************************************************************/
-/* IRQF_DISABLED - if set blocks all interrupts else only this line */
-/* IRQF_SHARED - for shared irq PCI or maybe EISA only */
+/* SA_INTERRUPT- if set blocks all interrupts else only this line */
+/* SA_SHIRQ - for shared irq PCI or maybe EISA only */
/* SA_RANDOM - can be source for cert. random number generators */
#define IP2_SA_FLAGS 0
@@ -753,7 +753,7 @@ ip2_loadmain(int *iop, int *irqp, unsigned char *firmware, int firmsize)
if (have_requested_irq(ip2config.irq[i]))
continue;
rc = request_irq( ip2config.irq[i], ip2_interrupt,
- IP2_SA_FLAGS | (ip2config.type[i] == PCI ? IRQF_SHARED : 0),
+ IP2_SA_FLAGS | (ip2config.type[i] == PCI ? SA_SHIRQ : 0),
pcName, (void *)&pcName);
if (rc) {
printk(KERN_ERR "IP2: an request_irq failed: error %d\n",rc);
diff --git a/trunk/drivers/char/ipmi/ipmi_si_intf.c b/trunk/drivers/char/ipmi/ipmi_si_intf.c
index f57eba0bf253..c7f3e5c80666 100644
--- a/trunk/drivers/char/ipmi/ipmi_si_intf.c
+++ b/trunk/drivers/char/ipmi/ipmi_si_intf.c
@@ -1041,7 +1041,7 @@ static int std_irq_setup(struct smi_info *info)
if (info->si_type == SI_BT) {
rv = request_irq(info->irq,
si_bt_irq_handler,
- IRQF_DISABLED,
+ SA_INTERRUPT,
DEVICE_NAME,
info);
if (!rv)
@@ -1051,7 +1051,7 @@ static int std_irq_setup(struct smi_info *info)
} else
rv = request_irq(info->irq,
si_irq_handler,
- IRQF_DISABLED,
+ SA_INTERRUPT,
DEVICE_NAME,
info);
if (rv) {
diff --git a/trunk/drivers/char/isicom.c b/trunk/drivers/char/isicom.c
index 913be23e0a24..c105b9540ad8 100644
--- a/trunk/drivers/char/isicom.c
+++ b/trunk/drivers/char/isicom.c
@@ -1614,14 +1614,14 @@ static int __devinit isicom_register_isr(struct pci_dev *pdev,
const unsigned int index)
{
struct isi_board *board = pci_get_drvdata(pdev);
- unsigned long irqflags = IRQF_DISABLED;
+ unsigned long irqflags = SA_INTERRUPT;
int retval = -EINVAL;
if (!board->base)
goto end;
if (board->isa == NO)
- irqflags |= IRQF_SHARED;
+ irqflags |= SA_SHIRQ;
retval = request_irq(board->irq, isicom_interrupt, irqflags,
ISICOM_NAME, board);
diff --git a/trunk/drivers/char/ite_gpio.c b/trunk/drivers/char/ite_gpio.c
index 747ba45e50e5..d1ed6ac950d1 100644
--- a/trunk/drivers/char/ite_gpio.c
+++ b/trunk/drivers/char/ite_gpio.c
@@ -397,7 +397,7 @@ int __init ite_gpio_init(void)
init_waitqueue_head(&ite_gpio_wait[i]);
}
- if (request_irq(ite_gpio_irq, ite_gpio_irq_handler, IRQF_SHARED, "gpio", 0) < 0) {
+ if (request_irq(ite_gpio_irq, ite_gpio_irq_handler, SA_SHIRQ, "gpio", 0) < 0) {
misc_deregister(&ite_gpio_miscdev);
release_region(ite_gpio_base, 0x1c);
return 0;
diff --git a/trunk/drivers/char/mbcs.c b/trunk/drivers/char/mbcs.c
index 0385650f6077..bb07c2766b27 100644
--- a/trunk/drivers/char/mbcs.c
+++ b/trunk/drivers/char/mbcs.c
@@ -592,7 +592,7 @@ static int mbcs_intr_alloc(struct cx_dev *dev)
getdma->intrHostDest = sn_irq->irq_xtalkaddr;
getdma->intrVector = sn_irq->irq_irq;
if (request_irq(sn_irq->irq_irq,
- (void *)mbcs_completion_intr_handler, IRQF_SHARED,
+ (void *)mbcs_completion_intr_handler, SA_SHIRQ,
"MBCS get intr", (void *)soft)) {
tiocx_irq_free(soft->get_sn_irq);
return -EAGAIN;
@@ -608,7 +608,7 @@ static int mbcs_intr_alloc(struct cx_dev *dev)
putdma->intrHostDest = sn_irq->irq_xtalkaddr;
putdma->intrVector = sn_irq->irq_irq;
if (request_irq(sn_irq->irq_irq,
- (void *)mbcs_completion_intr_handler, IRQF_SHARED,
+ (void *)mbcs_completion_intr_handler, SA_SHIRQ,
"MBCS put intr", (void *)soft)) {
tiocx_irq_free(soft->put_sn_irq);
free_irq(soft->get_sn_irq->irq_irq, soft);
@@ -628,7 +628,7 @@ static int mbcs_intr_alloc(struct cx_dev *dev)
algo->intrHostDest = sn_irq->irq_xtalkaddr;
algo->intrVector = sn_irq->irq_irq;
if (request_irq(sn_irq->irq_irq,
- (void *)mbcs_completion_intr_handler, IRQF_SHARED,
+ (void *)mbcs_completion_intr_handler, SA_SHIRQ,
"MBCS algo intr", (void *)soft)) {
tiocx_irq_free(soft->algo_sn_irq);
free_irq(soft->put_sn_irq->irq_irq, soft);
diff --git a/trunk/drivers/char/mmtimer.c b/trunk/drivers/char/mmtimer.c
index 70b774ff5aa4..95e8122b8068 100644
--- a/trunk/drivers/char/mmtimer.c
+++ b/trunk/drivers/char/mmtimer.c
@@ -687,7 +687,7 @@ static int __init mmtimer_init(void)
mmtimer_femtoperiod = ((unsigned long)1E15 + sn_rtc_cycles_per_second /
2) / sn_rtc_cycles_per_second;
- if (request_irq(SGI_MMTIMER_VECTOR, mmtimer_interrupt, IRQF_PERCPU, MMTIMER_NAME, NULL)) {
+ if (request_irq(SGI_MMTIMER_VECTOR, mmtimer_interrupt, SA_PERCPU_IRQ, MMTIMER_NAME, NULL)) {
printk(KERN_WARNING "%s: unable to allocate interrupt.",
MMTIMER_NAME);
return -1;
diff --git a/trunk/drivers/char/mxser.c b/trunk/drivers/char/mxser.c
index 556abd3e0d07..eb1559fcb81a 100644
--- a/trunk/drivers/char/mxser.c
+++ b/trunk/drivers/char/mxser.c
@@ -94,7 +94,7 @@
#define RELEVANT_IFLAG(iflag) (iflag & (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK|\
IXON|IXOFF))
-#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? IRQF_SHARED : IRQF_DISABLED)
+#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? SA_SHIRQ : SA_INTERRUPT)
#define C168_ASIC_ID 1
#define C104_ASIC_ID 2
diff --git a/trunk/drivers/char/nwbutton.c b/trunk/drivers/char/nwbutton.c
index f240a104d250..94845dd12ca9 100644
--- a/trunk/drivers/char/nwbutton.c
+++ b/trunk/drivers/char/nwbutton.c
@@ -223,7 +223,7 @@ static int __init nwbutton_init(void)
return -EBUSY;
}
- if (request_irq (IRQ_NETWINDER_BUTTON, button_handler, IRQF_DISABLED,
+ if (request_irq (IRQ_NETWINDER_BUTTON, button_handler, SA_INTERRUPT,
"nwbutton", NULL)) {
printk (KERN_WARNING "nwbutton: IRQ %d is not free.\n",
IRQ_NETWINDER_BUTTON);
diff --git a/trunk/drivers/char/qtronix.c b/trunk/drivers/char/qtronix.c
index 9d134e98d2a0..1087530e5854 100644
--- a/trunk/drivers/char/qtronix.c
+++ b/trunk/drivers/char/qtronix.c
@@ -144,7 +144,7 @@ void __init init_qtronix_990P_kbd(void)
cir_port_init(cir);
retval = request_irq(IT8172_CIR0_IRQ, kbd_int_handler,
- (unsigned long )(IRQF_DISABLED|IRQF_SHARED),
+ (unsigned long )(SA_INTERRUPT|SA_SHIRQ),
(const char *)"Qtronix IR Keyboard", (void *)cir);
if (retval) {
diff --git a/trunk/drivers/char/rio/rio_linux.c b/trunk/drivers/char/rio/rio_linux.c
index 3afc6a47ebbc..5332d1d4b0e4 100644
--- a/trunk/drivers/char/rio/rio_linux.c
+++ b/trunk/drivers/char/rio/rio_linux.c
@@ -1119,7 +1119,7 @@ static int __init rio_init(void)
for (i = 0; i < p->RIONumHosts; i++) {
hp = &p->RIOHosts[i];
if (hp->Ivec) {
- int mode = IRQF_SHARED;
+ int mode = SA_SHIRQ;
if (hp->Ivec & 0x8000) {
mode = 0;
hp->Ivec &= 0x7fff;
diff --git a/trunk/drivers/char/riscom8.c b/trunk/drivers/char/riscom8.c
index f1c94f771af5..c84c3c3f10c3 100644
--- a/trunk/drivers/char/riscom8.c
+++ b/trunk/drivers/char/riscom8.c
@@ -625,7 +625,7 @@ static inline int rc_setup_board(struct riscom_board * bp)
if (bp->flags & RC_BOARD_ACTIVE)
return 0;
- error = request_irq(bp->irq, rc_interrupt, IRQF_DISABLED,
+ error = request_irq(bp->irq, rc_interrupt, SA_INTERRUPT,
"RISCom/8", NULL);
if (error)
return error;
diff --git a/trunk/drivers/char/rtc.c b/trunk/drivers/char/rtc.c
index aefac4ac0bf5..37dc2edd8d75 100644
--- a/trunk/drivers/char/rtc.c
+++ b/trunk/drivers/char/rtc.c
@@ -220,7 +220,7 @@ static inline unsigned char rtc_is_updating(void)
#ifdef RTC_IRQ
/*
- * A very tiny interrupt handler. It runs with IRQF_DISABLED set,
+ * A very tiny interrupt handler. It runs with SA_INTERRUPT set,
* but there is possibility of conflicting with the set_rtc_mmss()
* call (the rtc irq and the timer irq can easily run at the same
* time in two different CPUs). So we need to serialize
@@ -958,7 +958,7 @@ static int __init rtc_init(void)
* XXX Interrupt pin #7 in Espresso is shared between RTC and
* PCI Slot 2 INTA# (and some INTx# in Slot 1).
*/
- if (request_irq(rtc_irq, rtc_interrupt, IRQF_SHARED, "rtc", (void *)&rtc_port)) {
+ if (request_irq(rtc_irq, rtc_interrupt, SA_SHIRQ, "rtc", (void *)&rtc_port)) {
printk(KERN_ERR "rtc: cannot register IRQ %d\n", rtc_irq);
return -EIO;
}
@@ -976,7 +976,7 @@ static int __init rtc_init(void)
rtc_int_handler_ptr = rtc_interrupt;
}
- if(request_irq(RTC_IRQ, rtc_int_handler_ptr, IRQF_DISABLED, "rtc", NULL)) {
+ if(request_irq(RTC_IRQ, rtc_int_handler_ptr, SA_INTERRUPT, "rtc", NULL)) {
/* Yeah right, seeing as irq 8 doesn't even hit the bus. */
printk(KERN_ERR "rtc: IRQ %d is not free.\n", RTC_IRQ);
release_region(RTC_PORT(0), RTC_IO_EXTENT);
diff --git a/trunk/drivers/char/s3c2410-rtc.c b/trunk/drivers/char/s3c2410-rtc.c
index 5458ef1634e5..b0038b19b505 100644
--- a/trunk/drivers/char/s3c2410-rtc.c
+++ b/trunk/drivers/char/s3c2410-rtc.c
@@ -341,13 +341,13 @@ static int s3c2410_rtc_open(void)
int ret;
ret = request_irq(s3c2410_rtc_alarmno, s3c2410_rtc_alarmirq,
- IRQF_DISABLED, "s3c2410-rtc alarm", NULL);
+ SA_INTERRUPT, "s3c2410-rtc alarm", NULL);
if (ret)
printk(KERN_ERR "IRQ%d already in use\n", s3c2410_rtc_alarmno);
ret = request_irq(s3c2410_rtc_tickno, s3c2410_rtc_tickirq,
- IRQF_DISABLED, "s3c2410-rtc tick", NULL);
+ SA_INTERRUPT, "s3c2410-rtc tick", NULL);
if (ret) {
printk(KERN_ERR "IRQ%d already in use\n", s3c2410_rtc_tickno);
diff --git a/trunk/drivers/char/snsc.c b/trunk/drivers/char/snsc.c
index 203240b6c08f..56c8243cdb73 100644
--- a/trunk/drivers/char/snsc.c
+++ b/trunk/drivers/char/snsc.c
@@ -105,7 +105,7 @@ scdrv_open(struct inode *inode, struct file *file)
/* hook this subchannel up to the system controller interrupt */
rv = request_irq(SGI_UART_VECTOR, scdrv_interrupt,
- IRQF_SHARED | IRQF_DISABLED,
+ SA_SHIRQ | SA_INTERRUPT,
SYSCTL_BASENAME, sd);
if (rv) {
ia64_sn_irtr_close(sd->sd_nasid, sd->sd_subch);
diff --git a/trunk/drivers/char/snsc_event.c b/trunk/drivers/char/snsc_event.c
index 8b2210b633df..e234d50e142a 100644
--- a/trunk/drivers/char/snsc_event.c
+++ b/trunk/drivers/char/snsc_event.c
@@ -310,7 +310,7 @@ scdrv_event_init(struct sysctl_data_s *scd)
/* hook event subchannel up to the system controller interrupt */
rv = request_irq(SGI_UART_VECTOR, scdrv_event_interrupt,
- IRQF_SHARED | IRQF_DISABLED,
+ SA_SHIRQ | SA_INTERRUPT,
"system controller events", event_sd);
if (rv) {
printk(KERN_WARNING "%s: irq request failed (%d)\n",
diff --git a/trunk/drivers/char/sonypi.c b/trunk/drivers/char/sonypi.c
index 45508a039508..e19d4856e9fc 100644
--- a/trunk/drivers/char/sonypi.c
+++ b/trunk/drivers/char/sonypi.c
@@ -1282,7 +1282,7 @@ static int __devinit sonypi_setup_irq(struct sonypi_device *dev,
while (irq_list->irq) {
if (!request_irq(irq_list->irq, sonypi_irq,
- IRQF_SHARED, "sonypi", sonypi_irq)) {
+ SA_SHIRQ, "sonypi", sonypi_irq)) {
dev->irq = irq_list->irq;
dev->bits = irq_list->bits;
return 0;
diff --git a/trunk/drivers/char/specialix.c b/trunk/drivers/char/specialix.c
index cb2859249d49..d4243fb80815 100644
--- a/trunk/drivers/char/specialix.c
+++ b/trunk/drivers/char/specialix.c
@@ -1015,9 +1015,9 @@ static inline int sx_setup_board(struct specialix_board * bp)
return 0;
if (bp->flags & SX_BOARD_IS_PCI)
- error = request_irq(bp->irq, sx_interrupt, IRQF_DISABLED | IRQF_SHARED, "specialix IO8+", bp);
+ error = request_irq(bp->irq, sx_interrupt, SA_INTERRUPT | SA_SHIRQ, "specialix IO8+", bp);
else
- error = request_irq(bp->irq, sx_interrupt, IRQF_DISABLED, "specialix IO8+", bp);
+ error = request_irq(bp->irq, sx_interrupt, SA_INTERRUPT, "specialix IO8+", bp);
if (error)
return error;
diff --git a/trunk/drivers/char/stallion.c b/trunk/drivers/char/stallion.c
index ed7b8eaf0367..f15df0e423e0 100644
--- a/trunk/drivers/char/stallion.c
+++ b/trunk/drivers/char/stallion.c
@@ -2302,7 +2302,7 @@ static inline int stl_initeio(stlbrd_t *brdp)
brdp->nrpanels = 1;
brdp->state |= BRD_FOUND;
brdp->hwid = status;
- if (request_irq(brdp->irq, stl_intr, IRQF_SHARED, name, brdp) != 0) {
+ if (request_irq(brdp->irq, stl_intr, SA_SHIRQ, name, brdp) != 0) {
printk("STALLION: failed to register interrupt "
"routine for %s irq=%d\n", name, brdp->irq);
rc = -ENODEV;
@@ -2512,7 +2512,7 @@ static inline int stl_initech(stlbrd_t *brdp)
outb((brdp->ioctrlval | ECH_BRDDISABLE), brdp->ioctrl);
brdp->state |= BRD_FOUND;
- if (request_irq(brdp->irq, stl_intr, IRQF_SHARED, name, brdp) != 0) {
+ if (request_irq(brdp->irq, stl_intr, SA_SHIRQ, name, brdp) != 0) {
printk("STALLION: failed to register interrupt "
"routine for %s irq=%d\n", name, brdp->irq);
i = -ENODEV;
diff --git a/trunk/drivers/char/sx.c b/trunk/drivers/char/sx.c
index 45c193aa11db..76b9107f7f81 100644
--- a/trunk/drivers/char/sx.c
+++ b/trunk/drivers/char/sx.c
@@ -1993,7 +1993,7 @@ static int sx_init_board (struct sx_board *board)
if(board->irq > 0) {
/* fixed irq, probably PCI */
if(sx_irqmask & (1 << board->irq)) { /* may we use this irq? */
- if(request_irq(board->irq, sx_interrupt, IRQF_SHARED | IRQF_DISABLED, "sx", board)) {
+ if(request_irq(board->irq, sx_interrupt, SA_SHIRQ | SA_INTERRUPT, "sx", board)) {
printk(KERN_ERR "sx: Cannot allocate irq %d.\n", board->irq);
board->irq = 0;
}
@@ -2005,7 +2005,7 @@ static int sx_init_board (struct sx_board *board)
int irqmask = sx_irqmask & (IS_SX_BOARD(board) ? SX_ISA_IRQ_MASK : SI2_ISA_IRQ_MASK);
for(irqnr = 15; irqnr > 0; irqnr--)
if(irqmask & (1 << irqnr))
- if(! request_irq(irqnr, sx_interrupt, IRQF_SHARED | IRQF_DISABLED, "sx", board))
+ if(! request_irq(irqnr, sx_interrupt, SA_SHIRQ | SA_INTERRUPT, "sx", board))
break;
if(! irqnr)
printk(KERN_ERR "sx: Cannot allocate IRQ.\n");
diff --git a/trunk/drivers/char/synclink.c b/trunk/drivers/char/synclink.c
index df782dd1098c..fee2aca3f6a5 100644
--- a/trunk/drivers/char/synclink.c
+++ b/trunk/drivers/char/synclink.c
@@ -8150,7 +8150,7 @@ static int __devinit synclink_init_one (struct pci_dev *dev,
info->bus_type = MGSL_BUS_TYPE_PCI;
info->io_addr_size = 8;
- info->irq_flags = IRQF_SHARED;
+ info->irq_flags = SA_SHIRQ;
if (dev->device == 0x0210) {
/* Version 1 PCI9030 based universal PCI adapter */
diff --git a/trunk/drivers/char/synclink_gt.c b/trunk/drivers/char/synclink_gt.c
index e829594195c1..03edccc8a823 100644
--- a/trunk/drivers/char/synclink_gt.c
+++ b/trunk/drivers/char/synclink_gt.c
@@ -3343,7 +3343,7 @@ static struct slgt_info *alloc_dev(int adapter_num, int port_num, struct pci_dev
info->phys_reg_addr = pci_resource_start(pdev,0);
info->bus_type = MGSL_BUS_TYPE_PCI;
- info->irq_flags = IRQF_SHARED;
+ info->irq_flags = SA_SHIRQ;
info->init_error = -1; /* assume error, set to 0 on successful init */
}
diff --git a/trunk/drivers/char/synclinkmp.c b/trunk/drivers/char/synclinkmp.c
index 1e443a233f51..ba54df3cf60a 100644
--- a/trunk/drivers/char/synclinkmp.c
+++ b/trunk/drivers/char/synclinkmp.c
@@ -3835,7 +3835,7 @@ static SLMP_INFO *alloc_dev(int adapter_num, int port_num, struct pci_dev *pdev)
info->phys_statctrl_base &= ~(PAGE_SIZE-1);
info->bus_type = MGSL_BUS_TYPE_PCI;
- info->irq_flags = IRQF_SHARED;
+ info->irq_flags = SA_SHIRQ;
init_timer(&info->tx_timer);
info->tx_timer.data = (unsigned long)info;
diff --git a/trunk/drivers/char/tlclk.c b/trunk/drivers/char/tlclk.c
index 952b829e2cb4..dfc4437afefb 100644
--- a/trunk/drivers/char/tlclk.c
+++ b/trunk/drivers/char/tlclk.c
@@ -208,7 +208,7 @@ static int tlclk_open(struct inode *inode, struct file *filp)
/* This device is wired through the FPGA IO space of the ATCA blade
* we can't share this IRQ */
result = request_irq(telclk_interrupt, &tlclk_interrupt,
- IRQF_DISABLED, "telco_clock", tlclk_interrupt);
+ SA_INTERRUPT, "telco_clock", tlclk_interrupt);
if (result == -EBUSY) {
printk(KERN_ERR "tlclk: Interrupt can't be reserved.\n");
return -EBUSY;
diff --git a/trunk/drivers/char/tpm/tpm_tis.c b/trunk/drivers/char/tpm/tpm_tis.c
index abb0f2aeae66..8ea70625f7ea 100644
--- a/trunk/drivers/char/tpm/tpm_tis.c
+++ b/trunk/drivers/char/tpm/tpm_tis.c
@@ -522,7 +522,7 @@ static int __devinit tpm_tis_pnp_init(struct pnp_dev *pnp_dev,
iowrite8(i, chip->vendor.iobase +
TPM_INT_VECTOR(chip->vendor.locality));
if (request_irq
- (i, tis_int_probe, IRQF_SHARED,
+ (i, tis_int_probe, SA_SHIRQ,
chip->vendor.miscdev.name, chip) != 0) {
dev_info(chip->dev,
"Unable to request irq: %d for probe\n",
@@ -557,7 +557,7 @@ static int __devinit tpm_tis_pnp_init(struct pnp_dev *pnp_dev,
chip->vendor.iobase +
TPM_INT_VECTOR(chip->vendor.locality));
if (request_irq
- (chip->vendor.irq, tis_int_handler, IRQF_SHARED,
+ (chip->vendor.irq, tis_int_handler, SA_SHIRQ,
chip->vendor.miscdev.name, chip) != 0) {
dev_info(chip->dev,
"Unable to request irq: %d for use\n",
diff --git a/trunk/drivers/char/vme_scc.c b/trunk/drivers/char/vme_scc.c
index bfe5ea948f6a..b17a6e2bbca8 100644
--- a/trunk/drivers/char/vme_scc.c
+++ b/trunk/drivers/char/vme_scc.c
@@ -203,13 +203,13 @@ static int mvme147_scc_init(void)
port->datap = port->ctrlp + 1;
port->port_a = &scc_ports[0];
port->port_b = &scc_ports[1];
- request_irq(MVME147_IRQ_SCCA_TX, scc_tx_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCA_TX, scc_tx_int, SA_INTERRUPT,
"SCC-A TX", port);
- request_irq(MVME147_IRQ_SCCA_STAT, scc_stat_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCA_STAT, scc_stat_int, SA_INTERRUPT,
"SCC-A status", port);
- request_irq(MVME147_IRQ_SCCA_RX, scc_rx_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCA_RX, scc_rx_int, SA_INTERRUPT,
"SCC-A RX", port);
- request_irq(MVME147_IRQ_SCCA_SPCOND, scc_spcond_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCA_SPCOND, scc_spcond_int, SA_INTERRUPT,
"SCC-A special cond", port);
{
SCC_ACCESS_INIT(port);
@@ -230,13 +230,13 @@ static int mvme147_scc_init(void)
port->datap = port->ctrlp + 1;
port->port_a = &scc_ports[0];
port->port_b = &scc_ports[1];
- request_irq(MVME147_IRQ_SCCB_TX, scc_tx_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCB_TX, scc_tx_int, SA_INTERRUPT,
"SCC-B TX", port);
- request_irq(MVME147_IRQ_SCCB_STAT, scc_stat_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCB_STAT, scc_stat_int, SA_INTERRUPT,
"SCC-B status", port);
- request_irq(MVME147_IRQ_SCCB_RX, scc_rx_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCB_RX, scc_rx_int, SA_INTERRUPT,
"SCC-B RX", port);
- request_irq(MVME147_IRQ_SCCB_SPCOND, scc_spcond_int, IRQF_DISABLED,
+ request_irq(MVME147_IRQ_SCCB_SPCOND, scc_spcond_int, SA_INTERRUPT,
"SCC-B special cond", port);
{
SCC_ACCESS_INIT(port);
@@ -273,13 +273,13 @@ static int mvme162_scc_init(void)
port->datap = port->ctrlp + 2;
port->port_a = &scc_ports[0];
port->port_b = &scc_ports[1];
- request_irq(MVME162_IRQ_SCCA_TX, scc_tx_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCA_TX, scc_tx_int, SA_INTERRUPT,
"SCC-A TX", port);
- request_irq(MVME162_IRQ_SCCA_STAT, scc_stat_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCA_STAT, scc_stat_int, SA_INTERRUPT,
"SCC-A status", port);
- request_irq(MVME162_IRQ_SCCA_RX, scc_rx_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCA_RX, scc_rx_int, SA_INTERRUPT,
"SCC-A RX", port);
- request_irq(MVME162_IRQ_SCCA_SPCOND, scc_spcond_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCA_SPCOND, scc_spcond_int, SA_INTERRUPT,
"SCC-A special cond", port);
{
SCC_ACCESS_INIT(port);
@@ -300,13 +300,13 @@ static int mvme162_scc_init(void)
port->datap = port->ctrlp + 2;
port->port_a = &scc_ports[0];
port->port_b = &scc_ports[1];
- request_irq(MVME162_IRQ_SCCB_TX, scc_tx_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCB_TX, scc_tx_int, SA_INTERRUPT,
"SCC-B TX", port);
- request_irq(MVME162_IRQ_SCCB_STAT, scc_stat_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCB_STAT, scc_stat_int, SA_INTERRUPT,
"SCC-B status", port);
- request_irq(MVME162_IRQ_SCCB_RX, scc_rx_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCB_RX, scc_rx_int, SA_INTERRUPT,
"SCC-B RX", port);
- request_irq(MVME162_IRQ_SCCB_SPCOND, scc_spcond_int, IRQF_DISABLED,
+ request_irq(MVME162_IRQ_SCCB_SPCOND, scc_spcond_int, SA_INTERRUPT,
"SCC-B special cond", port);
{
@@ -341,13 +341,13 @@ static int bvme6000_scc_init(void)
port->datap = port->ctrlp + 4;
port->port_a = &scc_ports[0];
port->port_b = &scc_ports[1];
- request_irq(BVME_IRQ_SCCA_TX, scc_tx_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCA_TX, scc_tx_int, SA_INTERRUPT,
"SCC-A TX", port);
- request_irq(BVME_IRQ_SCCA_STAT, scc_stat_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCA_STAT, scc_stat_int, SA_INTERRUPT,
"SCC-A status", port);
- request_irq(BVME_IRQ_SCCA_RX, scc_rx_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCA_RX, scc_rx_int, SA_INTERRUPT,
"SCC-A RX", port);
- request_irq(BVME_IRQ_SCCA_SPCOND, scc_spcond_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCA_SPCOND, scc_spcond_int, SA_INTERRUPT,
"SCC-A special cond", port);
{
SCC_ACCESS_INIT(port);
@@ -368,13 +368,13 @@ static int bvme6000_scc_init(void)
port->datap = port->ctrlp + 4;
port->port_a = &scc_ports[0];
port->port_b = &scc_ports[1];
- request_irq(BVME_IRQ_SCCB_TX, scc_tx_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCB_TX, scc_tx_int, SA_INTERRUPT,
"SCC-B TX", port);
- request_irq(BVME_IRQ_SCCB_STAT, scc_stat_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCB_STAT, scc_stat_int, SA_INTERRUPT,
"SCC-B status", port);
- request_irq(BVME_IRQ_SCCB_RX, scc_rx_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCB_RX, scc_rx_int, SA_INTERRUPT,
"SCC-B RX", port);
- request_irq(BVME_IRQ_SCCB_SPCOND, scc_spcond_int, IRQF_DISABLED,
+ request_irq(BVME_IRQ_SCCB_SPCOND, scc_spcond_int, SA_INTERRUPT,
"SCC-B special cond", port);
{
diff --git a/trunk/drivers/char/watchdog/eurotechwdt.c b/trunk/drivers/char/watchdog/eurotechwdt.c
index ea670de4fab7..e89cda010b49 100644
--- a/trunk/drivers/char/watchdog/eurotechwdt.c
+++ b/trunk/drivers/char/watchdog/eurotechwdt.c
@@ -420,7 +420,7 @@ static int __init eurwdt_init(void)
goto out;
}
- ret = request_irq(irq, eurwdt_interrupt, IRQF_DISABLED, "eurwdt", NULL);
+ ret = request_irq(irq, eurwdt_interrupt, SA_INTERRUPT, "eurwdt", NULL);
if(ret) {
printk(KERN_ERR "eurwdt: IRQ %d is not free.\n", irq);
goto outmisc;
diff --git a/trunk/drivers/char/watchdog/mpcore_wdt.c b/trunk/drivers/char/watchdog/mpcore_wdt.c
index c2d492c852fc..9c11d920add5 100644
--- a/trunk/drivers/char/watchdog/mpcore_wdt.c
+++ b/trunk/drivers/char/watchdog/mpcore_wdt.c
@@ -355,7 +355,7 @@ static int __devinit mpcore_wdt_probe(struct platform_device *dev)
goto err_misc;
}
- ret = request_irq(wdt->irq, mpcore_wdt_fire, IRQF_DISABLED, "mpcore_wdt", wdt);
+ ret = request_irq(wdt->irq, mpcore_wdt_fire, SA_INTERRUPT, "mpcore_wdt", wdt);
if (ret) {
dev_printk(KERN_ERR, _dev, "cannot register IRQ%d for watchdog\n", wdt->irq);
goto err_irq;
diff --git a/trunk/drivers/char/watchdog/wdt.c b/trunk/drivers/char/watchdog/wdt.c
index a1d972c8f44c..2586e9e858e2 100644
--- a/trunk/drivers/char/watchdog/wdt.c
+++ b/trunk/drivers/char/watchdog/wdt.c
@@ -580,7 +580,7 @@ static int __init wdt_init(void)
goto out;
}
- ret = request_irq(irq, wdt_interrupt, IRQF_DISABLED, "wdt501p", NULL);
+ ret = request_irq(irq, wdt_interrupt, SA_INTERRUPT, "wdt501p", NULL);
if(ret) {
printk(KERN_ERR "wdt: IRQ %d is not free.\n", irq);
goto outreg;
diff --git a/trunk/drivers/char/watchdog/wdt_pci.c b/trunk/drivers/char/watchdog/wdt_pci.c
index 7529ecdbabae..c79cc9543d96 100644
--- a/trunk/drivers/char/watchdog/wdt_pci.c
+++ b/trunk/drivers/char/watchdog/wdt_pci.c
@@ -617,7 +617,7 @@ static int __devinit wdtpci_init_one (struct pci_dev *dev,
goto out_pci;
}
- if (request_irq (irq, wdtpci_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ if (request_irq (irq, wdtpci_interrupt, SA_INTERRUPT | SA_SHIRQ,
"wdt_pci", &wdtpci_miscdev)) {
printk (KERN_ERR PFX "IRQ %d is not free\n", irq);
goto out_reg;
diff --git a/trunk/drivers/dma/ioatdma.c b/trunk/drivers/dma/ioatdma.c
index ecad8f65d2d4..2801d14a5e42 100644
--- a/trunk/drivers/dma/ioatdma.c
+++ b/trunk/drivers/dma/ioatdma.c
@@ -739,7 +739,7 @@ static int __devinit ioat_probe(struct pci_dev *pdev,
device->msi = 0;
}
#endif
- err = request_irq(pdev->irq, &ioat_do_interrupt, IRQF_SHARED, "ioat",
+ err = request_irq(pdev->irq, &ioat_do_interrupt, SA_SHIRQ, "ioat",
device);
if (err)
goto err_irq;
diff --git a/trunk/drivers/fc4/soc.c b/trunk/drivers/fc4/soc.c
index 3b07e0ca81cd..cf8768b8d1f1 100644
--- a/trunk/drivers/fc4/soc.c
+++ b/trunk/drivers/fc4/soc.c
@@ -637,7 +637,7 @@ static inline void soc_init(struct sbus_dev *sdev, int no)
irq = sdev->irqs[0];
- if (request_irq (irq, soc_intr, IRQF_SHARED, "SOC", (void *)s)) {
+ if (request_irq (irq, soc_intr, SA_SHIRQ, "SOC", (void *)s)) {
soc_printk ("Cannot order irq %d to go\n", irq);
socs = s->next;
return;
diff --git a/trunk/drivers/fc4/socal.c b/trunk/drivers/fc4/socal.c
index 2b75edc5859d..f52d1e5bd5a5 100644
--- a/trunk/drivers/fc4/socal.c
+++ b/trunk/drivers/fc4/socal.c
@@ -761,7 +761,7 @@ static inline void socal_init(struct sbus_dev *sdev, int no)
irq = sdev->irqs[0];
- if (request_irq (irq, socal_intr, IRQF_SHARED, "SOCAL", (void *)s)) {
+ if (request_irq (irq, socal_intr, SA_SHIRQ, "SOCAL", (void *)s)) {
socal_printk ("Cannot order irq %d to go\n", irq);
socals = s->next;
return;
diff --git a/trunk/drivers/i2c/busses/i2c-mpc.c b/trunk/drivers/i2c/busses/i2c-mpc.c
index 377ab40944b8..de93601de178 100644
--- a/trunk/drivers/i2c/busses/i2c-mpc.c
+++ b/trunk/drivers/i2c/busses/i2c-mpc.c
@@ -318,7 +318,7 @@ static int fsl_i2c_probe(struct platform_device *pdev)
if (i2c->irq != 0)
if ((result = request_irq(i2c->irq, mpc_i2c_isr,
- IRQF_SHARED, "i2c-mpc", i2c)) < 0) {
+ SA_SHIRQ, "i2c-mpc", i2c)) < 0) {
printk(KERN_ERR
"i2c-mpc - failed to attach interrupt\n");
goto fail_irq;
diff --git a/trunk/drivers/i2c/busses/i2c-pxa.c b/trunk/drivers/i2c/busses/i2c-pxa.c
index ee114b48face..5155010b455e 100644
--- a/trunk/drivers/i2c/busses/i2c-pxa.c
+++ b/trunk/drivers/i2c/busses/i2c-pxa.c
@@ -968,7 +968,7 @@ static int i2c_pxa_probe(struct platform_device *dev)
#endif
pxa_set_cken(CKEN14_I2C, 1);
- ret = request_irq(IRQ_I2C, i2c_pxa_handler, IRQF_DISABLED,
+ ret = request_irq(IRQ_I2C, i2c_pxa_handler, SA_INTERRUPT,
"pxa2xx-i2c", i2c);
if (ret)
goto out;
diff --git a/trunk/drivers/i2c/busses/i2c-s3c2410.c b/trunk/drivers/i2c/busses/i2c-s3c2410.c
index 5d2950e91fc5..512b8791c328 100644
--- a/trunk/drivers/i2c/busses/i2c-s3c2410.c
+++ b/trunk/drivers/i2c/busses/i2c-s3c2410.c
@@ -828,7 +828,7 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
goto out;
}
- ret = request_irq(res->start, s3c24xx_i2c_irq, IRQF_DISABLED,
+ ret = request_irq(res->start, s3c24xx_i2c_irq, SA_INTERRUPT,
pdev->name, i2c);
if (ret != 0) {
diff --git a/trunk/drivers/i2c/chips/isp1301_omap.c b/trunk/drivers/i2c/chips/isp1301_omap.c
index f92505b94c61..b638ac6e59f4 100644
--- a/trunk/drivers/i2c/chips/isp1301_omap.c
+++ b/trunk/drivers/i2c/chips/isp1301_omap.c
@@ -908,7 +908,7 @@ static int otg_bind(struct isp1301 *isp)
if (otg_dev)
status = request_irq(otg_dev->resource[1].start, omap_otg_irq,
- IRQF_DISABLED, DRIVER_NAME, isp);
+ SA_INTERRUPT, DRIVER_NAME, isp);
else
status = -ENODEV;
@@ -1578,7 +1578,7 @@ static int isp1301_probe(struct i2c_adapter *bus, int address, int kind)
}
status = request_irq(isp->irq, isp1301_irq,
- IRQF_SAMPLE_RANDOM, DRIVER_NAME, isp);
+ SA_SAMPLE_RANDOM, DRIVER_NAME, isp);
if (status < 0) {
dev_dbg(&i2c->dev, "can't get IRQ %d, err %d\n",
isp->irq, status);
diff --git a/trunk/drivers/i2c/chips/tps65010.c b/trunk/drivers/i2c/chips/tps65010.c
index e7e27049fbfa..e27ee12245d3 100644
--- a/trunk/drivers/i2c/chips/tps65010.c
+++ b/trunk/drivers/i2c/chips/tps65010.c
@@ -521,14 +521,14 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)
}
#ifdef CONFIG_ARM
- irqflags = IRQF_SAMPLE_RANDOM | IRQF_TRIGGER_LOW;
+ irqflags = SA_SAMPLE_RANDOM | SA_TRIGGER_LOW;
if (machine_is_omap_h2()) {
tps->model = TPS65010;
omap_cfg_reg(W4_GPIO58);
tps->irq = OMAP_GPIO_IRQ(58);
omap_request_gpio(58);
omap_set_gpio_direction(58, 1);
- irqflags |= IRQF_TRIGGER_FALLING;
+ irqflags |= SA_TRIGGER_FALLING;
}
if (machine_is_omap_osk()) {
tps->model = TPS65010;
@@ -536,7 +536,7 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)
tps->irq = OMAP_GPIO_IRQ(OMAP_MPUIO(1));
omap_request_gpio(OMAP_MPUIO(1));
omap_set_gpio_direction(OMAP_MPUIO(1), 1);
- irqflags |= IRQF_TRIGGER_FALLING;
+ irqflags |= SA_TRIGGER_FALLING;
}
if (machine_is_omap_h3()) {
tps->model = TPS65013;
@@ -544,7 +544,7 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)
// FIXME set up this board's IRQ ...
}
#else
- irqflags = IRQF_SAMPLE_RANDOM;
+ irqflags = SA_SAMPLE_RANDOM;
#endif
if (tps->irq > 0) {
diff --git a/trunk/drivers/ide/ide-probe.c b/trunk/drivers/ide/ide-probe.c
index 9cadf0106c6c..c5f71ac28d14 100644
--- a/trunk/drivers/ide/ide-probe.c
+++ b/trunk/drivers/ide/ide-probe.c
@@ -1004,7 +1004,7 @@ static int ide_init_queue(ide_drive_t *drive)
* and irq serialization situations. This is somewhat complex because
* it handles static as well as dynamic (PCMCIA) IDE interfaces.
*
- * The IRQF_DISABLED in sa_flags means ide_intr() is always entered with
+ * The SA_INTERRUPT in sa_flags means ide_intr() is always entered with
* interrupts completely disabled. This can be bad for interrupt latency,
* but anything else has led to problems on some machines. We re-enable
* interrupts as much as we can safely do in most places.
@@ -1090,15 +1090,15 @@ static int init_irq (ide_hwif_t *hwif)
* Allocate the irq, if not already obtained for another hwif
*/
if (!match || match->irq != hwif->irq) {
- int sa = IRQF_DISABLED;
+ int sa = SA_INTERRUPT;
#if defined(__mc68000__) || defined(CONFIG_APUS)
- sa = IRQF_SHARED;
+ sa = SA_SHIRQ;
#endif /* __mc68000__ || CONFIG_APUS */
if (IDE_CHIPSET_IS_PCI(hwif->chipset)) {
- sa = IRQF_SHARED;
+ sa = SA_SHIRQ;
#ifndef CONFIG_IDEPCI_SHARE_IRQ
- sa |= IRQF_DISABLED;
+ sa |= SA_INTERRUPT;
#endif /* CONFIG_IDEPCI_SHARE_IRQ */
}
diff --git a/trunk/drivers/ide/legacy/hd.c b/trunk/drivers/ide/legacy/hd.c
index aebecd8f51cc..6439dec66881 100644
--- a/trunk/drivers/ide/legacy/hd.c
+++ b/trunk/drivers/ide/legacy/hd.c
@@ -691,7 +691,7 @@ static struct block_device_operations hd_fops = {
};
/*
- * This is the hard disk IRQ description. The IRQF_DISABLED in sa_flags
+ * This is the hard disk IRQ description. The SA_INTERRUPT in sa_flags
* means we run the IRQ-handler with interrupts disabled: this is bad for
* interrupt latency, but anything else has led to problems on some
* machines.
@@ -806,7 +806,7 @@ static int __init hd_init(void)
p->cyl, p->head, p->sect);
}
- if (request_irq(HD_IRQ, hd_interrupt, IRQF_DISABLED, "hd", NULL)) {
+ if (request_irq(HD_IRQ, hd_interrupt, SA_INTERRUPT, "hd", NULL)) {
printk("hd: unable to get IRQ%d for the hard disk driver\n",
HD_IRQ);
goto out1;
diff --git a/trunk/drivers/ieee1394/ohci1394.c b/trunk/drivers/ieee1394/ohci1394.c
index d4bad6704bbe..8de81ecd3ba6 100644
--- a/trunk/drivers/ieee1394/ohci1394.c
+++ b/trunk/drivers/ieee1394/ohci1394.c
@@ -3392,12 +3392,12 @@ static int __devinit ohci1394_pci_probe(struct pci_dev *dev,
spin_lock_init(&ohci->event_lock);
/*
- * interrupts are disabled, all right, but... due to IRQF_SHARED we
+ * interrupts are disabled, all right, but... due to SA_SHIRQ we
* might get called anyway. We'll see no event, of course, but
* we need to get to that "no event", so enough should be initialized
* by that point.
*/
- if (request_irq(dev->irq, ohci_irq_handler, IRQF_SHARED,
+ if (request_irq(dev->irq, ohci_irq_handler, SA_SHIRQ,
OHCI1394_DRIVER_NAME, ohci))
FAIL(-ENOMEM, "Failed to allocate shared interrupt %d", dev->irq);
diff --git a/trunk/drivers/ieee1394/pcilynx.c b/trunk/drivers/ieee1394/pcilynx.c
index e6f41238f5e8..5b48f6ac5c7f 100644
--- a/trunk/drivers/ieee1394/pcilynx.c
+++ b/trunk/drivers/ieee1394/pcilynx.c
@@ -1253,7 +1253,7 @@ static int __devinit add_card(struct pci_dev *dev,
sprintf (irq_buf, "%d", dev->irq);
- if (!request_irq(dev->irq, lynx_irq_handler, IRQF_SHARED,
+ if (!request_irq(dev->irq, lynx_irq_handler, SA_SHIRQ,
PCILYNX_DRIVER_NAME, lynx)) {
PRINT(KERN_INFO, lynx->id, "allocated interrupt %s", irq_buf);
lynx->state = have_intr;
diff --git a/trunk/drivers/infiniband/hw/ipath/ipath_driver.c b/trunk/drivers/infiniband/hw/ipath/ipath_driver.c
index 823131d58b34..6efc56bce921 100644
--- a/trunk/drivers/infiniband/hw/ipath/ipath_driver.c
+++ b/trunk/drivers/infiniband/hw/ipath/ipath_driver.c
@@ -468,7 +468,7 @@ static int __devinit ipath_init_one(struct pci_dev *pdev,
"continuing anyway\n");
/*
- * set up our interrupt handler; IRQF_SHARED probably not needed,
+ * set up our interrupt handler; SA_SHIRQ probably not needed,
* since MSI interrupts shouldn't be shared but won't hurt for now.
* check 0 irq after we return from chip-specific bus setup, since
* that can affect this due to setup
@@ -477,7 +477,7 @@ static int __devinit ipath_init_one(struct pci_dev *pdev,
ipath_dev_err(dd, "irq is 0, BIOS error? Interrupts won't "
"work\n");
else {
- ret = request_irq(pdev->irq, ipath_intr, IRQF_SHARED,
+ ret = request_irq(pdev->irq, ipath_intr, SA_SHIRQ,
IPATH_DRV_NAME, dd);
if (ret) {
ipath_dev_err(dd, "Couldn't setup irq handler, "
diff --git a/trunk/drivers/infiniband/hw/mthca/mthca_eq.c b/trunk/drivers/infiniband/hw/mthca/mthca_eq.c
index a29b1b6d82b1..d536217e700e 100644
--- a/trunk/drivers/infiniband/hw/mthca/mthca_eq.c
+++ b/trunk/drivers/infiniband/hw/mthca/mthca_eq.c
@@ -900,7 +900,7 @@ int __devinit mthca_init_eq_table(struct mthca_dev *dev)
mthca_is_memfree(dev) ?
mthca_arbel_interrupt :
mthca_tavor_interrupt,
- IRQF_SHARED, DRV_NAME, dev);
+ SA_SHIRQ, DRV_NAME, dev);
if (err)
goto err_out_cmd;
dev->eq_table.have_irq = 1;
diff --git a/trunk/drivers/input/keyboard/corgikbd.c b/trunk/drivers/input/keyboard/corgikbd.c
index 1e03153b9bca..1f0e720267d7 100644
--- a/trunk/drivers/input/keyboard/corgikbd.c
+++ b/trunk/drivers/input/keyboard/corgikbd.c
@@ -352,7 +352,7 @@ static int __init corgikbd_probe(struct platform_device *pdev)
for (i = 0; i < CORGI_KEY_SENSE_NUM; i++) {
pxa_gpio_mode(CORGI_GPIO_KEY_SENSE(i) | GPIO_IN);
if (request_irq(CORGI_IRQ_GPIO_KEY_SENSE(i), corgikbd_interrupt,
- IRQF_DISABLED | IRQF_TRIGGER_RISING,
+ SA_INTERRUPT | SA_TRIGGER_RISING,
"corgikbd", corgikbd))
printk(KERN_WARNING "corgikbd: Can't get IRQ: %d!\n", i);
}
diff --git a/trunk/drivers/input/keyboard/spitzkbd.c b/trunk/drivers/input/keyboard/spitzkbd.c
index e385710233f4..c5d03fb77bcb 100644
--- a/trunk/drivers/input/keyboard/spitzkbd.c
+++ b/trunk/drivers/input/keyboard/spitzkbd.c
@@ -410,7 +410,7 @@ static int __init spitzkbd_probe(struct platform_device *dev)
for (i = 0; i < SPITZ_KEY_SENSE_NUM; i++) {
pxa_gpio_mode(spitz_senses[i] | GPIO_IN);
if (request_irq(IRQ_GPIO(spitz_senses[i]), spitzkbd_interrupt,
- IRQF_DISABLED|IRQF_TRIGGER_RISING,
+ SA_INTERRUPT|SA_TRIGGER_RISING,
"Spitzkbd Sense", spitzkbd))
printk(KERN_WARNING "spitzkbd: Can't get Sense IRQ: %d!\n", i);
}
@@ -425,19 +425,19 @@ static int __init spitzkbd_probe(struct platform_device *dev)
pxa_gpio_mode(SPITZ_GPIO_SWB | GPIO_IN);
request_irq(SPITZ_IRQ_GPIO_SYNC, spitzkbd_interrupt,
- IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
+ SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
"Spitzkbd Sync", spitzkbd);
request_irq(SPITZ_IRQ_GPIO_ON_KEY, spitzkbd_interrupt,
- IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
+ SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
"Spitzkbd PwrOn", spitzkbd);
request_irq(SPITZ_IRQ_GPIO_SWA, spitzkbd_hinge_isr,
- IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
+ SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
"Spitzkbd SWA", spitzkbd);
request_irq(SPITZ_IRQ_GPIO_SWB, spitzkbd_hinge_isr,
- IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
+ SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
"Spitzkbd SWB", spitzkbd);
request_irq(SPITZ_IRQ_GPIO_AK_INT, spitzkbd_hinge_isr,
- IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
+ SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
"Spitzkbd HP", spitzkbd);
printk(KERN_INFO "input: Spitz Keyboard Registered\n");
diff --git a/trunk/drivers/input/misc/ixp4xx-beeper.c b/trunk/drivers/input/misc/ixp4xx-beeper.c
index 805b636e73d9..3a6ae85cd69c 100644
--- a/trunk/drivers/input/misc/ixp4xx-beeper.c
+++ b/trunk/drivers/input/misc/ixp4xx-beeper.c
@@ -113,7 +113,7 @@ static int __devinit ixp4xx_spkr_probe(struct platform_device *dev)
input_dev->event = ixp4xx_spkr_event;
err = request_irq(IRQ_IXP4XX_TIMER2, &ixp4xx_spkr_interrupt,
- IRQF_DISABLED | IRQF_TIMER, "ixp4xx-beeper", (void *) dev->id);
+ SA_INTERRUPT | SA_TIMER, "ixp4xx-beeper", (void *) dev->id);
if (err)
goto err_free_device;
diff --git a/trunk/drivers/input/mouse/rpcmouse.c b/trunk/drivers/input/mouse/rpcmouse.c
index 872b30bf7aad..09b6ffdb7582 100644
--- a/trunk/drivers/input/mouse/rpcmouse.c
+++ b/trunk/drivers/input/mouse/rpcmouse.c
@@ -85,7 +85,7 @@ static int __init rpcmouse_init(void)
rpcmouse_lastx = (short) iomd_readl(IOMD_MOUSEX);
rpcmouse_lasty = (short) iomd_readl(IOMD_MOUSEY);
- if (request_irq(IRQ_VSYNCPULSE, rpcmouse_irq, IRQF_SHARED, "rpcmouse", rpcmouse_dev)) {
+ if (request_irq(IRQ_VSYNCPULSE, rpcmouse_irq, SA_SHIRQ, "rpcmouse", rpcmouse_dev)) {
printk(KERN_ERR "rpcmouse: unable to allocate VSYNC interrupt\n");
input_free_device(rpcmouse_dev);
return -EBUSY;
diff --git a/trunk/drivers/input/serio/gscps2.c b/trunk/drivers/input/serio/gscps2.c
index cde036a92168..22d02d53eb16 100644
--- a/trunk/drivers/input/serio/gscps2.c
+++ b/trunk/drivers/input/serio/gscps2.c
@@ -370,7 +370,7 @@ static int __init gscps2_probe(struct parisc_device *dev)
serio->dev.parent = &dev->dev;
ret = -EBUSY;
- if (request_irq(dev->irq, gscps2_interrupt, IRQF_SHARED, ps2port->port->name, ps2port))
+ if (request_irq(dev->irq, gscps2_interrupt, SA_SHIRQ, ps2port->port->name, ps2port))
goto fail_miserably;
if (ps2port->id != GSC_ID_KEYBOARD && ps2port->id != GSC_ID_MOUSE) {
diff --git a/trunk/drivers/input/serio/i8042.c b/trunk/drivers/input/serio/i8042.c
index 06a3f25657dd..7fa4bc222583 100644
--- a/trunk/drivers/input/serio/i8042.c
+++ b/trunk/drivers/input/serio/i8042.c
@@ -328,7 +328,7 @@ static int i8042_open(struct serio *serio)
return 0;
if (request_irq(port->irq, i8042_interrupt,
- IRQF_SHARED, "i8042", i8042_request_irq_cookie)) {
+ SA_SHIRQ, "i8042", i8042_request_irq_cookie)) {
printk(KERN_ERR "i8042.c: Can't get irq %d for %s, unregistering the port.\n", port->irq, port->name);
goto irq_fail;
}
@@ -610,7 +610,7 @@ static int __devinit i8042_check_aux(void)
*/
if (request_irq(i8042_ports[I8042_AUX_PORT_NO].irq, i8042_interrupt,
- IRQF_SHARED, "i8042", &i8042_check_aux_cookie))
+ SA_SHIRQ, "i8042", &i8042_check_aux_cookie))
return -1;
free_irq(i8042_ports[I8042_AUX_PORT_NO].irq, &i8042_check_aux_cookie);
diff --git a/trunk/drivers/input/serio/pcips2.c b/trunk/drivers/input/serio/pcips2.c
index fb727c665253..1e139c5e59de 100644
--- a/trunk/drivers/input/serio/pcips2.c
+++ b/trunk/drivers/input/serio/pcips2.c
@@ -107,7 +107,7 @@ static int pcips2_open(struct serio *io)
outb(PS2_CTRL_ENABLE, ps2if->base);
pcips2_flush_input(ps2if);
- ret = request_irq(ps2if->dev->irq, pcips2_interrupt, IRQF_SHARED,
+ ret = request_irq(ps2if->dev->irq, pcips2_interrupt, SA_SHIRQ,
"pcips2", ps2if);
if (ret == 0)
val = PS2_CTRL_ENABLE | PS2_CTRL_RXIRQ;
diff --git a/trunk/drivers/input/touchscreen/ads7846.c b/trunk/drivers/input/touchscreen/ads7846.c
index 66e411badf70..386023c594d7 100644
--- a/trunk/drivers/input/touchscreen/ads7846.c
+++ b/trunk/drivers/input/touchscreen/ads7846.c
@@ -773,7 +773,7 @@ static int __devinit ads7846_probe(struct spi_device *spi)
ts->last_msg = m;
- if (request_irq(spi->irq, ads7846_irq, IRQF_TRIGGER_FALLING,
+ if (request_irq(spi->irq, ads7846_irq, SA_TRIGGER_FALLING,
spi->dev.driver->name, ts)) {
dev_dbg(&spi->dev, "irq %d busy?\n", spi->irq);
err = -EBUSY;
diff --git a/trunk/drivers/input/touchscreen/corgi_ts.c b/trunk/drivers/input/touchscreen/corgi_ts.c
index d2f9759cd3ed..5013703db0e6 100644
--- a/trunk/drivers/input/touchscreen/corgi_ts.c
+++ b/trunk/drivers/input/touchscreen/corgi_ts.c
@@ -318,7 +318,7 @@ static int __init corgits_probe(struct platform_device *pdev)
corgi_ssp_ads7846_putget((5u << ADSCTRL_ADR_SH) | ADSCTRL_STS);
mdelay(5);
- if (request_irq(corgi_ts->irq_gpio, ts_interrupt, IRQF_DISABLED, "ts", corgi_ts)) {
+ if (request_irq(corgi_ts->irq_gpio, ts_interrupt, SA_INTERRUPT, "ts", corgi_ts)) {
err = -EBUSY;
goto fail;
}
diff --git a/trunk/drivers/input/touchscreen/h3600_ts_input.c b/trunk/drivers/input/touchscreen/h3600_ts_input.c
index e2b910018773..2de2139f2fed 100644
--- a/trunk/drivers/input/touchscreen/h3600_ts_input.c
+++ b/trunk/drivers/input/touchscreen/h3600_ts_input.c
@@ -399,14 +399,14 @@ static int h3600ts_connect(struct serio *serio, struct serio_driver *drv)
set_GPIO_IRQ_edge(GPIO_BITSY_NPOWER_BUTTON, GPIO_RISING_EDGE);
if (request_irq(IRQ_GPIO_BITSY_ACTION_BUTTON, action_button_handler,
- IRQF_SHARED | IRQF_DISABLED, "h3600_action", &ts->dev)) {
+ SA_SHIRQ | SA_INTERRUPT, "h3600_action", &ts->dev)) {
printk(KERN_ERR "h3600ts.c: Could not allocate Action Button IRQ!\n");
err = -EBUSY;
goto fail2;
}
if (request_irq(IRQ_GPIO_BITSY_NPOWER_BUTTON, npower_button_handler,
- IRQF_SHARED | IRQF_DISABLED, "h3600_suspend", &ts->dev)) {
+ SA_SHIRQ | SA_INTERRUPT, "h3600_suspend", &ts->dev)) {
printk(KERN_ERR "h3600ts.c: Could not allocate Power Button IRQ!\n");
err = -EBUSY;
goto fail3;
diff --git a/trunk/drivers/input/touchscreen/hp680_ts_input.c b/trunk/drivers/input/touchscreen/hp680_ts_input.c
index fa97e0f79e7e..957dd5a1b15e 100644
--- a/trunk/drivers/input/touchscreen/hp680_ts_input.c
+++ b/trunk/drivers/input/touchscreen/hp680_ts_input.c
@@ -109,7 +109,7 @@ static int __init hp680_ts_init(void)
input_register_device(hp680_ts_dev);
if (request_irq(HP680_TS_IRQ, hp680_ts_interrupt,
- IRQF_DISABLED, MODNAME, 0) < 0) {
+ SA_INTERRUPT, MODNAME, 0) < 0) {
printk(KERN_ERR "hp680_touchscreen.c: Can't allocate irq %d\n",
HP680_TS_IRQ);
input_unregister_device(hp680_ts_dev);
diff --git a/trunk/drivers/isdn/hardware/avm/b1pci.c b/trunk/drivers/isdn/hardware/avm/b1pci.c
index 90e2e6643d19..7edf19b32299 100644
--- a/trunk/drivers/isdn/hardware/avm/b1pci.c
+++ b/trunk/drivers/isdn/hardware/avm/b1pci.c
@@ -97,7 +97,7 @@ static int b1pci_probe(struct capicardparams *p, struct pci_dev *pdev)
b1_reset(card->port);
b1_getrevision(card);
- retval = request_irq(card->irq, b1_interrupt, IRQF_SHARED, card->name, card);
+ retval = request_irq(card->irq, b1_interrupt, SA_SHIRQ, card->name, card);
if (retval) {
printk(KERN_ERR "b1pci: unable to get IRQ %d.\n", card->irq);
retval = -EBUSY;
@@ -234,7 +234,7 @@ static int b1pciv4_probe(struct capicardparams *p, struct pci_dev *pdev)
b1dma_reset(card);
b1_getrevision(card);
- retval = request_irq(card->irq, b1dma_interrupt, IRQF_SHARED, card->name, card);
+ retval = request_irq(card->irq, b1dma_interrupt, SA_SHIRQ, card->name, card);
if (retval) {
printk(KERN_ERR "b1pci: unable to get IRQ %d.\n",
card->irq);
diff --git a/trunk/drivers/isdn/hardware/avm/b1pcmcia.c b/trunk/drivers/isdn/hardware/avm/b1pcmcia.c
index e479c0aef38d..ad5025155b4e 100644
--- a/trunk/drivers/isdn/hardware/avm/b1pcmcia.c
+++ b/trunk/drivers/isdn/hardware/avm/b1pcmcia.c
@@ -82,7 +82,7 @@ static int b1pcmcia_add_card(unsigned int port, unsigned irq,
card->irq = irq;
card->cardtype = cardtype;
- retval = request_irq(card->irq, b1_interrupt, IRQF_SHARED, card->name, card);
+ retval = request_irq(card->irq, b1_interrupt, SA_SHIRQ, card->name, card);
if (retval) {
printk(KERN_ERR "b1pcmcia: unable to get IRQ %d.\n",
card->irq);
diff --git a/trunk/drivers/isdn/hardware/avm/c4.c b/trunk/drivers/isdn/hardware/avm/c4.c
index 6c3d5f5f1f4b..e7924a545d49 100644
--- a/trunk/drivers/isdn/hardware/avm/c4.c
+++ b/trunk/drivers/isdn/hardware/avm/c4.c
@@ -1172,7 +1172,7 @@ static int c4_add_card(struct capicardparams *p, struct pci_dev *dev,
}
c4_reset(card);
- retval = request_irq(card->irq, c4_interrupt, IRQF_SHARED, card->name, card);
+ retval = request_irq(card->irq, c4_interrupt, SA_SHIRQ, card->name, card);
if (retval) {
printk(KERN_ERR "c4: unable to get IRQ %d.\n",card->irq);
retval = -EBUSY;
diff --git a/trunk/drivers/isdn/hardware/avm/t1pci.c b/trunk/drivers/isdn/hardware/avm/t1pci.c
index d1e253c94db4..af85511600d0 100644
--- a/trunk/drivers/isdn/hardware/avm/t1pci.c
+++ b/trunk/drivers/isdn/hardware/avm/t1pci.c
@@ -103,7 +103,7 @@ static int t1pci_add_card(struct capicardparams *p, struct pci_dev *pdev)
}
b1dma_reset(card);
- retval = request_irq(card->irq, b1dma_interrupt, IRQF_SHARED, card->name, card);
+ retval = request_irq(card->irq, b1dma_interrupt, SA_SHIRQ, card->name, card);
if (retval) {
printk(KERN_ERR "t1pci: unable to get IRQ %d.\n", card->irq);
retval = -EBUSY;
diff --git a/trunk/drivers/isdn/hardware/eicon/divasmain.c b/trunk/drivers/isdn/hardware/eicon/divasmain.c
index b7dadba13e82..b05e35f7ccb1 100644
--- a/trunk/drivers/isdn/hardware/eicon/divasmain.c
+++ b/trunk/drivers/isdn/hardware/eicon/divasmain.c
@@ -486,7 +486,7 @@ void __inline__ outpp(void __iomem *addr, word p)
int diva_os_register_irq(void *context, byte irq, const char *name)
{
int result = request_irq(irq, diva_os_irq_wrapper,
- IRQF_DISABLED | IRQF_SHARED, name, context);
+ SA_INTERRUPT | SA_SHIRQ, name, context);
return (result);
}
diff --git a/trunk/drivers/isdn/hisax/avm_a1p.c b/trunk/drivers/isdn/hisax/avm_a1p.c
index 574e252dfa43..d643bb32ad09 100644
--- a/trunk/drivers/isdn/hisax/avm_a1p.c
+++ b/trunk/drivers/isdn/hisax/avm_a1p.c
@@ -255,7 +255,7 @@ setup_avm_a1_pcmcia(struct IsdnCard *card)
cs->BC_Write_Reg = &WriteHSCX;
cs->BC_Send_Data = &hscx_fill_fifo;
cs->cardmsg = &AVM_card_msg;
- cs->irq_flags = IRQF_SHARED;
+ cs->irq_flags = SA_SHIRQ;
cs->irq_func = &avm_a1p_interrupt;
ISACVersion(cs, "AVM A1 PCMCIA:");
diff --git a/trunk/drivers/isdn/hisax/avm_pci.c b/trunk/drivers/isdn/hisax/avm_pci.c
index 04f5917bf5a1..93f3a5343a74 100644
--- a/trunk/drivers/isdn/hisax/avm_pci.c
+++ b/trunk/drivers/isdn/hisax/avm_pci.c
@@ -808,7 +808,7 @@ setup_avm_pcipnp(struct IsdnCard *card)
printk(KERN_WARNING "FritzPCI: No PCI card found\n");
return(0);
}
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
#else
printk(KERN_WARNING "FritzPCI: NO_PCI_BIOS\n");
return (0);
diff --git a/trunk/drivers/isdn/hisax/bkm_a4t.c b/trunk/drivers/isdn/hisax/bkm_a4t.c
index 3cf1f2421789..de28cb54817d 100644
--- a/trunk/drivers/isdn/hisax/bkm_a4t.c
+++ b/trunk/drivers/isdn/hisax/bkm_a4t.c
@@ -335,7 +335,7 @@ setup_bkm_a4t(struct IsdnCard *card)
cs->BC_Send_Data = &jade_fill_fifo;
cs->cardmsg = &BKM_card_msg;
cs->irq_func = &bkm_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
ISACVersion(cs, "Telekom A4T:");
/* Jade version */
JadeVersion(cs, "Telekom A4T:");
diff --git a/trunk/drivers/isdn/hisax/bkm_a8.c b/trunk/drivers/isdn/hisax/bkm_a8.c
index 15681f3e73b8..9d1abfb93dde 100644
--- a/trunk/drivers/isdn/hisax/bkm_a8.c
+++ b/trunk/drivers/isdn/hisax/bkm_a8.c
@@ -374,7 +374,7 @@ setup_sct_quadro(struct IsdnCard *card)
pci_ioaddr5 &= PCI_BASE_ADDRESS_IO_MASK;
/* Take over */
cs->irq = pci_irq;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
/* pci_ioaddr1 is unique to all subdevices */
/* pci_ioaddr2 is for the fourth subdevice only */
/* pci_ioaddr3 is for the third subdevice only */
diff --git a/trunk/drivers/isdn/hisax/diva.c b/trunk/drivers/isdn/hisax/diva.c
index 323a02ef3844..fbb9d02e3e29 100644
--- a/trunk/drivers/isdn/hisax/diva.c
+++ b/trunk/drivers/isdn/hisax/diva.c
@@ -1076,7 +1076,7 @@ setup_diva(struct IsdnCard *card)
printk(KERN_WARNING "Diva: No IO-Adr for PCI card found\n");
return(0);
}
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
#else
printk(KERN_WARNING "Diva: cfgreg 0 and NO_PCI_BIOS\n");
printk(KERN_WARNING "Diva: unable to config DIVA PCI\n");
diff --git a/trunk/drivers/isdn/hisax/elsa.c b/trunk/drivers/isdn/hisax/elsa.c
index 3b3e318f6076..7a5cdb1dee1e 100644
--- a/trunk/drivers/isdn/hisax/elsa.c
+++ b/trunk/drivers/isdn/hisax/elsa.c
@@ -85,8 +85,8 @@ static const char *ITACVer[] =
*** ***/
/* Config-Register (Read) */
-#define ELIRQF_TIMER_RUN 0x02 /* Bit 1 des Config-Reg */
-#define ELIRQF_TIMER_RUN_PCC8 0x01 /* Bit 0 des Config-Reg bei PCC */
+#define ELSA_TIMER_RUN 0x02 /* Bit 1 des Config-Reg */
+#define ELSA_TIMER_RUN_PCC8 0x01 /* Bit 0 des Config-Reg bei PCC */
#define ELSA_IRQ_IDX 0x38 /* Bit 3,4,5 des Config-Reg */
#define ELSA_IRQ_IDX_PCC8 0x30 /* Bit 4,5 des Config-Reg */
#define ELSA_IRQ_IDX_PC 0x0c /* Bit 2,3 des Config-Reg */
@@ -102,7 +102,7 @@ static const char *ITACVer[] =
#define ELSA_S0_POWER_BAD 0x08 /* Bit 3 S0-Bus Spannung fehlt */
/* Status Flags */
-#define ELIRQF_TIMER_AKTIV 1
+#define ELSA_TIMER_AKTIV 1
#define ELSA_BAD_PWR 2
#define ELSA_ASSIGN 4
@@ -259,10 +259,10 @@ TimerRun(struct IsdnCardState *cs)
v = bytein(cs->hw.elsa.cfg);
if ((cs->subtyp == ELSA_QS1000) || (cs->subtyp == ELSA_QS3000))
- return (0 == (v & ELIRQF_TIMER_RUN));
+ return (0 == (v & ELSA_TIMER_RUN));
else if (cs->subtyp == ELSA_PCC8)
- return (v & ELIRQF_TIMER_RUN_PCC8);
- return (v & ELIRQF_TIMER_RUN);
+ return (v & ELSA_TIMER_RUN_PCC8);
+ return (v & ELSA_TIMER_RUN);
}
/*
* fast interrupt HSCX stuff goes here
@@ -334,7 +334,7 @@ elsa_interrupt(int intno, void *dev_id, struct pt_regs *regs)
writereg(cs->hw.elsa.ale, cs->hw.elsa.hscx, HSCX_MASK, 0xFF);
writereg(cs->hw.elsa.ale, cs->hw.elsa.hscx, HSCX_MASK + 0x40, 0xFF);
writereg(cs->hw.elsa.ale, cs->hw.elsa.isac, ISAC_MASK, 0xFF);
- if (cs->hw.elsa.status & ELIRQF_TIMER_AKTIV) {
+ if (cs->hw.elsa.status & ELSA_TIMER_AKTIV) {
if (!TimerRun(cs)) {
/* Timer Restart */
byteout(cs->hw.elsa.timer, 0);
@@ -685,7 +685,7 @@ Elsa_card_msg(struct IsdnCardState *cs, int mt, void *arg)
spin_lock_irqsave(&cs->lock, flags);
cs->hw.elsa.counter = 0;
cs->hw.elsa.ctrl_reg |= ELSA_ENA_TIMER_INT;
- cs->hw.elsa.status |= ELIRQF_TIMER_AKTIV;
+ cs->hw.elsa.status |= ELSA_TIMER_AKTIV;
byteout(cs->hw.elsa.ctrl, cs->hw.elsa.ctrl_reg);
byteout(cs->hw.elsa.timer, 0);
spin_unlock_irqrestore(&cs->lock, flags);
@@ -693,7 +693,7 @@ Elsa_card_msg(struct IsdnCardState *cs, int mt, void *arg)
spin_lock_irqsave(&cs->lock, flags);
cs->hw.elsa.ctrl_reg &= ~ELSA_ENA_TIMER_INT;
byteout(cs->hw.elsa.ctrl, cs->hw.elsa.ctrl_reg);
- cs->hw.elsa.status &= ~ELIRQF_TIMER_AKTIV;
+ cs->hw.elsa.status &= ~ELSA_TIMER_AKTIV;
spin_unlock_irqrestore(&cs->lock, flags);
printk(KERN_INFO "Elsa: %d timer tics in 110 msek\n",
cs->hw.elsa.counter);
@@ -1012,7 +1012,7 @@ setup_elsa(struct IsdnCard *card)
cs->hw.elsa.timer = 0;
cs->hw.elsa.trig = 0;
cs->hw.elsa.ctrl = 0;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
printk(KERN_INFO
"Elsa: %s defined at %#lx IRQ %d\n",
Elsa_Types[cs->subtyp],
@@ -1061,7 +1061,7 @@ setup_elsa(struct IsdnCard *card)
test_and_set_bit(HW_IPAC, &cs->HW_Flags);
cs->hw.elsa.timer = 0;
cs->hw.elsa.trig = 0;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
printk(KERN_INFO
"Elsa: %s defined at %#lx/0x%x IRQ %d\n",
Elsa_Types[cs->subtyp],
diff --git a/trunk/drivers/isdn/hisax/enternow_pci.c b/trunk/drivers/isdn/hisax/enternow_pci.c
index 8fcbe2e7d765..5f4876184691 100644
--- a/trunk/drivers/isdn/hisax/enternow_pci.c
+++ b/trunk/drivers/isdn/hisax/enternow_pci.c
@@ -405,7 +405,7 @@ setup_enternow_pci(struct IsdnCard *card)
cs->BC_Send_Data = &netjet_fill_dma;
cs->cardmsg = &enpci_card_msg;
cs->irq_func = &enpci_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
return (1);
}
diff --git a/trunk/drivers/isdn/hisax/gazel.c b/trunk/drivers/isdn/hisax/gazel.c
index 3e7d92303582..82a1d2e86cee 100644
--- a/trunk/drivers/isdn/hisax/gazel.c
+++ b/trunk/drivers/isdn/hisax/gazel.c
@@ -592,7 +592,7 @@ setup_gazelpci(struct IsdnCardState *cs)
cs->hw.gazel.hscxfifo[0] = cs->hw.gazel.hscx[0];
cs->hw.gazel.hscxfifo[1] = cs->hw.gazel.hscx[1];
cs->irq = pci_irq;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
switch (seekcard) {
case PCI_DEVICE_ID_PLX_R685:
diff --git a/trunk/drivers/isdn/hisax/hfc4s8s_l1.c b/trunk/drivers/isdn/hisax/hfc4s8s_l1.c
index 0f967b3df79d..913fd27a1f55 100644
--- a/trunk/drivers/isdn/hisax/hfc4s8s_l1.c
+++ b/trunk/drivers/isdn/hisax/hfc4s8s_l1.c
@@ -1552,7 +1552,7 @@ setup_instance(hfc4s8s_hw * hw)
INIT_WORK(&hw->tqueue, (void *) (void *) hfc4s8s_bh, hw);
if (request_irq
- (hw->irq, hfc4s8s_interrupt, IRQF_SHARED, hw->card_name, hw)) {
+ (hw->irq, hfc4s8s_interrupt, SA_SHIRQ, hw->card_name, hw)) {
printk(KERN_INFO
"HFC-4S/8S: unable to alloc irq %d, card ignored\n",
hw->irq);
diff --git a/trunk/drivers/isdn/hisax/hfc_pci.c b/trunk/drivers/isdn/hisax/hfc_pci.c
index 7241e73879ba..fa9615747e26 100644
--- a/trunk/drivers/isdn/hisax/hfc_pci.c
+++ b/trunk/drivers/isdn/hisax/hfc_pci.c
@@ -1732,7 +1732,7 @@ setup_hfcpci(struct IsdnCard *card)
cs->BC_Read_Reg = NULL;
cs->BC_Write_Reg = NULL;
cs->irq_func = &hfcpci_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
cs->hw.hfcpci.timer.function = (void *) hfcpci_Timer;
cs->hw.hfcpci.timer.data = (long) cs;
init_timer(&cs->hw.hfcpci.timer);
diff --git a/trunk/drivers/isdn/hisax/hisax_fcpcipnp.c b/trunk/drivers/isdn/hisax/hisax_fcpcipnp.c
index 1d7cf3bd6aa3..dbcca287ee2c 100644
--- a/trunk/drivers/isdn/hisax/hisax_fcpcipnp.c
+++ b/trunk/drivers/isdn/hisax/hisax_fcpcipnp.c
@@ -725,11 +725,11 @@ static int __devinit fcpcipnp_setup(struct fritz_adapter *adapter)
switch (adapter->type) {
case AVM_FRITZ_PCIV2:
- retval = request_irq(adapter->irq, fcpci2_irq, IRQF_SHARED,
+ retval = request_irq(adapter->irq, fcpci2_irq, SA_SHIRQ,
"fcpcipnp", adapter);
break;
case AVM_FRITZ_PCI:
- retval = request_irq(adapter->irq, fcpci_irq, IRQF_SHARED,
+ retval = request_irq(adapter->irq, fcpci_irq, SA_SHIRQ,
"fcpcipnp", adapter);
break;
case AVM_FRITZ_PNP:
diff --git a/trunk/drivers/isdn/hisax/niccy.c b/trunk/drivers/isdn/hisax/niccy.c
index 79a97b1c3812..868762cf76c6 100644
--- a/trunk/drivers/isdn/hisax/niccy.c
+++ b/trunk/drivers/isdn/hisax/niccy.c
@@ -336,7 +336,7 @@ setup_niccy(struct IsdnCard *card)
printk(KERN_WARNING "Niccy: No PCI card found\n");
return(0);
}
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
cs->hw.niccy.isac = pci_ioaddr + ISAC_PCI_DATA;
cs->hw.niccy.isac_ale = pci_ioaddr + ISAC_PCI_ADDR;
cs->hw.niccy.hscx = pci_ioaddr + HSCX_PCI_DATA;
diff --git a/trunk/drivers/isdn/hisax/nj_s.c b/trunk/drivers/isdn/hisax/nj_s.c
index e5b900a6fa0b..1b3ac46df52c 100644
--- a/trunk/drivers/isdn/hisax/nj_s.c
+++ b/trunk/drivers/isdn/hisax/nj_s.c
@@ -271,7 +271,7 @@ setup_netjet_s(struct IsdnCard *card)
setup_isac(cs);
cs->cardmsg = &NETjet_S_card_msg;
cs->irq_func = &netjet_s_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
ISACVersion(cs, "NETjet-S:");
return (1);
}
diff --git a/trunk/drivers/isdn/hisax/nj_u.c b/trunk/drivers/isdn/hisax/nj_u.c
index 7002b09936d4..7a6010eac60d 100644
--- a/trunk/drivers/isdn/hisax/nj_u.c
+++ b/trunk/drivers/isdn/hisax/nj_u.c
@@ -237,7 +237,7 @@ setup_netjet_u(struct IsdnCard *card)
cs->BC_Send_Data = &netjet_fill_dma;
cs->cardmsg = &NETjet_U_card_msg;
cs->irq_func = &netjet_u_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
ICCVersion(cs, "NETspider-U:");
return (1);
}
diff --git a/trunk/drivers/isdn/hisax/sedlbauer.c b/trunk/drivers/isdn/hisax/sedlbauer.c
index 8d8e8a299892..11ea456626b6 100644
--- a/trunk/drivers/isdn/hisax/sedlbauer.c
+++ b/trunk/drivers/isdn/hisax/sedlbauer.c
@@ -632,7 +632,7 @@ setup_sedlbauer(struct IsdnCard *card)
printk(KERN_WARNING "Sedlbauer: No PCI card found\n");
return(0);
}
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
cs->hw.sedl.bus = SEDL_BUS_PCI;
sub_vendor_id = dev_sedl->subsystem_vendor;
sub_id = dev_sedl->subsystem_device;
@@ -809,7 +809,7 @@ setup_sedlbauer(struct IsdnCard *card)
cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_HSCX;
cs->hw.sedl.reset_on = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_RESET;
cs->hw.sedl.reset_off = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_RESET;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
} else {
cs->hw.sedl.adr = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_ADR;
cs->hw.sedl.isac = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_ISAC;
diff --git a/trunk/drivers/isdn/hisax/teles3.c b/trunk/drivers/isdn/hisax/teles3.c
index 5cb712437da4..090abd16b4bc 100644
--- a/trunk/drivers/isdn/hisax/teles3.c
+++ b/trunk/drivers/isdn/hisax/teles3.c
@@ -369,7 +369,7 @@ setup_teles3(struct IsdnCard *card)
cs->hw.teles3.hscx[1] + 96);
return (0);
}
- cs->irq_flags |= IRQF_SHARED; /* cardbus can share */
+ cs->irq_flags |= SA_SHIRQ; /* cardbus can share */
} else {
if (cs->hw.teles3.cfg_reg) {
if (cs->typ == ISDN_CTYPE_COMPAQ_ISA) {
diff --git a/trunk/drivers/isdn/hisax/telespci.c b/trunk/drivers/isdn/hisax/telespci.c
index 9382cdf04d8d..a1bb73e28841 100644
--- a/trunk/drivers/isdn/hisax/telespci.c
+++ b/trunk/drivers/isdn/hisax/telespci.c
@@ -347,7 +347,7 @@ setup_telespci(struct IsdnCard *card)
cs->BC_Send_Data = &hscx_fill_fifo;
cs->cardmsg = &TelesPCI_card_msg;
cs->irq_func = &telespci_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
ISACVersion(cs, "TelesPCI:");
if (HscxVersion(cs, "TelesPCI:")) {
printk(KERN_WARNING
diff --git a/trunk/drivers/isdn/hisax/w6692.c b/trunk/drivers/isdn/hisax/w6692.c
index 6c68419c05ff..00e4fa2aef51 100644
--- a/trunk/drivers/isdn/hisax/w6692.c
+++ b/trunk/drivers/isdn/hisax/w6692.c
@@ -1080,7 +1080,7 @@ setup_w6692(struct IsdnCard *card)
cs->BC_Send_Data = &W6692B_fill_fifo;
cs->cardmsg = &w6692_card_msg;
cs->irq_func = &W6692_interrupt;
- cs->irq_flags |= IRQF_SHARED;
+ cs->irq_flags |= SA_SHIRQ;
W6692Version(cs, "W6692:");
printk(KERN_INFO "W6692 ISTA=0x%X\n", ReadW6692(cs, W_ISTA));
printk(KERN_INFO "W6692 IMASK=0x%X\n", ReadW6692(cs, W_IMASK));
diff --git a/trunk/drivers/isdn/hysdn/boardergo.c b/trunk/drivers/isdn/hysdn/boardergo.c
index 73afebdf80bd..89fd531fbce6 100644
--- a/trunk/drivers/isdn/hysdn/boardergo.c
+++ b/trunk/drivers/isdn/hysdn/boardergo.c
@@ -435,7 +435,7 @@ ergo_inithardware(hysdn_card * card)
}
ergo_stopcard(card); /* disable interrupts */
- if (request_irq(card->irq, ergo_interrupt, IRQF_SHARED, "HYSDN", card)) {
+ if (request_irq(card->irq, ergo_interrupt, SA_SHIRQ, "HYSDN", card)) {
ergo_releasehardware(card); /* return the acquired hardware */
return (-1);
}
diff --git a/trunk/drivers/isdn/sc/init.c b/trunk/drivers/isdn/sc/init.c
index a627e68023f6..62b7acfad8a4 100644
--- a/trunk/drivers/isdn/sc/init.c
+++ b/trunk/drivers/isdn/sc/init.c
@@ -342,7 +342,7 @@ static int __init sc_init(void)
*/
sc_adapter[cinst]->interrupt = irq[b];
if (request_irq(sc_adapter[cinst]->interrupt, interrupt_handler,
- IRQF_DISABLED, interface->id, NULL))
+ SA_INTERRUPT, interface->id, NULL))
{
kfree(sc_adapter[cinst]->channel);
indicate_status(cinst, ISDN_STAT_UNLOAD, 0, NULL); /* Fix me */
diff --git a/trunk/drivers/macintosh/smu.c b/trunk/drivers/macintosh/smu.c
index ff6d9bfdc3d2..030130570e0a 100644
--- a/trunk/drivers/macintosh/smu.c
+++ b/trunk/drivers/macintosh/smu.c
@@ -555,7 +555,7 @@ static int smu_late_init(void)
if (smu->db_irq != NO_IRQ) {
if (request_irq(smu->db_irq, smu_db_intr,
- IRQF_SHARED, "SMU doorbell", smu) < 0) {
+ SA_SHIRQ, "SMU doorbell", smu) < 0) {
printk(KERN_WARNING "SMU: can't "
"request interrupt %d\n",
smu->db_irq);
@@ -565,7 +565,7 @@ static int smu_late_init(void)
if (smu->msg_irq != NO_IRQ) {
if (request_irq(smu->msg_irq, smu_msg_intr,
- IRQF_SHARED, "SMU message", smu) < 0) {
+ SA_SHIRQ, "SMU message", smu) < 0) {
printk(KERN_WARNING "SMU: can't "
"request interrupt %d\n",
smu->msg_irq);
diff --git a/trunk/drivers/media/common/saa7146_core.c b/trunk/drivers/media/common/saa7146_core.c
index b88451e33c09..8cdd4d265ffa 100644
--- a/trunk/drivers/media/common/saa7146_core.c
+++ b/trunk/drivers/media/common/saa7146_core.c
@@ -363,7 +363,7 @@ static int saa7146_init_one(struct pci_dev *pci, const struct pci_device_id *ent
saa7146_write(dev, MC2, 0xf8000000);
/* request an interrupt for the saa7146 */
- err = request_irq(pci->irq, interrupt_hw, IRQF_SHARED | IRQF_DISABLED,
+ err = request_irq(pci->irq, interrupt_hw, SA_SHIRQ | SA_INTERRUPT,
dev->name, dev);
if (err < 0) {
ERR(("request_irq() failed.\n"));
diff --git a/trunk/drivers/media/dvb/b2c2/flexcop-pci.c b/trunk/drivers/media/dvb/b2c2/flexcop-pci.c
index eb2e6432c8c2..f04041702191 100644
--- a/trunk/drivers/media/dvb/b2c2/flexcop-pci.c
+++ b/trunk/drivers/media/dvb/b2c2/flexcop-pci.c
@@ -294,7 +294,7 @@ static int flexcop_pci_init(struct flexcop_pci *fc_pci)
pci_set_drvdata(fc_pci->pdev, fc_pci);
if ((ret = request_irq(fc_pci->pdev->irq, flexcop_pci_isr,
- IRQF_SHARED, DRIVER_NAME, fc_pci)) != 0)
+ SA_SHIRQ, DRIVER_NAME, fc_pci)) != 0)
goto err_pci_iounmap;
spin_lock_init(&fc_pci->irq_lock);
diff --git a/trunk/drivers/media/dvb/bt8xx/bt878.c b/trunk/drivers/media/dvb/bt8xx/bt878.c
index 755822ee6e9b..761fa6e7d762 100644
--- a/trunk/drivers/media/dvb/bt8xx/bt878.c
+++ b/trunk/drivers/media/dvb/bt8xx/bt878.c
@@ -488,7 +488,7 @@ static int __devinit bt878_probe(struct pci_dev *dev,
btwrite(0, BT848_INT_MASK);
result = request_irq(bt->irq, bt878_irq,
- IRQF_SHARED | IRQF_DISABLED, "bt878",
+ SA_SHIRQ | SA_INTERRUPT, "bt878",
(void *) bt);
if (result == -EINVAL) {
printk(KERN_ERR "bt878(%d): Bad irq number or handler\n",
diff --git a/trunk/drivers/media/dvb/pluto2/pluto2.c b/trunk/drivers/media/dvb/pluto2/pluto2.c
index 2310b2bfed4e..acabea0793b6 100644
--- a/trunk/drivers/media/dvb/pluto2/pluto2.c
+++ b/trunk/drivers/media/dvb/pluto2/pluto2.c
@@ -616,7 +616,7 @@ static int __devinit pluto2_probe(struct pci_dev *pdev,
pci_set_drvdata(pdev, pluto);
- ret = request_irq(pdev->irq, pluto_irq, IRQF_SHARED, DRIVER_NAME, pluto);
+ ret = request_irq(pdev->irq, pluto_irq, SA_SHIRQ, DRIVER_NAME, pluto);
if (ret < 0)
goto err_pci_iounmap;
diff --git a/trunk/drivers/media/video/bt8xx/bttv-driver.c b/trunk/drivers/media/video/bt8xx/bttv-driver.c
index 5764a89d3562..aa3203ae670c 100644
--- a/trunk/drivers/media/video/bt8xx/bttv-driver.c
+++ b/trunk/drivers/media/video/bt8xx/bttv-driver.c
@@ -4050,7 +4050,7 @@ static int __devinit bttv_probe(struct pci_dev *dev,
/* disable irqs, register irq handler */
btwrite(0, BT848_INT_MASK);
result = request_irq(btv->c.pci->irq, bttv_irq,
- IRQF_SHARED | IRQF_DISABLED,btv->c.name,(void *)btv);
+ SA_SHIRQ | SA_INTERRUPT,btv->c.name,(void *)btv);
if (result < 0) {
printk(KERN_ERR "bttv%d: can't get IRQ %d\n",
bttv_num,btv->c.pci->irq);
diff --git a/trunk/drivers/media/video/cx88/cx88-alsa.c b/trunk/drivers/media/video/cx88/cx88-alsa.c
index f0340662e078..292a5e81eb75 100644
--- a/trunk/drivers/media/video/cx88/cx88-alsa.c
+++ b/trunk/drivers/media/video/cx88/cx88-alsa.c
@@ -700,7 +700,7 @@ static int __devinit snd_cx88_create(struct snd_card *card,
/* get irq */
err = request_irq(chip->pci->irq, cx8801_irq,
- IRQF_SHARED | IRQF_DISABLED, chip->core->name, chip);
+ SA_SHIRQ | SA_INTERRUPT, chip->core->name, chip);
if (err < 0) {
dprintk(0, "%s: can't get IRQ %d\n",
chip->core->name, chip->pci->irq);
diff --git a/trunk/drivers/media/video/cx88/cx88-mpeg.c b/trunk/drivers/media/video/cx88/cx88-mpeg.c
index 138a4f692501..2c12aca1b6a3 100644
--- a/trunk/drivers/media/video/cx88/cx88-mpeg.c
+++ b/trunk/drivers/media/video/cx88/cx88-mpeg.c
@@ -438,7 +438,7 @@ int cx8802_init_common(struct cx8802_dev *dev)
/* get irq */
err = request_irq(dev->pci->irq, cx8802_irq,
- IRQF_SHARED | IRQF_DISABLED, dev->core->name, dev);
+ SA_SHIRQ | SA_INTERRUPT, dev->core->name, dev);
if (err < 0) {
printk(KERN_ERR "%s: can't get IRQ %d\n",
dev->core->name, dev->pci->irq);
diff --git a/trunk/drivers/media/video/cx88/cx88-video.c b/trunk/drivers/media/video/cx88/cx88-video.c
index 2225d4b94140..c538d99ec9f6 100644
--- a/trunk/drivers/media/video/cx88/cx88-video.c
+++ b/trunk/drivers/media/video/cx88/cx88-video.c
@@ -1915,7 +1915,7 @@ static int __devinit cx8800_initdev(struct pci_dev *pci_dev,
/* get irq */
err = request_irq(pci_dev->irq, cx8800_irq,
- IRQF_SHARED | IRQF_DISABLED, core->name, dev);
+ SA_SHIRQ | SA_INTERRUPT, core->name, dev);
if (err < 0) {
printk(KERN_ERR "%s: can't get IRQ %d\n",
core->name,pci_dev->irq);
diff --git a/trunk/drivers/media/video/meye.c b/trunk/drivers/media/video/meye.c
index e278753f8f25..ddd62214bee5 100644
--- a/trunk/drivers/media/video/meye.c
+++ b/trunk/drivers/media/video/meye.c
@@ -1881,7 +1881,7 @@ static int __devinit meye_probe(struct pci_dev *pcidev,
meye.mchip_irq = pcidev->irq;
if (request_irq(meye.mchip_irq, meye_irq,
- IRQF_DISABLED | IRQF_SHARED, "meye", meye_irq)) {
+ SA_INTERRUPT | SA_SHIRQ, "meye", meye_irq)) {
printk(KERN_ERR "meye: request_irq failed\n");
goto outreqirq;
}
diff --git a/trunk/drivers/media/video/saa7134/saa7134-alsa.c b/trunk/drivers/media/video/saa7134/saa7134-alsa.c
index f1fd69e7f119..d77e6a8d9432 100644
--- a/trunk/drivers/media/video/saa7134/saa7134-alsa.c
+++ b/trunk/drivers/media/video/saa7134/saa7134-alsa.c
@@ -929,7 +929,7 @@ static int alsa_card_saa7134_create(struct saa7134_dev *dev, int devnum)
err = request_irq(dev->pci->irq, saa7134_alsa_irq,
- IRQF_SHARED | IRQF_DISABLED, dev->name,
+ SA_SHIRQ | SA_INTERRUPT, dev->name,
(void*) &dev->dmasound);
if (err < 0) {
diff --git a/trunk/drivers/media/video/saa7134/saa7134-core.c b/trunk/drivers/media/video/saa7134/saa7134-core.c
index 6e97cc84ba89..535172f643b9 100644
--- a/trunk/drivers/media/video/saa7134/saa7134-core.c
+++ b/trunk/drivers/media/video/saa7134/saa7134-core.c
@@ -923,7 +923,7 @@ static int __devinit saa7134_initdev(struct pci_dev *pci_dev,
/* get irq */
err = request_irq(pci_dev->irq, saa7134_irq,
- IRQF_SHARED | IRQF_DISABLED, dev->name, dev);
+ SA_SHIRQ | SA_INTERRUPT, dev->name, dev);
if (err < 0) {
printk(KERN_ERR "%s: can't get IRQ %d\n",
dev->name,pci_dev->irq);
diff --git a/trunk/drivers/media/video/saa7134/saa7134-oss.c b/trunk/drivers/media/video/saa7134/saa7134-oss.c
index 3895d05804ae..7aa02b34e012 100644
--- a/trunk/drivers/media/video/saa7134/saa7134-oss.c
+++ b/trunk/drivers/media/video/saa7134/saa7134-oss.c
@@ -845,7 +845,7 @@ int saa7134_oss_init1(struct saa7134_dev *dev)
{
if ((request_irq(dev->pci->irq, saa7134_oss_irq,
- IRQF_SHARED | IRQF_DISABLED, dev->name,
+ SA_SHIRQ | SA_INTERRUPT, dev->name,
(void*) &dev->dmasound)) < 0)
return -1;
diff --git a/trunk/drivers/media/video/stradis.c b/trunk/drivers/media/video/stradis.c
index b36ba9fa3a28..c18b31d9928c 100644
--- a/trunk/drivers/media/video/stradis.c
+++ b/trunk/drivers/media/video/stradis.c
@@ -1983,7 +1983,7 @@ static int __devinit configure_saa7146(struct pci_dev *pdev, int num)
memcpy(&saa->video_dev, &saa_template, sizeof(saa_template));
saawrite(0, SAA7146_IER); /* turn off all interrupts */
- retval = request_irq(saa->irq, saa7146_irq, IRQF_SHARED | IRQF_DISABLED,
+ retval = request_irq(saa->irq, saa7146_irq, SA_SHIRQ | SA_INTERRUPT,
"stradis", saa);
if (retval == -EINVAL)
dev_err(&pdev->dev, "%d: Bad irq number or handler\n", num);
diff --git a/trunk/drivers/media/video/zoran_card.c b/trunk/drivers/media/video/zoran_card.c
index f2249ed25273..33b32f3cf84e 100644
--- a/trunk/drivers/media/video/zoran_card.c
+++ b/trunk/drivers/media/video/zoran_card.c
@@ -1380,7 +1380,7 @@ find_zr36057 (void)
result = request_irq(zr->pci_dev->irq,
zoran_irq,
- IRQF_SHARED | IRQF_DISABLED,
+ SA_SHIRQ | SA_INTERRUPT,
ZR_DEVNAME(zr),
(void *) zr);
if (result < 0) {
diff --git a/trunk/drivers/media/video/zr36120.c b/trunk/drivers/media/video/zr36120.c
index 50437383ed62..6ac3b6740089 100644
--- a/trunk/drivers/media/video/zr36120.c
+++ b/trunk/drivers/media/video/zr36120.c
@@ -1858,7 +1858,7 @@ int __init find_zoran(void)
DEBUG(printk(KERN_DEBUG "zoran: mapped-memory at 0x%p\n",ztv->zoran_mem));
result = request_irq(dev->irq, zoran_irq,
- IRQF_SHARED|IRQF_DISABLED,"zoran", ztv);
+ SA_SHIRQ|SA_INTERRUPT,"zoran", ztv);
if (result==-EINVAL)
{
iounmap(ztv->zoran_mem);
diff --git a/trunk/drivers/message/fusion/mptbase.c b/trunk/drivers/message/fusion/mptbase.c
index 57543603d6c8..2544fc7af0f6 100644
--- a/trunk/drivers/message/fusion/mptbase.c
+++ b/trunk/drivers/message/fusion/mptbase.c
@@ -1705,7 +1705,7 @@ mpt_do_ioc_recovery(MPT_ADAPTER *ioc, u32 reason, int sleepFlag)
printk(MYIOC_s_INFO_FMT "PCI-MSI enabled\n",
ioc->name);
rc = request_irq(ioc->pcidev->irq, mpt_interrupt,
- IRQF_SHARED, ioc->name, ioc);
+ SA_SHIRQ, ioc->name, ioc);
if (rc < 0) {
printk(MYIOC_s_ERR_FMT "Unable to allocate "
"interrupt %d!\n", ioc->name,
diff --git a/trunk/drivers/message/i2o/pci.c b/trunk/drivers/message/i2o/pci.c
index 1b58444d5aaf..4f1515cae5dc 100644
--- a/trunk/drivers/message/i2o/pci.c
+++ b/trunk/drivers/message/i2o/pci.c
@@ -274,7 +274,7 @@ static int i2o_pci_irq_enable(struct i2o_controller *c)
writel(0xffffffff, c->irq_mask);
if (pdev->irq) {
- rc = request_irq(pdev->irq, i2o_pci_interrupt, IRQF_SHARED,
+ rc = request_irq(pdev->irq, i2o_pci_interrupt, SA_SHIRQ,
c->name, c);
if (rc < 0) {
printk(KERN_ERR "%s: unable to allocate interrupt %d."
diff --git a/trunk/drivers/mfd/ucb1x00-core.c b/trunk/drivers/mfd/ucb1x00-core.c
index 632bc218c86a..6fe2ff5a63db 100644
--- a/trunk/drivers/mfd/ucb1x00-core.c
+++ b/trunk/drivers/mfd/ucb1x00-core.c
@@ -508,7 +508,7 @@ static int ucb1x00_probe(struct mcp *mcp)
goto err_free;
}
- ret = request_irq(ucb->irq, ucb1x00_irq, IRQF_TRIGGER_RISING,
+ ret = request_irq(ucb->irq, ucb1x00_irq, SA_TRIGGER_RISING,
"UCB1x00", ucb);
if (ret) {
printk(KERN_ERR "ucb1x00: unable to grab irq%d: %d\n",
diff --git a/trunk/drivers/misc/ibmasm/module.c b/trunk/drivers/misc/ibmasm/module.c
index 2f3bddfab937..9706cc19134a 100644
--- a/trunk/drivers/misc/ibmasm/module.c
+++ b/trunk/drivers/misc/ibmasm/module.c
@@ -113,7 +113,7 @@ static int __devinit ibmasm_init_one(struct pci_dev *pdev, const struct pci_devi
goto error_ioremap;
}
- result = request_irq(sp->irq, ibmasm_interrupt_handler, IRQF_SHARED, sp->devname, (void*)sp);
+ result = request_irq(sp->irq, ibmasm_interrupt_handler, SA_SHIRQ, sp->devname, (void*)sp);
if (result) {
dev_err(sp->dev, "Failed to register interrupt handler\n");
goto error_request_irq;
diff --git a/trunk/drivers/mmc/at91_mci.c b/trunk/drivers/mmc/at91_mci.c
index 6b7638b84290..075a2a07924e 100644
--- a/trunk/drivers/mmc/at91_mci.c
+++ b/trunk/drivers/mmc/at91_mci.c
@@ -850,7 +850,7 @@ static int at91_mci_probe(struct platform_device *pdev)
/*
* Allocate the MCI interrupt
*/
- ret = request_irq(AT91_ID_MCI, at91_mci_irq, IRQF_SHARED, DRIVER_NAME, host);
+ ret = request_irq(AT91_ID_MCI, at91_mci_irq, SA_SHIRQ, DRIVER_NAME, host);
if (ret) {
printk(KERN_ERR "Failed to request MCI interrupt\n");
clk_disable(mci_clk);
diff --git a/trunk/drivers/mmc/au1xmmc.c b/trunk/drivers/mmc/au1xmmc.c
index fb606165af3b..41069908f4a7 100644
--- a/trunk/drivers/mmc/au1xmmc.c
+++ b/trunk/drivers/mmc/au1xmmc.c
@@ -886,7 +886,7 @@ static int __devinit au1xmmc_probe(struct platform_device *pdev)
int i, ret = 0;
/* THe interrupt is shared among all controllers */
- ret = request_irq(AU1100_SD_IRQ, au1xmmc_irq, IRQF_DISABLED, "MMC", 0);
+ ret = request_irq(AU1100_SD_IRQ, au1xmmc_irq, SA_INTERRUPT, "MMC", 0);
if (ret) {
printk(DRIVER_NAME "ERROR: Couldn't get int %d: %d\n",
diff --git a/trunk/drivers/mmc/mmci.c b/trunk/drivers/mmc/mmci.c
index 1886562abdd4..9dfb34a857e3 100644
--- a/trunk/drivers/mmc/mmci.c
+++ b/trunk/drivers/mmc/mmci.c
@@ -531,11 +531,11 @@ static int mmci_probe(struct amba_device *dev, void *id)
writel(0, host->base + MMCIMASK1);
writel(0xfff, host->base + MMCICLEAR);
- ret = request_irq(dev->irq[0], mmci_irq, IRQF_SHARED, DRIVER_NAME " (cmd)", host);
+ ret = request_irq(dev->irq[0], mmci_irq, SA_SHIRQ, DRIVER_NAME " (cmd)", host);
if (ret)
goto unmap;
- ret = request_irq(dev->irq[1], mmci_pio_irq, IRQF_SHARED, DRIVER_NAME " (pio)", host);
+ ret = request_irq(dev->irq[1], mmci_pio_irq, SA_SHIRQ, DRIVER_NAME " (pio)", host);
if (ret)
goto irq0_free;
diff --git a/trunk/drivers/mmc/omap.c b/trunk/drivers/mmc/omap.c
index e0e14b3423c6..7a4840ec53b7 100644
--- a/trunk/drivers/mmc/omap.c
+++ b/trunk/drivers/mmc/omap.c
@@ -1085,7 +1085,7 @@ static int __init mmc_omap_probe(struct platform_device *pdev)
omap_set_gpio_direction(host->switch_pin, 1);
ret = request_irq(OMAP_GPIO_IRQ(host->switch_pin),
- mmc_omap_switch_irq, IRQF_TRIGGER_RISING, DRIVER_NAME, host);
+ mmc_omap_switch_irq, SA_TRIGGER_RISING, DRIVER_NAME, host);
if (ret) {
dev_warn(mmc_dev(host->mmc), "Unable to get IRQ for MMC cover switch\n");
omap_free_gpio(host->switch_pin);
diff --git a/trunk/drivers/mmc/sdhci.c b/trunk/drivers/mmc/sdhci.c
index a871c09a6e11..0d9c327a84b0 100644
--- a/trunk/drivers/mmc/sdhci.c
+++ b/trunk/drivers/mmc/sdhci.c
@@ -1030,7 +1030,14 @@ static int __devinit sdhci_probe_slot(struct pci_dev *pdev, int slot)
else /* XXX: Hack to get MMC layer to avoid highmem */
pdev->dma_mask = 0;
- host->max_clk = (caps & SDHCI_CLOCK_BASE_MASK) >> SDHCI_CLOCK_BASE_SHIFT;
+ host->max_clk =
+ (caps & SDHCI_CLOCK_BASE_MASK) >> SDHCI_CLOCK_BASE_SHIFT;
+ if (host->max_clk == 0) {
+ printk(KERN_ERR "%s: Hardware doesn't specify base clock "
+ "frequency.\n", host->slot_descr);
+ ret = -ENODEV;
+ goto unmap;
+ }
host->max_clk *= 1000000;
/*
@@ -1075,10 +1082,10 @@ static int __devinit sdhci_probe_slot(struct pci_dev *pdev, int slot)
setup_timer(&host->timer, sdhci_timeout_timer, (long)host);
- ret = request_irq(host->irq, sdhci_irq, IRQF_SHARED,
+ ret = request_irq(host->irq, sdhci_irq, SA_SHIRQ,
host->slot_descr, host);
if (ret)
- goto unmap;
+ goto untasklet;
sdhci_init(host);
@@ -1097,10 +1104,10 @@ static int __devinit sdhci_probe_slot(struct pci_dev *pdev, int slot)
return 0;
-unmap:
+untasklet:
tasklet_kill(&host->card_tasklet);
tasklet_kill(&host->finish_tasklet);
-
+unmap:
iounmap(host->ioaddr);
release:
pci_release_region(pdev, host->bar);
diff --git a/trunk/drivers/mmc/wbsd.c b/trunk/drivers/mmc/wbsd.c
index 8a30ef3ae419..3fcd86c08ebd 100644
--- a/trunk/drivers/mmc/wbsd.c
+++ b/trunk/drivers/mmc/wbsd.c
@@ -1553,7 +1553,7 @@ static int __devinit wbsd_request_irq(struct wbsd_host *host, int irq)
* Allocate interrupt.
*/
- ret = request_irq(irq, wbsd_irq, IRQF_SHARED, DRIVER_NAME, host);
+ ret = request_irq(irq, wbsd_irq, SA_SHIRQ, DRIVER_NAME, host);
if (ret)
return ret;
diff --git a/trunk/drivers/net/3c515.c b/trunk/drivers/net/3c515.c
index 4532b17e40ea..ac60f3f62db8 100644
--- a/trunk/drivers/net/3c515.c
+++ b/trunk/drivers/net/3c515.c
@@ -760,7 +760,7 @@ static int corkscrew_open(struct net_device *dev)
vp->product_name, dev)) return -EAGAIN;
enable_dma(dev->dma);
set_dma_mode(dev->dma, DMA_MODE_CASCADE);
- } else if (request_irq(dev->irq, &corkscrew_interrupt, IRQF_SHARED,
+ } else if (request_irq(dev->irq, &corkscrew_interrupt, SA_SHIRQ,
vp->product_name, dev)) {
return -EAGAIN;
}
diff --git a/trunk/drivers/net/3c523.c b/trunk/drivers/net/3c523.c
index 5dfd97f0ba9e..4bf8510655c5 100644
--- a/trunk/drivers/net/3c523.c
+++ b/trunk/drivers/net/3c523.c
@@ -289,7 +289,7 @@ static int elmc_open(struct net_device *dev)
elmc_id_attn586(); /* disable interrupts */
- ret = request_irq(dev->irq, &elmc_interrupt, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ ret = request_irq(dev->irq, &elmc_interrupt, SA_SHIRQ | SA_SAMPLE_RANDOM,
dev->name, dev);
if (ret) {
printk(KERN_ERR "%s: couldn't get irq %d\n", dev->name, dev->irq);
diff --git a/trunk/drivers/net/3c527.c b/trunk/drivers/net/3c527.c
index 03c0f7176fc9..157eda573925 100644
--- a/trunk/drivers/net/3c527.c
+++ b/trunk/drivers/net/3c527.c
@@ -435,7 +435,7 @@ static int __init mc32_probe1(struct net_device *dev, int slot)
* Grab the IRQ
*/
- err = request_irq(dev->irq, &mc32_interrupt, IRQF_SHARED | IRQF_SAMPLE_RANDOM, DRV_NAME, dev);
+ err = request_irq(dev->irq, &mc32_interrupt, SA_SHIRQ | SA_SAMPLE_RANDOM, DRV_NAME, dev);
if (err) {
release_region(dev->base_addr, MC32_IO_EXTENT);
printk(KERN_ERR "%s: unable to get IRQ %d.\n", DRV_NAME, dev->irq);
diff --git a/trunk/drivers/net/3c59x.c b/trunk/drivers/net/3c59x.c
index 8ab03b4a885e..45125db44177 100644
--- a/trunk/drivers/net/3c59x.c
+++ b/trunk/drivers/net/3c59x.c
@@ -996,7 +996,7 @@ static int vortex_resume(struct pci_dev *pdev)
pci_enable_device(pdev);
pci_set_master(pdev);
if (request_irq(dev->irq, vp->full_bus_master_rx ?
- &boomerang_interrupt : &vortex_interrupt, IRQF_SHARED, dev->name, dev)) {
+ &boomerang_interrupt : &vortex_interrupt, SA_SHIRQ, dev->name, dev)) {
printk(KERN_WARNING "%s: Could not reserve IRQ %d\n", dev->name, dev->irq);
pci_disable_device(pdev);
return -EBUSY;
@@ -1833,7 +1833,7 @@ vortex_open(struct net_device *dev)
/* Use the now-standard shared IRQ implementation. */
if ((retval = request_irq(dev->irq, vp->full_bus_master_rx ?
- &boomerang_interrupt : &vortex_interrupt, IRQF_SHARED, dev->name, dev))) {
+ &boomerang_interrupt : &vortex_interrupt, SA_SHIRQ, dev->name, dev))) {
printk(KERN_ERR "%s: Could not reserve IRQ %d\n", dev->name, dev->irq);
goto out;
}
diff --git a/trunk/drivers/net/8139cp.c b/trunk/drivers/net/8139cp.c
index 1959654cbec8..1d7af760c2b1 100644
--- a/trunk/drivers/net/8139cp.c
+++ b/trunk/drivers/net/8139cp.c
@@ -1203,7 +1203,7 @@ static int cp_open (struct net_device *dev)
cp_init_hw(cp);
- rc = request_irq(dev->irq, cp_interrupt, IRQF_SHARED, dev->name, dev);
+ rc = request_irq(dev->irq, cp_interrupt, SA_SHIRQ, dev->name, dev);
if (rc)
goto err_out_hw;
diff --git a/trunk/drivers/net/8139too.c b/trunk/drivers/net/8139too.c
index 717506b2b13a..d21e98f5adbc 100644
--- a/trunk/drivers/net/8139too.c
+++ b/trunk/drivers/net/8139too.c
@@ -1310,7 +1310,7 @@ static int rtl8139_open (struct net_device *dev)
int retval;
void __iomem *ioaddr = tp->mmio_addr;
- retval = request_irq (dev->irq, rtl8139_interrupt, IRQF_SHARED, dev->name, dev);
+ retval = request_irq (dev->irq, rtl8139_interrupt, SA_SHIRQ, dev->name, dev);
if (retval)
return retval;
diff --git a/trunk/drivers/net/a2065.c b/trunk/drivers/net/a2065.c
index f4ea62641acd..519390c033c3 100644
--- a/trunk/drivers/net/a2065.c
+++ b/trunk/drivers/net/a2065.c
@@ -495,7 +495,7 @@ static int lance_open (struct net_device *dev)
ll->rdp = LE_C0_STOP;
/* Install the Interrupt handler */
- ret = request_irq(IRQ_AMIGA_PORTS, lance_interrupt, IRQF_SHARED,
+ ret = request_irq(IRQ_AMIGA_PORTS, lance_interrupt, SA_SHIRQ,
dev->name, dev);
if (ret) return ret;
diff --git a/trunk/drivers/net/acenic.c b/trunk/drivers/net/acenic.c
index 1c01e9b3d07c..c290b5ae63b2 100644
--- a/trunk/drivers/net/acenic.c
+++ b/trunk/drivers/net/acenic.c
@@ -1194,7 +1194,7 @@ static int __devinit ace_init(struct net_device *dev)
goto init_error;
}
- ecode = request_irq(pdev->irq, ace_interrupt, IRQF_SHARED,
+ ecode = request_irq(pdev->irq, ace_interrupt, SA_SHIRQ,
DRV_NAME, dev);
if (ecode) {
printk(KERN_WARNING "%s: Requested IRQ %d is busy\n",
diff --git a/trunk/drivers/net/amd8111e.c b/trunk/drivers/net/amd8111e.c
index ed322a76980d..c017c4f6b3b5 100644
--- a/trunk/drivers/net/amd8111e.c
+++ b/trunk/drivers/net/amd8111e.c
@@ -1376,7 +1376,7 @@ static int amd8111e_open(struct net_device * dev )
{
struct amd8111e_priv *lp = netdev_priv(dev);
- if(dev->irq ==0 || request_irq(dev->irq, amd8111e_interrupt, IRQF_SHARED,
+ if(dev->irq ==0 || request_irq(dev->irq, amd8111e_interrupt, SA_SHIRQ,
dev->name, dev))
return -EAGAIN;
diff --git a/trunk/drivers/net/apne.c b/trunk/drivers/net/apne.c
index 9cc13a0250d6..b9820b86cdcc 100644
--- a/trunk/drivers/net/apne.c
+++ b/trunk/drivers/net/apne.c
@@ -313,7 +313,7 @@ static int __init apne_probe1(struct net_device *dev, int ioaddr)
dev->base_addr = ioaddr;
/* Install the Interrupt handler */
- i = request_irq(IRQ_AMIGA_PORTS, apne_interrupt, IRQF_SHARED, DRV_NAME, dev);
+ i = request_irq(IRQ_AMIGA_PORTS, apne_interrupt, SA_SHIRQ, DRV_NAME, dev);
if (i) return i;
for(i = 0; i < ETHER_ADDR_LEN; i++) {
diff --git a/trunk/drivers/net/arcnet/com20020-pci.c b/trunk/drivers/net/arcnet/com20020-pci.c
index 979a33df0a8c..96636ca8754e 100644
--- a/trunk/drivers/net/arcnet/com20020-pci.c
+++ b/trunk/drivers/net/arcnet/com20020-pci.c
@@ -120,7 +120,7 @@ static int __devinit com20020pci_probe(struct pci_dev *pdev, const struct pci_de
goto out_port;
}
- if ((err = com20020_found(dev, IRQF_SHARED)) != 0)
+ if ((err = com20020_found(dev, SA_SHIRQ)) != 0)
goto out_port;
return 0;
diff --git a/trunk/drivers/net/ariadne.c b/trunk/drivers/net/ariadne.c
index cc721addd576..a9bb7a4aff98 100644
--- a/trunk/drivers/net/ariadne.c
+++ b/trunk/drivers/net/ariadne.c
@@ -320,7 +320,7 @@ static int ariadne_open(struct net_device *dev)
netif_start_queue(dev);
- i = request_irq(IRQ_AMIGA_PORTS, ariadne_interrupt, IRQF_SHARED,
+ i = request_irq(IRQ_AMIGA_PORTS, ariadne_interrupt, SA_SHIRQ,
dev->name, dev);
if (i) return i;
diff --git a/trunk/drivers/net/b44.c b/trunk/drivers/net/b44.c
index cd98d31dee8c..a7e4ba5a580f 100644
--- a/trunk/drivers/net/b44.c
+++ b/trunk/drivers/net/b44.c
@@ -1421,7 +1421,7 @@ static int b44_open(struct net_device *dev)
b44_check_phy(bp);
- err = request_irq(dev->irq, b44_interrupt, IRQF_SHARED, dev->name, dev);
+ err = request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev);
if (unlikely(err < 0)) {
b44_chip_reset(bp);
b44_free_rings(bp);
@@ -2322,7 +2322,7 @@ static int b44_resume(struct pci_dev *pdev)
if (!netif_running(dev))
return 0;
- if (request_irq(dev->irq, b44_interrupt, IRQF_SHARED, dev->name, dev))
+ if (request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev))
printk(KERN_ERR PFX "%s: request_irq failed\n", dev->name);
spin_lock_irq(&bp->lock);
diff --git a/trunk/drivers/net/bnx2.c b/trunk/drivers/net/bnx2.c
index 4f4db5ae503b..7e32d4ea71e2 100644
--- a/trunk/drivers/net/bnx2.c
+++ b/trunk/drivers/net/bnx2.c
@@ -4260,11 +4260,11 @@ bnx2_open(struct net_device *dev)
}
else {
rc = request_irq(bp->pdev->irq, bnx2_interrupt,
- IRQF_SHARED, dev->name, dev);
+ SA_SHIRQ, dev->name, dev);
}
}
else {
- rc = request_irq(bp->pdev->irq, bnx2_interrupt, IRQF_SHARED,
+ rc = request_irq(bp->pdev->irq, bnx2_interrupt, SA_SHIRQ,
dev->name, dev);
}
if (rc) {
@@ -4311,7 +4311,7 @@ bnx2_open(struct net_device *dev)
if (!rc) {
rc = request_irq(bp->pdev->irq, bnx2_interrupt,
- IRQF_SHARED, dev->name, dev);
+ SA_SHIRQ, dev->name, dev);
}
if (rc) {
bnx2_free_skbs(bp);
diff --git a/trunk/drivers/net/cassini.c b/trunk/drivers/net/cassini.c
index d33130f64700..b89c7bb2c591 100644
--- a/trunk/drivers/net/cassini.c
+++ b/trunk/drivers/net/cassini.c
@@ -4349,7 +4349,7 @@ static int cas_open(struct net_device *dev)
* mapping to expose them
*/
if (request_irq(cp->pdev->irq, cas_interrupt,
- IRQF_SHARED, dev->name, (void *) dev)) {
+ SA_SHIRQ, dev->name, (void *) dev)) {
printk(KERN_ERR "%s: failed to request irq !\n",
cp->dev->name);
err = -EAGAIN;
diff --git a/trunk/drivers/net/chelsio/cxgb2.c b/trunk/drivers/net/chelsio/cxgb2.c
index e67872433e92..c490a862e79c 100644
--- a/trunk/drivers/net/chelsio/cxgb2.c
+++ b/trunk/drivers/net/chelsio/cxgb2.c
@@ -218,7 +218,7 @@ static int cxgb_up(struct adapter *adapter)
t1_interrupts_clear(adapter);
if ((err = request_irq(adapter->pdev->irq,
- t1_select_intr_handler(adapter), IRQF_SHARED,
+ t1_select_intr_handler(adapter), SA_SHIRQ,
adapter->name, adapter))) {
goto out_err;
}
diff --git a/trunk/drivers/net/cris/eth_v10.c b/trunk/drivers/net/cris/eth_v10.c
index 0eb1f8787ed7..d3654fd71604 100644
--- a/trunk/drivers/net/cris/eth_v10.c
+++ b/trunk/drivers/net/cris/eth_v10.c
@@ -671,7 +671,7 @@ e100_open(struct net_device *dev)
/* allocate the irq corresponding to the receiving DMA */
if (request_irq(NETWORK_DMA_RX_IRQ_NBR, e100rxtx_interrupt,
- IRQF_SAMPLE_RANDOM, cardname, (void *)dev)) {
+ SA_SAMPLE_RANDOM, cardname, (void *)dev)) {
goto grace_exit0;
}
diff --git a/trunk/drivers/net/defxx.c b/trunk/drivers/net/defxx.c
index 91cc8cbdd440..5acd35c312ac 100644
--- a/trunk/drivers/net/defxx.c
+++ b/trunk/drivers/net/defxx.c
@@ -1228,7 +1228,7 @@ static int dfx_open(struct net_device *dev)
/* Register IRQ - support shared interrupts by passing device ptr */
- ret = request_irq(dev->irq, dfx_interrupt, IRQF_SHARED, dev->name, dev);
+ ret = request_irq(dev->irq, dfx_interrupt, SA_SHIRQ, dev->name, dev);
if (ret) {
printk(KERN_ERR "%s: Requested IRQ %d is busy\n", dev->name, dev->irq);
return ret;
diff --git a/trunk/drivers/net/dgrs.c b/trunk/drivers/net/dgrs.c
index fa4f09432975..e175d4876682 100644
--- a/trunk/drivers/net/dgrs.c
+++ b/trunk/drivers/net/dgrs.c
@@ -1191,7 +1191,7 @@ dgrs_probe1(struct net_device *dev)
if (priv->plxreg)
OUTL(dev->base_addr + PLX_LCL2PCI_DOORBELL, 1);
- rc = request_irq(dev->irq, &dgrs_intr, IRQF_SHARED, "RightSwitch", dev);
+ rc = request_irq(dev->irq, &dgrs_intr, SA_SHIRQ, "RightSwitch", dev);
if (rc)
goto err_out;
diff --git a/trunk/drivers/net/dl2k.c b/trunk/drivers/net/dl2k.c
index 4b6ddb70f921..29778055223b 100644
--- a/trunk/drivers/net/dl2k.c
+++ b/trunk/drivers/net/dl2k.c
@@ -440,7 +440,7 @@ rio_open (struct net_device *dev)
int i;
u16 macctrl;
- i = request_irq (dev->irq, &rio_interrupt, IRQF_SHARED, dev->name, dev);
+ i = request_irq (dev->irq, &rio_interrupt, SA_SHIRQ, dev->name, dev);
if (i)
return i;
diff --git a/trunk/drivers/net/dm9000.c b/trunk/drivers/net/dm9000.c
index 1b758b707134..7965a9b08e79 100644
--- a/trunk/drivers/net/dm9000.c
+++ b/trunk/drivers/net/dm9000.c
@@ -603,7 +603,7 @@ dm9000_open(struct net_device *dev)
PRINTK2("entering dm9000_open\n");
- if (request_irq(dev->irq, &dm9000_interrupt, IRQF_SHARED, dev->name, dev))
+ if (request_irq(dev->irq, &dm9000_interrupt, SA_SHIRQ, dev->name, dev))
return -EAGAIN;
/* Initialize DM9000 board */
diff --git a/trunk/drivers/net/e100.c b/trunk/drivers/net/e100.c
index 91ef5f2fd768..a1d676a0df7c 100644
--- a/trunk/drivers/net/e100.c
+++ b/trunk/drivers/net/e100.c
@@ -2063,7 +2063,7 @@ static int e100_up(struct nic *nic)
e100_set_multicast_list(nic->netdev);
e100_start_receiver(nic, NULL);
mod_timer(&nic->watchdog, jiffies);
- if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED,
+ if((err = request_irq(nic->pdev->irq, e100_intr, SA_SHIRQ,
nic->netdev->name, nic->netdev)))
goto err_no_irq;
netif_wake_queue(nic->netdev);
diff --git a/trunk/drivers/net/e1000/e1000_ethtool.c b/trunk/drivers/net/e1000/e1000_ethtool.c
index d19664891768..6ed7f599eba3 100644
--- a/trunk/drivers/net/e1000/e1000_ethtool.c
+++ b/trunk/drivers/net/e1000/e1000_ethtool.c
@@ -871,10 +871,10 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
*data = 0;
/* Hook up test interrupt handler just for this test */
- if (!request_irq(irq, &e1000_test_intr, IRQF_PROBE_SHARED,
- netdev->name, netdev)) {
+ if (!request_irq(irq, &e1000_test_intr, SA_PROBEIRQ, netdev->name,
+ netdev)) {
shared_int = FALSE;
- } else if (request_irq(irq, &e1000_test_intr, IRQF_SHARED,
+ } else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ,
netdev->name, netdev)){
*data = 1;
return -1;
diff --git a/trunk/drivers/net/e1000/e1000_main.c b/trunk/drivers/net/e1000/e1000_main.c
index f77624f5f17b..32b7d444b374 100644
--- a/trunk/drivers/net/e1000/e1000_main.c
+++ b/trunk/drivers/net/e1000/e1000_main.c
@@ -426,7 +426,7 @@ e1000_up(struct e1000_adapter *adapter)
}
#endif
if ((err = request_irq(adapter->pdev->irq, &e1000_intr,
- IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ SA_SHIRQ | SA_SAMPLE_RANDOM,
netdev->name, netdev))) {
DPRINTK(PROBE, ERR,
"Unable to allocate interrupt Error: %d\n", err);
diff --git a/trunk/drivers/net/eepro.c b/trunk/drivers/net/eepro.c
index 20d31430c74f..e70f172699db 100644
--- a/trunk/drivers/net/eepro.c
+++ b/trunk/drivers/net/eepro.c
@@ -920,7 +920,7 @@ static int eepro_grab_irq(struct net_device *dev)
eepro_sw2bank0(ioaddr); /* Switch back to Bank 0 */
- if (request_irq (*irqp, NULL, IRQF_SHARED, "bogus", dev) != EBUSY) {
+ if (request_irq (*irqp, NULL, SA_SHIRQ, "bogus", dev) != EBUSY) {
unsigned long irq_mask;
/* Twinkle the interrupt, and check if it's seen */
irq_mask = probe_irq_on();
diff --git a/trunk/drivers/net/eepro100.c b/trunk/drivers/net/eepro100.c
index 2ad327542927..1e2fbbbb966e 100644
--- a/trunk/drivers/net/eepro100.c
+++ b/trunk/drivers/net/eepro100.c
@@ -977,7 +977,7 @@ speedo_open(struct net_device *dev)
sp->in_interrupt = 0;
/* .. we can safely take handler calls during init. */
- retval = request_irq(dev->irq, &speedo_interrupt, IRQF_SHARED, dev->name, dev);
+ retval = request_irq(dev->irq, &speedo_interrupt, SA_SHIRQ, dev->name, dev);
if (retval) {
return retval;
}
diff --git a/trunk/drivers/net/epic100.c b/trunk/drivers/net/epic100.c
index 9f3e09a3d88c..b160abed8dd7 100644
--- a/trunk/drivers/net/epic100.c
+++ b/trunk/drivers/net/epic100.c
@@ -713,7 +713,7 @@ static int epic_open(struct net_device *dev)
/* Soft reset the chip. */
outl(0x4001, ioaddr + GENCTL);
- if ((retval = request_irq(dev->irq, &epic_interrupt, IRQF_SHARED, dev->name, dev)))
+ if ((retval = request_irq(dev->irq, &epic_interrupt, SA_SHIRQ, dev->name, dev)))
return retval;
epic_init_ring(dev);
diff --git a/trunk/drivers/net/fealnx.c b/trunk/drivers/net/fealnx.c
index c701951dcd6f..13eca7ede2af 100644
--- a/trunk/drivers/net/fealnx.c
+++ b/trunk/drivers/net/fealnx.c
@@ -834,7 +834,7 @@ static int netdev_open(struct net_device *dev)
iowrite32(0x00000001, ioaddr + BCR); /* Reset */
- if (request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev))
+ if (request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev))
return -EAGAIN;
for (i = 0; i < 3; i++)
diff --git a/trunk/drivers/net/forcedeth.c b/trunk/drivers/net/forcedeth.c
index 3c90003f4230..21be4fa071b5 100644
--- a/trunk/drivers/net/forcedeth.c
+++ b/trunk/drivers/net/forcedeth.c
@@ -2622,21 +2622,21 @@ static int nv_request_irq(struct net_device *dev, int intr_test)
np->msi_flags |= NV_MSI_X_ENABLED;
if (optimization_mode == NV_OPTIMIZATION_MODE_THROUGHPUT && !intr_test) {
/* Request irq for rx handling */
- if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector, &nv_nic_irq_rx, IRQF_SHARED, dev->name, dev) != 0) {
+ if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector, &nv_nic_irq_rx, SA_SHIRQ, dev->name, dev) != 0) {
printk(KERN_INFO "forcedeth: request_irq failed for rx %d\n", ret);
pci_disable_msix(np->pci_dev);
np->msi_flags &= ~NV_MSI_X_ENABLED;
goto out_err;
}
/* Request irq for tx handling */
- if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector, &nv_nic_irq_tx, IRQF_SHARED, dev->name, dev) != 0) {
+ if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector, &nv_nic_irq_tx, SA_SHIRQ, dev->name, dev) != 0) {
printk(KERN_INFO "forcedeth: request_irq failed for tx %d\n", ret);
pci_disable_msix(np->pci_dev);
np->msi_flags &= ~NV_MSI_X_ENABLED;
goto out_free_rx;
}
/* Request irq for link and timer handling */
- if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector, &nv_nic_irq_other, IRQF_SHARED, dev->name, dev) != 0) {
+ if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector, &nv_nic_irq_other, SA_SHIRQ, dev->name, dev) != 0) {
printk(KERN_INFO "forcedeth: request_irq failed for link %d\n", ret);
pci_disable_msix(np->pci_dev);
np->msi_flags &= ~NV_MSI_X_ENABLED;
@@ -2651,9 +2651,9 @@ static int nv_request_irq(struct net_device *dev, int intr_test)
} else {
/* Request irq for all interrupts */
if ((!intr_test &&
- request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq, IRQF_SHARED, dev->name, dev) != 0) ||
+ request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq, SA_SHIRQ, dev->name, dev) != 0) ||
(intr_test &&
- request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq_test, IRQF_SHARED, dev->name, dev) != 0)) {
+ request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq_test, SA_SHIRQ, dev->name, dev) != 0)) {
printk(KERN_INFO "forcedeth: request_irq failed %d\n", ret);
pci_disable_msix(np->pci_dev);
np->msi_flags &= ~NV_MSI_X_ENABLED;
@@ -2669,8 +2669,8 @@ static int nv_request_irq(struct net_device *dev, int intr_test)
if (ret != 0 && np->msi_flags & NV_MSI_CAPABLE) {
if ((ret = pci_enable_msi(np->pci_dev)) == 0) {
np->msi_flags |= NV_MSI_ENABLED;
- if ((!intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq, IRQF_SHARED, dev->name, dev) != 0) ||
- (intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq_test, IRQF_SHARED, dev->name, dev) != 0)) {
+ if ((!intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq, SA_SHIRQ, dev->name, dev) != 0) ||
+ (intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq_test, SA_SHIRQ, dev->name, dev) != 0)) {
printk(KERN_INFO "forcedeth: request_irq failed %d\n", ret);
pci_disable_msi(np->pci_dev);
np->msi_flags &= ~NV_MSI_ENABLED;
@@ -2685,8 +2685,8 @@ static int nv_request_irq(struct net_device *dev, int intr_test)
}
}
if (ret != 0) {
- if ((!intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq, IRQF_SHARED, dev->name, dev) != 0) ||
- (intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq_test, IRQF_SHARED, dev->name, dev) != 0))
+ if ((!intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq, SA_SHIRQ, dev->name, dev) != 0) ||
+ (intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq_test, SA_SHIRQ, dev->name, dev) != 0))
goto out_err;
}
diff --git a/trunk/drivers/net/fs_enet/fs_enet-main.c b/trunk/drivers/net/fs_enet/fs_enet-main.c
index f6abff5846b3..e96a93c94941 100644
--- a/trunk/drivers/net/fs_enet/fs_enet-main.c
+++ b/trunk/drivers/net/fs_enet/fs_enet-main.c
@@ -671,7 +671,7 @@ static int fs_request_irq(struct net_device *dev, int irq, const char *name,
struct fs_enet_private *fep = netdev_priv(dev);
(*fep->ops->pre_request_irq)(dev, irq);
- return request_irq(irq, irqf, IRQF_SHARED, name, dev);
+ return request_irq(irq, irqf, SA_SHIRQ, name, dev);
}
static void fs_free_irq(struct net_device *dev, int irq)
diff --git a/trunk/drivers/net/gt96100eth.c b/trunk/drivers/net/gt96100eth.c
index 49dacc6e35aa..2d2435404614 100644
--- a/trunk/drivers/net/gt96100eth.c
+++ b/trunk/drivers/net/gt96100eth.c
@@ -1030,7 +1030,7 @@ gt96100_open(struct net_device *dev)
}
if ((retval = request_irq(dev->irq, >96100_interrupt,
- IRQF_SHARED, dev->name, dev))) {
+ SA_SHIRQ, dev->name, dev))) {
err("unable to get IRQ %d\n", dev->irq);
return retval;
}
diff --git a/trunk/drivers/net/hamachi.c b/trunk/drivers/net/hamachi.c
index 7bcd939c6edd..0ea4cb4a0d80 100644
--- a/trunk/drivers/net/hamachi.c
+++ b/trunk/drivers/net/hamachi.c
@@ -871,7 +871,7 @@ static int hamachi_open(struct net_device *dev)
u32 rx_int_var, tx_int_var;
u16 fifo_info;
- i = request_irq(dev->irq, &hamachi_interrupt, IRQF_SHARED, dev->name, dev);
+ i = request_irq(dev->irq, &hamachi_interrupt, SA_SHIRQ, dev->name, dev);
if (i)
return i;
diff --git a/trunk/drivers/net/hamradio/baycom_ser_fdx.c b/trunk/drivers/net/hamradio/baycom_ser_fdx.c
index 55906c7b4bb1..232793d2ce6b 100644
--- a/trunk/drivers/net/hamradio/baycom_ser_fdx.c
+++ b/trunk/drivers/net/hamradio/baycom_ser_fdx.c
@@ -434,7 +434,7 @@ static int ser12_open(struct net_device *dev)
outb(0, FCR(dev->base_addr)); /* disable FIFOs */
outb(0x0d, MCR(dev->base_addr));
outb(0, IER(dev->base_addr));
- if (request_irq(dev->irq, ser12_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ if (request_irq(dev->irq, ser12_interrupt, SA_INTERRUPT | SA_SHIRQ,
"baycom_ser_fdx", dev)) {
release_region(dev->base_addr, SER12_EXTENT);
return -EBUSY;
diff --git a/trunk/drivers/net/hamradio/baycom_ser_hdx.c b/trunk/drivers/net/hamradio/baycom_ser_hdx.c
index de95de8983da..be596a3eb3fd 100644
--- a/trunk/drivers/net/hamradio/baycom_ser_hdx.c
+++ b/trunk/drivers/net/hamradio/baycom_ser_hdx.c
@@ -488,7 +488,7 @@ static int ser12_open(struct net_device *dev)
outb(0, FCR(dev->base_addr)); /* disable FIFOs */
outb(0x0d, MCR(dev->base_addr));
outb(0, IER(dev->base_addr));
- if (request_irq(dev->irq, ser12_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ if (request_irq(dev->irq, ser12_interrupt, SA_INTERRUPT | SA_SHIRQ,
"baycom_ser12", dev)) {
release_region(dev->base_addr, SER12_EXTENT);
return -EBUSY;
diff --git a/trunk/drivers/net/hamradio/scc.c b/trunk/drivers/net/hamradio/scc.c
index df4b68142ac7..b9b10caa031c 100644
--- a/trunk/drivers/net/hamradio/scc.c
+++ b/trunk/drivers/net/hamradio/scc.c
@@ -1736,7 +1736,7 @@ static int scc_net_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
if (!Ivec[hwcfg.irq].used && hwcfg.irq)
{
- if (request_irq(hwcfg.irq, scc_isr, IRQF_DISABLED, "AX.25 SCC", NULL))
+ if (request_irq(hwcfg.irq, scc_isr, SA_INTERRUPT, "AX.25 SCC", NULL))
printk(KERN_WARNING "z8530drv: warning, cannot get IRQ %d\n", hwcfg.irq);
else
Ivec[hwcfg.irq].used = 1;
diff --git a/trunk/drivers/net/hamradio/yam.c b/trunk/drivers/net/hamradio/yam.c
index f98f5777dfbb..dd2f11c98530 100644
--- a/trunk/drivers/net/hamradio/yam.c
+++ b/trunk/drivers/net/hamradio/yam.c
@@ -873,7 +873,7 @@ static int yam_open(struct net_device *dev)
goto out_release_base;
}
outb(0, IER(dev->base_addr));
- if (request_irq(dev->irq, yam_interrupt, IRQF_DISABLED | IRQF_SHARED, dev->name, dev)) {
+ if (request_irq(dev->irq, yam_interrupt, SA_INTERRUPT | SA_SHIRQ, dev->name, dev)) {
printk(KERN_ERR "%s: irq %d busy\n", dev->name, dev->irq);
ret = -EBUSY;
goto out_release_base;
diff --git a/trunk/drivers/net/hp100.c b/trunk/drivers/net/hp100.c
index e7d9bf330287..dd1dc32dc98d 100644
--- a/trunk/drivers/net/hp100.c
+++ b/trunk/drivers/net/hp100.c
@@ -1079,7 +1079,7 @@ static int hp100_open(struct net_device *dev)
/* New: if bus is PCI or EISA, interrupts might be shared interrupts */
if (request_irq(dev->irq, hp100_interrupt,
lp->bus == HP100_BUS_PCI || lp->bus ==
- HP100_BUS_EISA ? IRQF_SHARED : IRQF_DISABLED,
+ HP100_BUS_EISA ? SA_SHIRQ : SA_INTERRUPT,
"hp100", dev)) {
printk("hp100: %s: unable to get IRQ %d\n", dev->name, dev->irq);
return -EAGAIN;
diff --git a/trunk/drivers/net/hydra.c b/trunk/drivers/net/hydra.c
index 91326ea3e12b..d9fb8e74e631 100644
--- a/trunk/drivers/net/hydra.c
+++ b/trunk/drivers/net/hydra.c
@@ -117,7 +117,7 @@ static int __devinit hydra_init(struct zorro_dev *z)
dev->irq = IRQ_AMIGA_PORTS;
/* Install the Interrupt handler */
- if (request_irq(IRQ_AMIGA_PORTS, ei_interrupt, IRQF_SHARED, "Hydra Ethernet",
+ if (request_irq(IRQ_AMIGA_PORTS, ei_interrupt, SA_SHIRQ, "Hydra Ethernet",
dev)) {
free_netdev(dev);
return -EAGAIN;
diff --git a/trunk/drivers/net/ibmlana.c b/trunk/drivers/net/ibmlana.c
index 2a95d72fa593..51fd51609ea9 100644
--- a/trunk/drivers/net/ibmlana.c
+++ b/trunk/drivers/net/ibmlana.c
@@ -782,7 +782,7 @@ static int ibmlana_open(struct net_device *dev)
/* register resources - only necessary for IRQ */
- result = request_irq(priv->realirq, irq_handler, IRQF_SHARED | IRQF_SAMPLE_RANDOM, dev->name, dev);
+ result = request_irq(priv->realirq, irq_handler, SA_SHIRQ | SA_SAMPLE_RANDOM, dev->name, dev);
if (result != 0) {
printk(KERN_ERR "%s: failed to register irq %d\n", dev->name, dev->irq);
return result;
diff --git a/trunk/drivers/net/ioc3-eth.c b/trunk/drivers/net/ioc3-eth.c
index 68d8af7df08e..dbf67750d899 100644
--- a/trunk/drivers/net/ioc3-eth.c
+++ b/trunk/drivers/net/ioc3-eth.c
@@ -1063,7 +1063,7 @@ static int ioc3_open(struct net_device *dev)
{
struct ioc3_private *ip = netdev_priv(dev);
- if (request_irq(dev->irq, ioc3_interrupt, IRQF_SHARED, ioc3_str, dev)) {
+ if (request_irq(dev->irq, ioc3_interrupt, SA_SHIRQ, ioc3_str, dev)) {
printk(KERN_ERR "%s: Can't get irq %d\n", dev->name, dev->irq);
return -EAGAIN;
diff --git a/trunk/drivers/net/irda/donauboe.c b/trunk/drivers/net/irda/donauboe.c
index 33c07d5275da..910c0cab35b0 100644
--- a/trunk/drivers/net/irda/donauboe.c
+++ b/trunk/drivers/net/irda/donauboe.c
@@ -1372,7 +1372,7 @@ toshoboe_net_open (struct net_device *dev)
return 0;
if (request_irq (self->io.irq, toshoboe_interrupt,
- IRQF_SHARED | IRQF_DISABLED, dev->name, (void *) self))
+ SA_SHIRQ | SA_INTERRUPT, dev->name, (void *) self))
{
return -EAGAIN;
}
@@ -1573,7 +1573,7 @@ toshoboe_open (struct pci_dev *pci_dev, const struct pci_device_id *pdid)
self->io.fir_base = self->base;
self->io.fir_ext = OBOE_IO_EXTENT;
self->io.irq = pci_dev->irq;
- self->io.irqflags = IRQF_SHARED | IRQF_DISABLED;
+ self->io.irqflags = SA_SHIRQ | SA_INTERRUPT;
self->speed = self->io.speed = 9600;
self->async = 0;
diff --git a/trunk/drivers/net/irda/vlsi_ir.c b/trunk/drivers/net/irda/vlsi_ir.c
index 92d646cc9edc..b9f28b14b3ae 100644
--- a/trunk/drivers/net/irda/vlsi_ir.c
+++ b/trunk/drivers/net/irda/vlsi_ir.c
@@ -1517,7 +1517,7 @@ static int vlsi_open(struct net_device *ndev)
outb(IRINTR_INT_MASK, ndev->base_addr+VLSI_PIO_IRINTR);
- if (request_irq(ndev->irq, vlsi_interrupt, IRQF_SHARED,
+ if (request_irq(ndev->irq, vlsi_interrupt, SA_SHIRQ,
drivername, ndev)) {
IRDA_WARNING("%s: couldn't get IRQ: %d\n",
__FUNCTION__, ndev->irq);
diff --git a/trunk/drivers/net/ixgb/ixgb_main.c b/trunk/drivers/net/ixgb/ixgb_main.c
index b91e082483f6..8bb32f946993 100644
--- a/trunk/drivers/net/ixgb/ixgb_main.c
+++ b/trunk/drivers/net/ixgb/ixgb_main.c
@@ -253,7 +253,7 @@ ixgb_up(struct ixgb_adapter *adapter)
#endif
if((err = request_irq(adapter->pdev->irq, &ixgb_intr,
- IRQF_SHARED | IRQF_SAMPLE_RANDOM,
+ SA_SHIRQ | SA_SAMPLE_RANDOM,
netdev->name, netdev))) {
DPRINTK(PROBE, ERR,
"Unable to allocate interrupt Error: %d\n", err);
diff --git a/trunk/drivers/net/ixp2000/ixpdev.c b/trunk/drivers/net/ixp2000/ixpdev.c
index 6eeb965b4d72..99229a0456d9 100644
--- a/trunk/drivers/net/ixp2000/ixpdev.c
+++ b/trunk/drivers/net/ixp2000/ixpdev.c
@@ -235,7 +235,7 @@ static int ixpdev_open(struct net_device *dev)
if (!nds_open++) {
err = request_irq(IRQ_IXP2000_THDA0, ixpdev_interrupt,
- IRQF_SHARED, "ixp2000_eth", nds);
+ SA_SHIRQ, "ixp2000_eth", nds);
if (err) {
nds_open--;
return err;
diff --git a/trunk/drivers/net/jazzsonic.c b/trunk/drivers/net/jazzsonic.c
index 661d75b4cad2..272d331d29cd 100644
--- a/trunk/drivers/net/jazzsonic.c
+++ b/trunk/drivers/net/jazzsonic.c
@@ -260,7 +260,7 @@ MODULE_DESCRIPTION("Jazz SONIC ethernet driver");
module_param(sonic_debug, int, 0);
MODULE_PARM_DESC(sonic_debug, "jazzsonic debug level (1-4)");
-#define SONIC_IRQ_FLAG IRQF_DISABLED
+#define SONIC_IRQ_FLAG SA_INTERRUPT
#include "sonic.c"
diff --git a/trunk/drivers/net/lp486e.c b/trunk/drivers/net/lp486e.c
index b783a6984abc..bf3f343ae715 100644
--- a/trunk/drivers/net/lp486e.c
+++ b/trunk/drivers/net/lp486e.c
@@ -851,7 +851,7 @@ static int i596_open(struct net_device *dev)
{
int i;
- i = request_irq(dev->irq, &i596_interrupt, IRQF_SHARED, dev->name, dev);
+ i = request_irq(dev->irq, &i596_interrupt, SA_SHIRQ, dev->name, dev);
if (i) {
printk(KERN_ERR "%s: IRQ %d not free\n", dev->name, dev->irq);
return i;
diff --git a/trunk/drivers/net/mipsnet.c b/trunk/drivers/net/mipsnet.c
index 07e58f4a2916..bbffb585b3b3 100644
--- a/trunk/drivers/net/mipsnet.c
+++ b/trunk/drivers/net/mipsnet.c
@@ -179,7 +179,7 @@ static int mipsnet_open(struct net_device *dev)
pr_debug("%s: mipsnet_open\n", dev->name);
err = request_irq(dev->irq, &mipsnet_interrupt,
- IRQF_SHARED, dev->name, (void *) dev);
+ SA_SHIRQ, dev->name, (void *) dev);
if (err) {
pr_debug("%s: %s(): can't get irq %d\n",
diff --git a/trunk/drivers/net/mv643xx_eth.c b/trunk/drivers/net/mv643xx_eth.c
index 760c61b98867..625ff61c9988 100644
--- a/trunk/drivers/net/mv643xx_eth.c
+++ b/trunk/drivers/net/mv643xx_eth.c
@@ -778,7 +778,7 @@ static int mv643xx_eth_open(struct net_device *dev)
int err;
err = request_irq(dev->irq, mv643xx_eth_int_handler,
- IRQF_SHARED | IRQF_SAMPLE_RANDOM, dev->name, dev);
+ SA_SHIRQ | SA_SAMPLE_RANDOM, dev->name, dev);
if (err) {
printk(KERN_ERR "Can not assign IRQ number to MV643XX_eth%d\n",
port_num);
diff --git a/trunk/drivers/net/myri10ge/myri10ge.c b/trunk/drivers/net/myri10ge/myri10ge.c
index 72aad42db7b4..dbdf189436fa 100644
--- a/trunk/drivers/net/myri10ge/myri10ge.c
+++ b/trunk/drivers/net/myri10ge/myri10ge.c
@@ -2413,7 +2413,7 @@ static int myri10ge_resume(struct pci_dev *pdev)
pci_enable_device(pdev);
pci_set_master(pdev);
- status = request_irq(pdev->irq, myri10ge_intr, IRQF_SHARED,
+ status = request_irq(pdev->irq, myri10ge_intr, SA_SHIRQ,
netdev->name, mgp);
if (status != 0) {
dev_err(&pdev->dev, "failed to allocate IRQ\n");
@@ -2694,7 +2694,7 @@ static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
mgp->msi_enabled = 1;
}
- status = request_irq(pdev->irq, myri10ge_intr, IRQF_SHARED,
+ status = request_irq(pdev->irq, myri10ge_intr, SA_SHIRQ,
netdev->name, mgp);
if (status != 0) {
dev_err(&pdev->dev, "failed to allocate IRQ\n");
diff --git a/trunk/drivers/net/myri_sbus.c b/trunk/drivers/net/myri_sbus.c
index 1b965a2b56e4..19981065efb4 100644
--- a/trunk/drivers/net/myri_sbus.c
+++ b/trunk/drivers/net/myri_sbus.c
@@ -1069,7 +1069,7 @@ static int __init myri_ether_init(struct sbus_dev *sdev)
/* Register interrupt handler now. */
DET(("Requesting MYRIcom IRQ line.\n"));
if (request_irq(dev->irq, &myri_interrupt,
- IRQF_SHARED, "MyriCOM Ethernet", (void *) dev)) {
+ SA_SHIRQ, "MyriCOM Ethernet", (void *) dev)) {
printk("MyriCOM: Cannot register interrupt handler.\n");
goto err;
}
diff --git a/trunk/drivers/net/natsemi.c b/trunk/drivers/net/natsemi.c
index 9df2628be1e7..438c63f940b9 100644
--- a/trunk/drivers/net/natsemi.c
+++ b/trunk/drivers/net/natsemi.c
@@ -1574,7 +1574,7 @@ static int netdev_open(struct net_device *dev)
/* Reset the chip, just in case. */
natsemi_reset(dev);
- i = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
+ i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
if (i) return i;
if (netif_msg_ifup(np))
diff --git a/trunk/drivers/net/ne2k-pci.c b/trunk/drivers/net/ne2k-pci.c
index fa50eb889408..ced9fdb8335c 100644
--- a/trunk/drivers/net/ne2k-pci.c
+++ b/trunk/drivers/net/ne2k-pci.c
@@ -420,7 +420,7 @@ static int ne2k_pci_set_fdx(struct net_device *dev)
static int ne2k_pci_open(struct net_device *dev)
{
- int ret = request_irq(dev->irq, ei_interrupt, IRQF_SHARED, dev->name, dev);
+ int ret = request_irq(dev->irq, ei_interrupt, SA_SHIRQ, dev->name, dev);
if (ret)
return ret;
diff --git a/trunk/drivers/net/netx-eth.c b/trunk/drivers/net/netx-eth.c
index b1311ae82675..b92430c4e3ac 100644
--- a/trunk/drivers/net/netx-eth.c
+++ b/trunk/drivers/net/netx-eth.c
@@ -223,7 +223,7 @@ static int netx_eth_open(struct net_device *ndev)
struct netx_eth_priv *priv = netdev_priv(ndev);
if (request_irq
- (ndev->irq, &netx_eth_interrupt, IRQF_SHARED, ndev->name, ndev))
+ (ndev->irq, &netx_eth_interrupt, SA_SHIRQ, ndev->name, ndev))
return -EAGAIN;
writel(ndev->dev_addr[0] |
diff --git a/trunk/drivers/net/ns83820.c b/trunk/drivers/net/ns83820.c
index 70429108c40d..deedd7b2af5d 100644
--- a/trunk/drivers/net/ns83820.c
+++ b/trunk/drivers/net/ns83820.c
@@ -1881,7 +1881,7 @@ static int __devinit ns83820_init_one(struct pci_dev *pci_dev, const struct pci_
dev->IMR_cache = 0;
- err = request_irq(pci_dev->irq, ns83820_irq, IRQF_SHARED,
+ err = request_irq(pci_dev->irq, ns83820_irq, SA_SHIRQ,
DRV_NAME, ndev);
if (err) {
printk(KERN_INFO "ns83820: unable to register irq %d\n",
diff --git a/trunk/drivers/net/pci-skeleton.c b/trunk/drivers/net/pci-skeleton.c
index 3388ee1313ea..978b95afc721 100644
--- a/trunk/drivers/net/pci-skeleton.c
+++ b/trunk/drivers/net/pci-skeleton.c
@@ -1075,7 +1075,7 @@ static int netdrv_open (struct net_device *dev)
DPRINTK ("ENTER\n");
- retval = request_irq (dev->irq, netdrv_interrupt, IRQF_SHARED, dev->name, dev);
+ retval = request_irq (dev->irq, netdrv_interrupt, SA_SHIRQ, dev->name, dev);
if (retval) {
DPRINTK ("EXIT, returning %d\n", retval);
return retval;
diff --git a/trunk/drivers/net/pcmcia/axnet_cs.c b/trunk/drivers/net/pcmcia/axnet_cs.c
index 297e9f805366..2ea66aca648b 100644
--- a/trunk/drivers/net/pcmcia/axnet_cs.c
+++ b/trunk/drivers/net/pcmcia/axnet_cs.c
@@ -535,7 +535,7 @@ static int axnet_open(struct net_device *dev)
link->open++;
- request_irq(dev->irq, ei_irq_wrapper, IRQF_SHARED, "axnet_cs", dev);
+ request_irq(dev->irq, ei_irq_wrapper, SA_SHIRQ, "axnet_cs", dev);
info->link_status = 0x00;
init_timer(&info->watchdog);
diff --git a/trunk/drivers/net/pcmcia/pcnet_cs.c b/trunk/drivers/net/pcmcia/pcnet_cs.c
index 0ecebfc31f07..661bfe54ff5d 100644
--- a/trunk/drivers/net/pcmcia/pcnet_cs.c
+++ b/trunk/drivers/net/pcmcia/pcnet_cs.c
@@ -998,7 +998,7 @@ static int pcnet_open(struct net_device *dev)
link->open++;
set_misc_reg(dev);
- request_irq(dev->irq, ei_irq_wrapper, IRQF_SHARED, dev_info, dev);
+ request_irq(dev->irq, ei_irq_wrapper, SA_SHIRQ, dev_info, dev);
info->phy_id = info->eth_phy;
info->link_status = 0x00;
diff --git a/trunk/drivers/net/pcnet32.c b/trunk/drivers/net/pcnet32.c
index d768f3d1ac28..0e01c75da429 100644
--- a/trunk/drivers/net/pcnet32.c
+++ b/trunk/drivers/net/pcnet32.c
@@ -1541,7 +1541,7 @@ static int pcnet32_open(struct net_device *dev)
unsigned long flags;
if (request_irq(dev->irq, &pcnet32_interrupt,
- lp->shared_irq ? IRQF_SHARED : 0, dev->name,
+ lp->shared_irq ? SA_SHIRQ : 0, dev->name,
(void *)dev)) {
return -EAGAIN;
}
diff --git a/trunk/drivers/net/phy/phy.c b/trunk/drivers/net/phy/phy.c
index 7d5c2233c252..44bcd3eb2b83 100644
--- a/trunk/drivers/net/phy/phy.c
+++ b/trunk/drivers/net/phy/phy.c
@@ -556,7 +556,7 @@ int phy_start_interrupts(struct phy_device *phydev)
INIT_WORK(&phydev->phy_queue, phy_change, phydev);
if (request_irq(phydev->irq, phy_interrupt,
- IRQF_SHARED,
+ SA_SHIRQ,
"phy_interrupt",
phydev) < 0) {
printk(KERN_WARNING "%s: Can't get IRQ %d (PHY)\n",
diff --git a/trunk/drivers/net/r8169.c b/trunk/drivers/net/r8169.c
index 16a0ef1b1369..12d1cb289bb0 100644
--- a/trunk/drivers/net/r8169.c
+++ b/trunk/drivers/net/r8169.c
@@ -1726,7 +1726,7 @@ static int rtl8169_open(struct net_device *dev)
rtl8169_set_rxbufsize(tp, dev);
retval =
- request_irq(dev->irq, rtl8169_interrupt, IRQF_SHARED, dev->name, dev);
+ request_irq(dev->irq, rtl8169_interrupt, SA_SHIRQ, dev->name, dev);
if (retval < 0)
goto out;
diff --git a/trunk/drivers/net/rrunner.c b/trunk/drivers/net/rrunner.c
index c3ed734cbe39..757c542ac40a 100644
--- a/trunk/drivers/net/rrunner.c
+++ b/trunk/drivers/net/rrunner.c
@@ -1252,7 +1252,7 @@ static int rr_open(struct net_device *dev)
readl(®s->HostCtrl);
spin_unlock_irqrestore(&rrpriv->lock, flags);
- if (request_irq(dev->irq, rr_interrupt, IRQF_SHARED, dev->name, dev)) {
+ if (request_irq(dev->irq, rr_interrupt, SA_SHIRQ, dev->name, dev)) {
printk(KERN_WARNING "%s: Requested IRQ %d is busy\n",
dev->name, dev->irq);
ecode = -EAGAIN;
diff --git a/trunk/drivers/net/s2io.c b/trunk/drivers/net/s2io.c
index c6b77acb35ef..001344c0763e 100644
--- a/trunk/drivers/net/s2io.c
+++ b/trunk/drivers/net/s2io.c
@@ -3761,7 +3761,7 @@ static int s2io_open(struct net_device *dev)
/* After proper initialization of H/W, register ISR */
if (sp->intr_type == MSI) {
err = request_irq((int) sp->pdev->irq, s2io_msi_handle,
- IRQF_SHARED, sp->name, dev);
+ SA_SHIRQ, sp->name, dev);
if (err) {
DBG_PRINT(ERR_DBG, "%s: MSI registration \
failed\n", dev->name);
@@ -3799,7 +3799,7 @@ failed\n", dev->name, i);
}
}
if (sp->intr_type == INTA) {
- err = request_irq((int) sp->pdev->irq, s2io_isr, IRQF_SHARED,
+ err = request_irq((int) sp->pdev->irq, s2io_isr, SA_SHIRQ,
sp->name, dev);
if (err) {
DBG_PRINT(ERR_DBG, "%s: ISR registration failed\n",
diff --git a/trunk/drivers/net/sb1250-mac.c b/trunk/drivers/net/sb1250-mac.c
index 9ab1618e82a4..c7b5f0004e54 100644
--- a/trunk/drivers/net/sb1250-mac.c
+++ b/trunk/drivers/net/sb1250-mac.c
@@ -2450,7 +2450,7 @@ static int sbmac_open(struct net_device *dev)
*/
__raw_readq(sc->sbm_isr);
- if (request_irq(dev->irq, &sbmac_intr, IRQF_SHARED, dev->name, dev))
+ if (request_irq(dev->irq, &sbmac_intr, SA_SHIRQ, dev->name, dev))
return -EBUSY;
/*
diff --git a/trunk/drivers/net/sis190.c b/trunk/drivers/net/sis190.c
index df0cbebb3277..df39f3447655 100644
--- a/trunk/drivers/net/sis190.c
+++ b/trunk/drivers/net/sis190.c
@@ -1054,7 +1054,7 @@ static int sis190_open(struct net_device *dev)
sis190_request_timer(dev);
- rc = request_irq(dev->irq, sis190_interrupt, IRQF_SHARED, dev->name, dev);
+ rc = request_irq(dev->irq, sis190_interrupt, SA_SHIRQ, dev->name, dev);
if (rc < 0)
goto err_release_timer_2;
diff --git a/trunk/drivers/net/sis900.c b/trunk/drivers/net/sis900.c
index 29ee7ffedfff..d05874172209 100644
--- a/trunk/drivers/net/sis900.c
+++ b/trunk/drivers/net/sis900.c
@@ -1013,7 +1013,7 @@ sis900_open(struct net_device *net_dev)
/* Equalizer workaround Rule */
sis630_set_eq(net_dev, sis_priv->chipset_rev);
- ret = request_irq(net_dev->irq, &sis900_interrupt, IRQF_SHARED,
+ ret = request_irq(net_dev->irq, &sis900_interrupt, SA_SHIRQ,
net_dev->name, net_dev);
if (ret)
return ret;
diff --git a/trunk/drivers/net/sk98lin/skge.c b/trunk/drivers/net/sk98lin/skge.c
index ee62845d3ac9..f3efbd177ae7 100644
--- a/trunk/drivers/net/sk98lin/skge.c
+++ b/trunk/drivers/net/sk98lin/skge.c
@@ -570,9 +570,9 @@ SK_BOOL DualNet;
spin_unlock_irqrestore(&pAC->SlowPathLock, Flags);
if (pAC->GIni.GIMacsFound == 2) {
- Ret = request_irq(dev->irq, SkGeIsr, IRQF_SHARED, "sk98lin", dev);
+ Ret = request_irq(dev->irq, SkGeIsr, SA_SHIRQ, "sk98lin", dev);
} else if (pAC->GIni.GIMacsFound == 1) {
- Ret = request_irq(dev->irq, SkGeIsrOnePort, IRQF_SHARED,
+ Ret = request_irq(dev->irq, SkGeIsrOnePort, SA_SHIRQ,
"sk98lin", dev);
} else {
printk(KERN_WARNING "sk98lin: Illegal number of ports: %d\n",
@@ -5073,9 +5073,9 @@ static int skge_resume(struct pci_dev *pdev)
pci_enable_device(pdev);
pci_set_master(pdev);
if (pAC->GIni.GIMacsFound == 2)
- ret = request_irq(dev->irq, SkGeIsr, IRQF_SHARED, "sk98lin", dev);
+ ret = request_irq(dev->irq, SkGeIsr, SA_SHIRQ, "sk98lin", dev);
else
- ret = request_irq(dev->irq, SkGeIsrOnePort, IRQF_SHARED, "sk98lin", dev);
+ ret = request_irq(dev->irq, SkGeIsrOnePort, SA_SHIRQ, "sk98lin", dev);
if (ret) {
printk(KERN_WARNING "sk98lin: unable to acquire IRQ %d\n", dev->irq);
pAC->AllocFlag &= ~SK_ALLOC_IRQ;
diff --git a/trunk/drivers/net/sk_mca.c b/trunk/drivers/net/sk_mca.c
index 799e09801934..e5d6d95960c7 100644
--- a/trunk/drivers/net/sk_mca.c
+++ b/trunk/drivers/net/sk_mca.c
@@ -824,7 +824,7 @@ static int skmca_open(struct net_device *dev)
/* register resources - only necessary for IRQ */
result =
request_irq(priv->realirq, irq_handler,
- IRQF_SHARED | IRQF_SAMPLE_RANDOM, "sk_mca", dev);
+ SA_SHIRQ | SA_SAMPLE_RANDOM, "sk_mca", dev);
if (result != 0) {
printk("%s: failed to register irq %d\n", dev->name,
dev->irq);
diff --git a/trunk/drivers/net/skfp/skfddi.c b/trunk/drivers/net/skfp/skfddi.c
index b5714a60237d..c7fb6133047e 100644
--- a/trunk/drivers/net/skfp/skfddi.c
+++ b/trunk/drivers/net/skfp/skfddi.c
@@ -497,7 +497,7 @@ static int skfp_open(struct net_device *dev)
PRINTK(KERN_INFO "entering skfp_open\n");
/* Register IRQ - support shared interrupts by passing device ptr */
- err = request_irq(dev->irq, (void *) skfp_interrupt, IRQF_SHARED,
+ err = request_irq(dev->irq, (void *) skfp_interrupt, SA_SHIRQ,
dev->name, dev);
if (err)
return err;
diff --git a/trunk/drivers/net/skge.c b/trunk/drivers/net/skge.c
index 82200bfaa8ed..82df13be3d40 100644
--- a/trunk/drivers/net/skge.c
+++ b/trunk/drivers/net/skge.c
@@ -3341,7 +3341,7 @@ static int __devinit skge_probe(struct pci_dev *pdev,
goto err_out_free_hw;
}
- err = request_irq(pdev->irq, skge_intr, IRQF_SHARED, DRV_NAME, hw);
+ err = request_irq(pdev->irq, skge_intr, SA_SHIRQ, DRV_NAME, hw);
if (err) {
printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
pci_name(pdev), pdev->irq);
diff --git a/trunk/drivers/net/sky2.c b/trunk/drivers/net/sky2.c
index 418f169a6a31..3f1b0fef13e7 100644
--- a/trunk/drivers/net/sky2.c
+++ b/trunk/drivers/net/sky2.c
@@ -3188,7 +3188,7 @@ static int __devinit sky2_test_msi(struct sky2_hw *hw)
sky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW);
- err = request_irq(pdev->irq, sky2_test_intr, IRQF_SHARED, DRV_NAME, hw);
+ err = request_irq(pdev->irq, sky2_test_intr, SA_SHIRQ, DRV_NAME, hw);
if (err) {
printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
pci_name(pdev), pdev->irq);
@@ -3348,7 +3348,7 @@ static int __devinit sky2_probe(struct pci_dev *pdev,
goto err_out_unregister;
}
- err = request_irq(pdev->irq, sky2_intr, IRQF_SHARED, DRV_NAME, hw);
+ err = request_irq(pdev->irq, sky2_intr, SA_SHIRQ, DRV_NAME, hw);
if (err) {
printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
pci_name(pdev), pdev->irq);
diff --git a/trunk/drivers/net/smc-ultra32.c b/trunk/drivers/net/smc-ultra32.c
index 85be22a05973..ff9bd97746dc 100644
--- a/trunk/drivers/net/smc-ultra32.c
+++ b/trunk/drivers/net/smc-ultra32.c
@@ -290,7 +290,7 @@ static int __init ultra32_probe1(struct net_device *dev, int ioaddr)
static int ultra32_open(struct net_device *dev)
{
int ioaddr = dev->base_addr - ULTRA32_NIC_OFFSET; /* ASIC addr */
- int irq_flags = (inb(ioaddr + ULTRA32_CFG5) & 0x08) ? 0 : IRQF_SHARED;
+ int irq_flags = (inb(ioaddr + ULTRA32_CFG5) & 0x08) ? 0 : SA_SHIRQ;
int retval;
retval = request_irq(dev->irq, ei_interrupt, irq_flags, dev->name, dev);
diff --git a/trunk/drivers/net/smc911x.c b/trunk/drivers/net/smc911x.c
index d37bd860b336..bdd8702ead54 100644
--- a/trunk/drivers/net/smc911x.c
+++ b/trunk/drivers/net/smc911x.c
@@ -2081,7 +2081,7 @@ static int __init smc911x_probe(struct net_device *dev, unsigned long ioaddr)
lp->ctl_rspeed = 100;
/* Grab the IRQ */
- retval = request_irq(dev->irq, &smc911x_interrupt, IRQF_SHARED, dev->name, dev);
+ retval = request_irq(dev->irq, &smc911x_interrupt, SA_SHIRQ, dev->name, dev);
if (retval)
goto err_out;
diff --git a/trunk/drivers/net/smc91x.h b/trunk/drivers/net/smc91x.h
index b4028049ed76..bf776125ca38 100644
--- a/trunk/drivers/net/smc91x.h
+++ b/trunk/drivers/net/smc91x.h
@@ -207,7 +207,7 @@ SMC_outw(u16 val, void __iomem *ioaddr, int reg)
machine_is_omap_h2() \
|| machine_is_omap_h3() \
|| (machine_is_omap_innovator() && !cpu_is_omap1510()) \
- ) ? IRQF_TRIGGER_FALLING : IRQF_TRIGGER_RISING)
+ ) ? SA_TRIGGER_FALLING : SA_TRIGGER_RISING)
#elif defined(CONFIG_SH_SH4202_MICRODEV)
@@ -540,7 +540,7 @@ smc_pxa_dma_irq(int dma, void *dummy, struct pt_regs *regs)
#endif
#ifndef SMC_IRQ_FLAGS
-#define SMC_IRQ_FLAGS IRQF_TRIGGER_RISING
+#define SMC_IRQ_FLAGS SA_TRIGGER_RISING
#endif
#ifndef SMC_INTERRUPT_PREAMBLE
diff --git a/trunk/drivers/net/spider_net.c b/trunk/drivers/net/spider_net.c
index fb1d5a8a45cf..e0b72676922c 100644
--- a/trunk/drivers/net/spider_net.c
+++ b/trunk/drivers/net/spider_net.c
@@ -1744,7 +1744,7 @@ spider_net_open(struct net_device *netdev)
result = -EBUSY;
if (request_irq(netdev->irq, spider_net_interrupt,
- IRQF_SHARED, netdev->name, netdev))
+ SA_SHIRQ, netdev->name, netdev))
goto register_int_failed;
spider_net_enable_card(card);
diff --git a/trunk/drivers/net/starfire.c b/trunk/drivers/net/starfire.c
index ed1f59901ff4..f91be95356a4 100644
--- a/trunk/drivers/net/starfire.c
+++ b/trunk/drivers/net/starfire.c
@@ -1070,7 +1070,7 @@ static int netdev_open(struct net_device *dev)
/* Do we ever need to reset the chip??? */
- retval = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
+ retval = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
if (retval)
return retval;
diff --git a/trunk/drivers/net/sun3lance.c b/trunk/drivers/net/sun3lance.c
index 2dcadb169a22..a2fad50437e6 100644
--- a/trunk/drivers/net/sun3lance.c
+++ b/trunk/drivers/net/sun3lance.c
@@ -341,7 +341,7 @@ static int __init lance_probe( struct net_device *dev)
REGA(CSR0) = CSR0_STOP;
- request_irq(LANCE_IRQ, lance_interrupt, IRQF_DISABLED, "SUN3 Lance", dev);
+ request_irq(LANCE_IRQ, lance_interrupt, SA_INTERRUPT, "SUN3 Lance", dev);
dev->irq = (unsigned short)LANCE_IRQ;
diff --git a/trunk/drivers/net/sunbmac.c b/trunk/drivers/net/sunbmac.c
index d46891510767..7127f0f36f0e 100644
--- a/trunk/drivers/net/sunbmac.c
+++ b/trunk/drivers/net/sunbmac.c
@@ -918,7 +918,7 @@ static int bigmac_open(struct net_device *dev)
struct bigmac *bp = (struct bigmac *) dev->priv;
int ret;
- ret = request_irq(dev->irq, &bigmac_interrupt, IRQF_SHARED, dev->name, bp);
+ ret = request_irq(dev->irq, &bigmac_interrupt, SA_SHIRQ, dev->name, bp);
if (ret) {
printk(KERN_ERR "BIGMAC: Can't order irq %d to go.\n", dev->irq);
return ret;
diff --git a/trunk/drivers/net/sundance.c b/trunk/drivers/net/sundance.c
index 643fceae3db5..f13b2a195c70 100644
--- a/trunk/drivers/net/sundance.c
+++ b/trunk/drivers/net/sundance.c
@@ -870,7 +870,7 @@ static int netdev_open(struct net_device *dev)
/* Do we need to reset the chip??? */
- i = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
+ i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
if (i)
return i;
diff --git a/trunk/drivers/net/sungem.c b/trunk/drivers/net/sungem.c
index b70bbd748978..5248670d29f7 100644
--- a/trunk/drivers/net/sungem.c
+++ b/trunk/drivers/net/sungem.c
@@ -2220,7 +2220,7 @@ static int gem_do_start(struct net_device *dev)
spin_unlock_irqrestore(&gp->lock, flags);
if (request_irq(gp->pdev->irq, gem_interrupt,
- IRQF_SHARED, dev->name, (void *)dev)) {
+ SA_SHIRQ, dev->name, (void *)dev)) {
printk(KERN_ERR "%s: failed to request irq !\n", gp->dev->name);
spin_lock_irqsave(&gp->lock, flags);
diff --git a/trunk/drivers/net/sunhme.c b/trunk/drivers/net/sunhme.c
index 8673fd4c08c7..d85b83204f6b 100644
--- a/trunk/drivers/net/sunhme.c
+++ b/trunk/drivers/net/sunhme.c
@@ -2194,7 +2194,7 @@ static int happy_meal_open(struct net_device *dev)
*/
if ((hp->happy_flags & (HFLAG_QUATTRO|HFLAG_PCI)) != HFLAG_QUATTRO) {
if (request_irq(dev->irq, &happy_meal_interrupt,
- IRQF_SHARED, dev->name, (void *)dev)) {
+ SA_SHIRQ, dev->name, (void *)dev)) {
HMD(("EAGAIN\n"));
printk(KERN_ERR "happy_meal(SBUS): Can't order irq %d to go.\n",
dev->irq);
@@ -2608,7 +2608,7 @@ static void __init quattro_sbus_register_irqs(void)
err = request_irq(sdev->irqs[0],
quattro_sbus_interrupt,
- IRQF_SHARED, "Quattro",
+ SA_SHIRQ, "Quattro",
qp);
if (err != 0) {
printk(KERN_ERR "Quattro: Fatal IRQ registery error %d.\n", err);
diff --git a/trunk/drivers/net/sunlance.c b/trunk/drivers/net/sunlance.c
index 1ef9fd39a79a..5b0b60f4d20e 100644
--- a/trunk/drivers/net/sunlance.c
+++ b/trunk/drivers/net/sunlance.c
@@ -930,7 +930,7 @@ static int lance_open(struct net_device *dev)
STOP_LANCE(lp);
- if (request_irq(dev->irq, &lance_interrupt, IRQF_SHARED,
+ if (request_irq(dev->irq, &lance_interrupt, SA_SHIRQ,
lancestr, (void *) dev)) {
printk(KERN_ERR "Lance: Can't get irq %d\n", dev->irq);
return -EAGAIN;
diff --git a/trunk/drivers/net/sunqe.c b/trunk/drivers/net/sunqe.c
index 817a40b66638..9da6d5b87173 100644
--- a/trunk/drivers/net/sunqe.c
+++ b/trunk/drivers/net/sunqe.c
@@ -811,7 +811,7 @@ static struct sunqec * __init get_qec(struct sbus_dev *child_sdev)
qec_init_once(qecp, qec_sdev);
if (request_irq(qec_sdev->irqs[0], &qec_interrupt,
- IRQF_SHARED, "qec", (void *) qecp)) {
+ SA_SHIRQ, "qec", (void *) qecp)) {
printk(KERN_ERR "qec: Can't register irq.\n");
goto fail;
}
diff --git a/trunk/drivers/net/tc35815.c b/trunk/drivers/net/tc35815.c
index 8b53ded66d37..c2ec9fd8c31d 100644
--- a/trunk/drivers/net/tc35815.c
+++ b/trunk/drivers/net/tc35815.c
@@ -880,7 +880,7 @@ tc35815_open(struct net_device *dev)
*/
if (dev->irq == 0 ||
- request_irq(dev->irq, &tc35815_interrupt, IRQF_SHARED, cardname, dev)) {
+ request_irq(dev->irq, &tc35815_interrupt, SA_SHIRQ, cardname, dev)) {
return -EAGAIN;
}
diff --git a/trunk/drivers/net/tg3.c b/trunk/drivers/net/tg3.c
index e5e1b2962936..953255e92633 100644
--- a/trunk/drivers/net/tg3.c
+++ b/trunk/drivers/net/tg3.c
@@ -6702,12 +6702,12 @@ static int tg3_request_irq(struct tg3 *tp)
fn = tg3_msi;
if (tp->tg3_flags2 & TG3_FLG2_1SHOT_MSI)
fn = tg3_msi_1shot;
- flags = IRQF_SAMPLE_RANDOM;
+ flags = SA_SAMPLE_RANDOM;
} else {
fn = tg3_interrupt;
if (tp->tg3_flags & TG3_FLAG_TAGGED_STATUS)
fn = tg3_interrupt_tagged;
- flags = IRQF_SHARED | IRQF_SAMPLE_RANDOM;
+ flags = SA_SHIRQ | SA_SAMPLE_RANDOM;
}
return (request_irq(tp->pdev->irq, fn, flags, dev->name, dev));
}
@@ -6726,7 +6726,7 @@ static int tg3_test_interrupt(struct tg3 *tp)
free_irq(tp->pdev->irq, dev);
err = request_irq(tp->pdev->irq, tg3_test_isr,
- IRQF_SHARED | IRQF_SAMPLE_RANDOM, dev->name, dev);
+ SA_SHIRQ | SA_SAMPLE_RANDOM, dev->name, dev);
if (err)
return err;
diff --git a/trunk/drivers/net/tlan.c b/trunk/drivers/net/tlan.c
index 23c0017f25a9..12076f8f942c 100644
--- a/trunk/drivers/net/tlan.c
+++ b/trunk/drivers/net/tlan.c
@@ -943,7 +943,7 @@ static int TLan_Open( struct net_device *dev )
int err;
priv->tlanRev = TLan_DioRead8( dev->base_addr, TLAN_DEF_REVISION );
- err = request_irq( dev->irq, TLan_HandleInterrupt, IRQF_SHARED, TLanSignature, dev );
+ err = request_irq( dev->irq, TLan_HandleInterrupt, SA_SHIRQ, TLanSignature, dev );
if ( err ) {
printk(KERN_ERR "TLAN: Cannot open %s because IRQ %d is already in use.\n", dev->name, dev->irq );
diff --git a/trunk/drivers/net/tokenring/3c359.c b/trunk/drivers/net/tokenring/3c359.c
index 465921e3874c..77bb298129d7 100644
--- a/trunk/drivers/net/tokenring/3c359.c
+++ b/trunk/drivers/net/tokenring/3c359.c
@@ -576,7 +576,7 @@ static int xl_open(struct net_device *dev)
u16 switchsettings, switchsettings_eeprom ;
- if(request_irq(dev->irq, &xl_interrupt, IRQF_SHARED , "3c359", dev)) {
+ if(request_irq(dev->irq, &xl_interrupt, SA_SHIRQ , "3c359", dev)) {
return -EAGAIN;
}
diff --git a/trunk/drivers/net/tokenring/abyss.c b/trunk/drivers/net/tokenring/abyss.c
index 1bdd3beefbe5..649d8ea354f5 100644
--- a/trunk/drivers/net/tokenring/abyss.c
+++ b/trunk/drivers/net/tokenring/abyss.c
@@ -123,7 +123,7 @@ static int __devinit abyss_attach(struct pci_dev *pdev, const struct pci_device_
goto err_out_trdev;
}
- ret = request_irq(pdev->irq, tms380tr_interrupt, IRQF_SHARED,
+ ret = request_irq(pdev->irq, tms380tr_interrupt, SA_SHIRQ,
dev->name, dev);
if (ret)
goto err_out_region;
diff --git a/trunk/drivers/net/tokenring/lanstreamer.c b/trunk/drivers/net/tokenring/lanstreamer.c
index 28d968ffd5d0..30dcdaebf41a 100644
--- a/trunk/drivers/net/tokenring/lanstreamer.c
+++ b/trunk/drivers/net/tokenring/lanstreamer.c
@@ -601,7 +601,7 @@ static int streamer_open(struct net_device *dev)
rc=streamer_reset(dev);
}
- if (request_irq(dev->irq, &streamer_interrupt, IRQF_SHARED, "lanstreamer", dev)) {
+ if (request_irq(dev->irq, &streamer_interrupt, SA_SHIRQ, "lanstreamer", dev)) {
return -EAGAIN;
}
#if STREAMER_DEBUG
diff --git a/trunk/drivers/net/tokenring/madgemc.c b/trunk/drivers/net/tokenring/madgemc.c
index 666bbaaae82f..19e6f4dfd69c 100644
--- a/trunk/drivers/net/tokenring/madgemc.c
+++ b/trunk/drivers/net/tokenring/madgemc.c
@@ -311,7 +311,7 @@ static int __devinit madgemc_probe(struct device *device)
*/
outb(0, dev->base_addr + MC_CONTROL_REG0); /* sanity */
madgemc_setsifsel(dev, 1);
- if (request_irq(dev->irq, madgemc_interrupt, IRQF_SHARED,
+ if (request_irq(dev->irq, madgemc_interrupt, SA_SHIRQ,
"madgemc", dev)) {
ret = -EBUSY;
goto getout3;
diff --git a/trunk/drivers/net/tokenring/olympic.c b/trunk/drivers/net/tokenring/olympic.c
index 85831484bc40..d7a30d99ae8f 100644
--- a/trunk/drivers/net/tokenring/olympic.c
+++ b/trunk/drivers/net/tokenring/olympic.c
@@ -445,7 +445,7 @@ static int olympic_open(struct net_device *dev)
olympic_init(dev);
- if(request_irq(dev->irq, &olympic_interrupt, IRQF_SHARED , "olympic", dev)) {
+ if(request_irq(dev->irq, &olympic_interrupt, SA_SHIRQ , "olympic", dev)) {
return -EAGAIN;
}
diff --git a/trunk/drivers/net/tokenring/smctr.c b/trunk/drivers/net/tokenring/smctr.c
index cd2e0251e2bc..f2807ab5a2be 100644
--- a/trunk/drivers/net/tokenring/smctr.c
+++ b/trunk/drivers/net/tokenring/smctr.c
@@ -531,7 +531,7 @@ static int __init smctr_chk_mca(struct net_device *dev)
dev->irq = 15;
break;
}
- if (request_irq(dev->irq, smctr_interrupt, IRQF_SHARED, smctr_name, dev)) {
+ if (request_irq(dev->irq, smctr_interrupt, SA_SHIRQ, smctr_name, dev)) {
release_region(dev->base_addr, SMCTR_IO_EXTENT);
return -ENODEV;
}
@@ -1061,7 +1061,7 @@ static int __init smctr_chk_isa(struct net_device *dev)
goto out2;
}
- if (request_irq(dev->irq, smctr_interrupt, IRQF_SHARED, smctr_name, dev))
+ if (request_irq(dev->irq, smctr_interrupt, SA_SHIRQ, smctr_name, dev))
goto out2;
/* Get 58x Rom Base */
diff --git a/trunk/drivers/net/tokenring/tmspci.c b/trunk/drivers/net/tokenring/tmspci.c
index 7d3e270c4f45..ab47c0547a3b 100644
--- a/trunk/drivers/net/tokenring/tmspci.c
+++ b/trunk/drivers/net/tokenring/tmspci.c
@@ -122,7 +122,7 @@ static int __devinit tms_pci_attach(struct pci_dev *pdev, const struct pci_devic
goto err_out_trdev;
}
- ret = request_irq(pdev->irq, tms380tr_interrupt, IRQF_SHARED,
+ ret = request_irq(pdev->irq, tms380tr_interrupt, SA_SHIRQ,
dev->name, dev);
if (ret)
goto err_out_region;
diff --git a/trunk/drivers/net/tulip/de2104x.c b/trunk/drivers/net/tulip/de2104x.c
index d05c5aa254ee..354294c6271e 100644
--- a/trunk/drivers/net/tulip/de2104x.c
+++ b/trunk/drivers/net/tulip/de2104x.c
@@ -1371,7 +1371,7 @@ static int de_open (struct net_device *dev)
dw32(IntrMask, 0);
- rc = request_irq(dev->irq, de_interrupt, IRQF_SHARED, dev->name, dev);
+ rc = request_irq(dev->irq, de_interrupt, SA_SHIRQ, dev->name, dev);
if (rc) {
printk(KERN_ERR "%s: IRQ %d request failure, err=%d\n",
dev->name, dev->irq, rc);
diff --git a/trunk/drivers/net/tulip/de4x5.c b/trunk/drivers/net/tulip/de4x5.c
index 75ff14a55239..2647a5bc5211 100644
--- a/trunk/drivers/net/tulip/de4x5.c
+++ b/trunk/drivers/net/tulip/de4x5.c
@@ -292,7 +292,7 @@
0.41 21-Mar-96 Don't check for get_hw_addr checksum unless DEC card
only
Fix for multiple PCI cards reported by
- Duh, put the IRQF_SHARED flag into request_interrupt().
+ Duh, put the SA_SHIRQ flag into request_interrupt().
Fix SMC ethernet address in enet_det[].
Print chip name instead of "UNKNOWN" during boot.
0.42 26-Apr-96 Fix MII write TA bit error.
@@ -353,7 +353,7 @@
infoblocks.
Added DC21142 and DC21143 functions.
Added byte counters from
- Added IRQF_DISABLED temporary fix from
+ Added SA_INTERRUPT temporary fix from
.
0.53 12-Nov-97 Fix the *_probe() to include 'eth??' name during
module load: bug reported by
@@ -1319,10 +1319,10 @@ de4x5_open(struct net_device *dev)
lp->state = OPEN;
de4x5_dbg_open(dev);
- if (request_irq(dev->irq, (void *)de4x5_interrupt, IRQF_SHARED,
+ if (request_irq(dev->irq, (void *)de4x5_interrupt, SA_SHIRQ,
lp->adapter_name, dev)) {
printk("de4x5_open(): Requested IRQ%d is busy - attemping FAST/SHARE...", dev->irq);
- if (request_irq(dev->irq, de4x5_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ if (request_irq(dev->irq, de4x5_interrupt, SA_INTERRUPT | SA_SHIRQ,
lp->adapter_name, dev)) {
printk("\n Cannot get IRQ- reconfigure your hardware.\n");
disable_ast(dev);
diff --git a/trunk/drivers/net/tulip/dmfe.c b/trunk/drivers/net/tulip/dmfe.c
index 4e5b0f2acc39..ba5b112093f4 100644
--- a/trunk/drivers/net/tulip/dmfe.c
+++ b/trunk/drivers/net/tulip/dmfe.c
@@ -506,7 +506,7 @@ static int dmfe_open(struct DEVICE *dev)
DMFE_DBUG(0, "dmfe_open", 0);
- ret = request_irq(dev->irq, &dmfe_interrupt, IRQF_SHARED, dev->name, dev);
+ ret = request_irq(dev->irq, &dmfe_interrupt, SA_SHIRQ, dev->name, dev);
if (ret)
return ret;
diff --git a/trunk/drivers/net/tulip/tulip_core.c b/trunk/drivers/net/tulip/tulip_core.c
index 7351831f57ce..8f4f4840fc12 100644
--- a/trunk/drivers/net/tulip/tulip_core.c
+++ b/trunk/drivers/net/tulip/tulip_core.c
@@ -489,7 +489,7 @@ tulip_open(struct net_device *dev)
{
int retval;
- if ((retval = request_irq(dev->irq, &tulip_interrupt, IRQF_SHARED, dev->name, dev)))
+ if ((retval = request_irq(dev->irq, &tulip_interrupt, SA_SHIRQ, dev->name, dev)))
return retval;
tulip_init_ring (dev);
@@ -1770,7 +1770,7 @@ static int tulip_resume(struct pci_dev *pdev)
pci_enable_device(pdev);
- if ((retval = request_irq(dev->irq, &tulip_interrupt, IRQF_SHARED, dev->name, dev))) {
+ if ((retval = request_irq(dev->irq, &tulip_interrupt, SA_SHIRQ, dev->name, dev))) {
printk (KERN_ERR "tulip: request_irq failed in resume\n");
return retval;
}
diff --git a/trunk/drivers/net/tulip/uli526x.c b/trunk/drivers/net/tulip/uli526x.c
index fd64b2b3e99c..8b3a28f53c3d 100644
--- a/trunk/drivers/net/tulip/uli526x.c
+++ b/trunk/drivers/net/tulip/uli526x.c
@@ -436,7 +436,7 @@ static int uli526x_open(struct net_device *dev)
ULI526X_DBUG(0, "uli526x_open", 0);
- ret = request_irq(dev->irq, &uli526x_interrupt, IRQF_SHARED, dev->name, dev);
+ ret = request_irq(dev->irq, &uli526x_interrupt, SA_SHIRQ, dev->name, dev);
if (ret)
return ret;
diff --git a/trunk/drivers/net/tulip/winbond-840.c b/trunk/drivers/net/tulip/winbond-840.c
index b4c0d101a7d7..602a6e5002a0 100644
--- a/trunk/drivers/net/tulip/winbond-840.c
+++ b/trunk/drivers/net/tulip/winbond-840.c
@@ -658,7 +658,7 @@ static int netdev_open(struct net_device *dev)
iowrite32(0x00000001, ioaddr + PCIBusCfg); /* Reset */
netif_device_detach(dev);
- i = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
+ i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
if (i)
goto out_err;
diff --git a/trunk/drivers/net/tulip/xircom_cb.c b/trunk/drivers/net/tulip/xircom_cb.c
index f874e4f6ccf6..63c2175ed138 100644
--- a/trunk/drivers/net/tulip/xircom_cb.c
+++ b/trunk/drivers/net/tulip/xircom_cb.c
@@ -457,7 +457,7 @@ static int xircom_open(struct net_device *dev)
int retval;
enter("xircom_open");
printk(KERN_INFO "xircom cardbus adaptor found, registering as %s, using irq %i \n",dev->name,dev->irq);
- retval = request_irq(dev->irq, &xircom_interrupt, IRQF_SHARED, dev->name, dev);
+ retval = request_irq(dev->irq, &xircom_interrupt, SA_SHIRQ, dev->name, dev);
if (retval) {
leave("xircom_open - No IRQ");
return retval;
diff --git a/trunk/drivers/net/tulip/xircom_tulip_cb.c b/trunk/drivers/net/tulip/xircom_tulip_cb.c
index 091ebb7a62f6..aecafdabbc91 100644
--- a/trunk/drivers/net/tulip/xircom_tulip_cb.c
+++ b/trunk/drivers/net/tulip/xircom_tulip_cb.c
@@ -807,7 +807,7 @@ xircom_open(struct net_device *dev)
{
struct xircom_private *tp = netdev_priv(dev);
- if (request_irq(dev->irq, &xircom_interrupt, IRQF_SHARED, dev->name, dev))
+ if (request_irq(dev->irq, &xircom_interrupt, SA_SHIRQ, dev->name, dev))
return -EAGAIN;
xircom_up(dev);
diff --git a/trunk/drivers/net/typhoon.c b/trunk/drivers/net/typhoon.c
index 063816f2b11e..e24d2dafcf6c 100644
--- a/trunk/drivers/net/typhoon.c
+++ b/trunk/drivers/net/typhoon.c
@@ -2131,7 +2131,7 @@ typhoon_open(struct net_device *dev)
goto out_sleep;
}
- err = request_irq(dev->irq, &typhoon_interrupt, IRQF_SHARED,
+ err = request_irq(dev->irq, &typhoon_interrupt, SA_SHIRQ,
dev->name, dev);
if(err < 0)
goto out_sleep;
diff --git a/trunk/drivers/net/via-rhine.c b/trunk/drivers/net/via-rhine.c
index 98b6f3207d3d..c80a4f1d5f7a 100644
--- a/trunk/drivers/net/via-rhine.c
+++ b/trunk/drivers/net/via-rhine.c
@@ -1210,7 +1210,7 @@ static int rhine_open(struct net_device *dev)
void __iomem *ioaddr = rp->base;
int rc;
- rc = request_irq(rp->pdev->irq, &rhine_interrupt, IRQF_SHARED, dev->name,
+ rc = request_irq(rp->pdev->irq, &rhine_interrupt, SA_SHIRQ, dev->name,
dev);
if (rc)
return rc;
@@ -1999,7 +1999,7 @@ static int rhine_resume(struct pci_dev *pdev)
if (!netif_running(dev))
return 0;
- if (request_irq(dev->irq, rhine_interrupt, IRQF_SHARED, dev->name, dev))
+ if (request_irq(dev->irq, rhine_interrupt, SA_SHIRQ, dev->name, dev))
printk(KERN_ERR "via-rhine %s: request_irq failed\n", dev->name);
ret = pci_set_power_state(pdev, PCI_D0);
diff --git a/trunk/drivers/net/via-velocity.c b/trunk/drivers/net/via-velocity.c
index ba2972ba3757..857d71c3c017 100644
--- a/trunk/drivers/net/via-velocity.c
+++ b/trunk/drivers/net/via-velocity.c
@@ -1750,7 +1750,7 @@ static int velocity_open(struct net_device *dev)
velocity_init_registers(vptr, VELOCITY_INIT_COLD);
- ret = request_irq(vptr->pdev->irq, &velocity_intr, IRQF_SHARED,
+ ret = request_irq(vptr->pdev->irq, &velocity_intr, SA_SHIRQ,
dev->name, dev);
if (ret < 0) {
/* Power down the chip */
diff --git a/trunk/drivers/net/wan/dscc4.c b/trunk/drivers/net/wan/dscc4.c
index 684af4316ffd..04a376ec0ed8 100644
--- a/trunk/drivers/net/wan/dscc4.c
+++ b/trunk/drivers/net/wan/dscc4.c
@@ -752,7 +752,7 @@ static int __devinit dscc4_init_one(struct pci_dev *pdev,
priv = pci_get_drvdata(pdev);
- rc = request_irq(pdev->irq, dscc4_irq, IRQF_SHARED, DRV_NAME, priv->root);
+ rc = request_irq(pdev->irq, dscc4_irq, SA_SHIRQ, DRV_NAME, priv->root);
if (rc < 0) {
printk(KERN_WARNING "%s: IRQ %d busy\n", DRV_NAME, pdev->irq);
goto err_release_4;
diff --git a/trunk/drivers/net/wan/farsync.c b/trunk/drivers/net/wan/farsync.c
index 3705db04a343..7981a2c7906e 100644
--- a/trunk/drivers/net/wan/farsync.c
+++ b/trunk/drivers/net/wan/farsync.c
@@ -2519,7 +2519,7 @@ fst_add_one(struct pci_dev *pdev, const struct pci_device_id *ent)
dbg(DBG_PCI, "kernel mem %p, ctlmem %p\n", card->mem, card->ctlmem);
/* Register the interrupt handler */
- if (request_irq(pdev->irq, fst_intr, IRQF_SHARED, FST_DEV_NAME, card)) {
+ if (request_irq(pdev->irq, fst_intr, SA_SHIRQ, FST_DEV_NAME, card)) {
printk_err("Unable to register interrupt %d\n", card->irq);
pci_release_regions(pdev);
pci_disable_device(pdev);
diff --git a/trunk/drivers/net/wan/hostess_sv11.c b/trunk/drivers/net/wan/hostess_sv11.c
index a4f735723c41..cf5c805452a3 100644
--- a/trunk/drivers/net/wan/hostess_sv11.c
+++ b/trunk/drivers/net/wan/hostess_sv11.c
@@ -264,7 +264,7 @@ static struct sv11_device *sv11_init(int iobase, int irq)
/* We want a fast IRQ for this device. Actually we'd like an even faster
IRQ ;) - This is one driver RtLinux is made for */
- if(request_irq(irq, &z8530_interrupt, IRQF_DISABLED, "Hostess SV11", dev)<0)
+ if(request_irq(irq, &z8530_interrupt, SA_INTERRUPT, "Hostess SV11", dev)<0)
{
printk(KERN_WARNING "hostess: IRQ %d already in use.\n", irq);
goto fail1;
diff --git a/trunk/drivers/net/wan/lmc/lmc_main.c b/trunk/drivers/net/wan/lmc/lmc_main.c
index 39f44241a728..40926d779161 100644
--- a/trunk/drivers/net/wan/lmc/lmc_main.c
+++ b/trunk/drivers/net/wan/lmc/lmc_main.c
@@ -1058,7 +1058,7 @@ static int lmc_open (struct net_device *dev) /*fold00*/
lmc_softreset (sc);
/* Since we have to use PCI bus, this should work on x86,alpha,ppc */
- if (request_irq (dev->irq, &lmc_interrupt, IRQF_SHARED, dev->name, dev)){
+ if (request_irq (dev->irq, &lmc_interrupt, SA_SHIRQ, dev->name, dev)){
printk(KERN_WARNING "%s: could not get irq: %d\n", dev->name, dev->irq);
lmc_trace(dev, "lmc_open irq failed out");
return -EAGAIN;
diff --git a/trunk/drivers/net/wan/pc300_drv.c b/trunk/drivers/net/wan/pc300_drv.c
index 567effff4a3e..d7897ae89f90 100644
--- a/trunk/drivers/net/wan/pc300_drv.c
+++ b/trunk/drivers/net/wan/pc300_drv.c
@@ -3600,7 +3600,7 @@ cpc_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
}
/* Allocate IRQ */
- if (request_irq(card->hw.irq, cpc_intr, IRQF_SHARED, "Cyclades-PC300", card)) {
+ if (request_irq(card->hw.irq, cpc_intr, SA_SHIRQ, "Cyclades-PC300", card)) {
printk ("PC300 found at RAM 0x%08x, but could not allocate IRQ%d.\n",
card->hw.ramphys, card->hw.irq);
goto err_io_unmap;
diff --git a/trunk/drivers/net/wan/pci200syn.c b/trunk/drivers/net/wan/pci200syn.c
index 4df61fa3214b..24c3c57c13c9 100644
--- a/trunk/drivers/net/wan/pci200syn.c
+++ b/trunk/drivers/net/wan/pci200syn.c
@@ -402,7 +402,7 @@ static int __devinit pci200_pci_init_one(struct pci_dev *pdev,
writew(readw(p) | 0x0040, p);
/* Allocate IRQ */
- if (request_irq(pdev->irq, sca_intr, IRQF_SHARED, devname, card)) {
+ if (request_irq(pdev->irq, sca_intr, SA_SHIRQ, devname, card)) {
printk(KERN_WARNING "pci200syn: could not allocate IRQ%d.\n",
pdev->irq);
pci200_pci_remove_one(pdev);
diff --git a/trunk/drivers/net/wan/sbni.c b/trunk/drivers/net/wan/sbni.c
index fc75bec19029..f2d071272cee 100644
--- a/trunk/drivers/net/wan/sbni.c
+++ b/trunk/drivers/net/wan/sbni.c
@@ -1192,7 +1192,7 @@ sbni_open( struct net_device *dev )
}
}
- if( request_irq(dev->irq, sbni_interrupt, IRQF_SHARED, dev->name, dev) ) {
+ if( request_irq(dev->irq, sbni_interrupt, SA_SHIRQ, dev->name, dev) ) {
printk( KERN_ERR "%s: unable to get IRQ %d.\n",
dev->name, dev->irq );
return -EAGAIN;
diff --git a/trunk/drivers/net/wan/sealevel.c b/trunk/drivers/net/wan/sealevel.c
index 70fb1b98b1dd..050e854e7774 100644
--- a/trunk/drivers/net/wan/sealevel.c
+++ b/trunk/drivers/net/wan/sealevel.c
@@ -322,7 +322,7 @@ static __init struct slvl_board *slvl_init(int iobase, int irq,
/* We want a fast IRQ for this device. Actually we'd like an even faster
IRQ ;) - This is one driver RtLinux is made for */
- if(request_irq(irq, &z8530_interrupt, IRQF_DISABLED, "SeaLevel", dev)<0)
+ if(request_irq(irq, &z8530_interrupt, SA_INTERRUPT, "SeaLevel", dev)<0)
{
printk(KERN_WARNING "sealevel: IRQ %d already in use.\n", irq);
goto fail1_1;
diff --git a/trunk/drivers/net/wan/wanxl.c b/trunk/drivers/net/wan/wanxl.c
index d564224cdca9..437e0e938e38 100644
--- a/trunk/drivers/net/wan/wanxl.c
+++ b/trunk/drivers/net/wan/wanxl.c
@@ -755,7 +755,7 @@ static int __devinit wanxl_pci_init_one(struct pci_dev *pdev,
pci_name(pdev), plx_phy, ramsize / 1024, mem_phy, pdev->irq);
/* Allocate IRQ */
- if (request_irq(pdev->irq, wanxl_intr, IRQF_SHARED, "wanXL", card)) {
+ if (request_irq(pdev->irq, wanxl_intr, SA_SHIRQ, "wanXL", card)) {
printk(KERN_WARNING "wanXL %s: could not allocate IRQ%i.\n",
pci_name(pdev), pdev->irq);
wanxl_pci_remove_one(pdev);
diff --git a/trunk/drivers/net/wireless/airo.c b/trunk/drivers/net/wireless/airo.c
index a4dd13942714..89328d119efa 100644
--- a/trunk/drivers/net/wireless/airo.c
+++ b/trunk/drivers/net/wireless/airo.c
@@ -2848,7 +2848,7 @@ static struct net_device *_init_airo_card( unsigned short irq, int port,
reset_card (dev, 1);
msleep(400);
- rc = request_irq( dev->irq, airo_interrupt, IRQF_SHARED, dev->name, dev );
+ rc = request_irq( dev->irq, airo_interrupt, SA_SHIRQ, dev->name, dev );
if (rc) {
airo_print_err(dev->name, "register interrupt %d failed, rc %d",
irq, rc);
diff --git a/trunk/drivers/net/wireless/atmel.c b/trunk/drivers/net/wireless/atmel.c
index 995c7bea5897..54e31fa2d402 100644
--- a/trunk/drivers/net/wireless/atmel.c
+++ b/trunk/drivers/net/wireless/atmel.c
@@ -1577,7 +1577,7 @@ struct net_device *init_atmel_card(unsigned short irq, unsigned long port,
SET_NETDEV_DEV(dev, sys_dev);
- if ((rc = request_irq(dev->irq, service_interrupt, IRQF_SHARED, dev->name, dev))) {
+ if ((rc = request_irq(dev->irq, service_interrupt, SA_SHIRQ, dev->name, dev))) {
printk(KERN_ERR "%s: register interrupt %d failed, rc %d\n", dev->name, irq, rc);
goto err_out_free;
}
diff --git a/trunk/drivers/net/wireless/bcm43xx/bcm43xx_main.c b/trunk/drivers/net/wireless/bcm43xx/bcm43xx_main.c
index d8f5600578b4..27bcf47228e2 100644
--- a/trunk/drivers/net/wireless/bcm43xx/bcm43xx_main.c
+++ b/trunk/drivers/net/wireless/bcm43xx/bcm43xx_main.c
@@ -2175,7 +2175,7 @@ static int bcm43xx_initialize_irq(struct bcm43xx_private *bcm)
}
#endif
res = request_irq(bcm->irq, bcm43xx_interrupt_handler,
- IRQF_SHARED, KBUILD_MODNAME, bcm);
+ SA_SHIRQ, KBUILD_MODNAME, bcm);
if (res) {
printk(KERN_ERR PFX "Cannot register IRQ%d\n", bcm->irq);
return -ENODEV;
diff --git a/trunk/drivers/net/wireless/hostap/hostap_pci.c b/trunk/drivers/net/wireless/hostap/hostap_pci.c
index c2fa011be291..5ea8ac835857 100644
--- a/trunk/drivers/net/wireless/hostap/hostap_pci.c
+++ b/trunk/drivers/net/wireless/hostap/hostap_pci.c
@@ -337,7 +337,7 @@ static int prism2_pci_probe(struct pci_dev *pdev,
pci_set_drvdata(pdev, dev);
- if (request_irq(dev->irq, prism2_interrupt, IRQF_SHARED, dev->name,
+ if (request_irq(dev->irq, prism2_interrupt, SA_SHIRQ, dev->name,
dev)) {
printk(KERN_WARNING "%s: request_irq failed\n", dev->name);
goto fail;
diff --git a/trunk/drivers/net/wireless/hostap/hostap_plx.c b/trunk/drivers/net/wireless/hostap/hostap_plx.c
index 49860fa61c30..4ee6abbc65ec 100644
--- a/trunk/drivers/net/wireless/hostap/hostap_plx.c
+++ b/trunk/drivers/net/wireless/hostap/hostap_plx.c
@@ -550,7 +550,7 @@ static int prism2_plx_probe(struct pci_dev *pdev,
pci_set_drvdata(pdev, dev);
- if (request_irq(dev->irq, prism2_interrupt, IRQF_SHARED, dev->name,
+ if (request_irq(dev->irq, prism2_interrupt, SA_SHIRQ, dev->name,
dev)) {
printk(KERN_WARNING "%s: request_irq failed\n", dev->name);
goto fail;
diff --git a/trunk/drivers/net/wireless/ipw2100.c b/trunk/drivers/net/wireless/ipw2100.c
index e955db435b30..27f744e43095 100644
--- a/trunk/drivers/net/wireless/ipw2100.c
+++ b/trunk/drivers/net/wireless/ipw2100.c
@@ -6229,7 +6229,7 @@ static int ipw2100_pci_init_one(struct pci_dev *pci_dev,
ipw2100_queues_initialize(priv);
err = request_irq(pci_dev->irq,
- ipw2100_interrupt, IRQF_SHARED, dev->name, priv);
+ ipw2100_interrupt, SA_SHIRQ, dev->name, priv);
if (err) {
printk(KERN_WARNING DRV_NAME
"Error calling request_irq: %d.\n", pci_dev->irq);
diff --git a/trunk/drivers/net/wireless/ipw2200.c b/trunk/drivers/net/wireless/ipw2200.c
index b3300ffe4eec..a8a8f975432f 100644
--- a/trunk/drivers/net/wireless/ipw2200.c
+++ b/trunk/drivers/net/wireless/ipw2200.c
@@ -11545,7 +11545,7 @@ static int ipw_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
ipw_sw_reset(priv, 1);
- err = request_irq(pdev->irq, ipw_isr, IRQF_SHARED, DRV_NAME, priv);
+ err = request_irq(pdev->irq, ipw_isr, SA_SHIRQ, DRV_NAME, priv);
if (err) {
IPW_ERROR("Error allocating IRQ %d\n", pdev->irq);
goto out_destroy_workqueue;
diff --git a/trunk/drivers/net/wireless/orinoco_nortel.c b/trunk/drivers/net/wireless/orinoco_nortel.c
index bf05b907747e..4597fe1d1979 100644
--- a/trunk/drivers/net/wireless/orinoco_nortel.c
+++ b/trunk/drivers/net/wireless/orinoco_nortel.c
@@ -198,7 +198,7 @@ static int orinoco_nortel_init_one(struct pci_dev *pdev,
hermes_struct_init(&priv->hw, hermes_io, HERMES_16BIT_REGSPACING);
- err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
+ err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
dev->name, dev);
if (err) {
printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
diff --git a/trunk/drivers/net/wireless/orinoco_pci.c b/trunk/drivers/net/wireless/orinoco_pci.c
index 1759c543fbee..de3eae082a0d 100644
--- a/trunk/drivers/net/wireless/orinoco_pci.c
+++ b/trunk/drivers/net/wireless/orinoco_pci.c
@@ -153,7 +153,7 @@ static int orinoco_pci_init_one(struct pci_dev *pdev,
hermes_struct_init(&priv->hw, hermes_io, HERMES_32BIT_REGSPACING);
- err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
+ err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
dev->name, dev);
if (err) {
printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
diff --git a/trunk/drivers/net/wireless/orinoco_pci.h b/trunk/drivers/net/wireless/orinoco_pci.h
index be1abea4b64f..7eb1e08113e0 100644
--- a/trunk/drivers/net/wireless/orinoco_pci.h
+++ b/trunk/drivers/net/wireless/orinoco_pci.h
@@ -63,7 +63,7 @@ static int orinoco_pci_resume(struct pci_dev *pdev)
pci_enable_device(pdev);
pci_restore_state(pdev);
- err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
+ err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
dev->name, dev);
if (err) {
printk(KERN_ERR "%s: cannot re-allocate IRQ on resume\n",
diff --git a/trunk/drivers/net/wireless/orinoco_plx.c b/trunk/drivers/net/wireless/orinoco_plx.c
index 7f006f624171..3f928b8939f0 100644
--- a/trunk/drivers/net/wireless/orinoco_plx.c
+++ b/trunk/drivers/net/wireless/orinoco_plx.c
@@ -237,7 +237,7 @@ static int orinoco_plx_init_one(struct pci_dev *pdev,
hermes_struct_init(&priv->hw, hermes_io, HERMES_16BIT_REGSPACING);
- err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
+ err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
dev->name, dev);
if (err) {
printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
diff --git a/trunk/drivers/net/wireless/orinoco_tmd.c b/trunk/drivers/net/wireless/orinoco_tmd.c
index 0831721e4d6c..160a642185f0 100644
--- a/trunk/drivers/net/wireless/orinoco_tmd.c
+++ b/trunk/drivers/net/wireless/orinoco_tmd.c
@@ -139,7 +139,7 @@ static int orinoco_tmd_init_one(struct pci_dev *pdev,
hermes_struct_init(&priv->hw, hermes_io, HERMES_16BIT_REGSPACING);
- err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
+ err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
dev->name, dev);
if (err) {
printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
diff --git a/trunk/drivers/net/wireless/prism54/islpci_hotplug.c b/trunk/drivers/net/wireless/prism54/islpci_hotplug.c
index 09fc17a0f029..bfa0cc319a09 100644
--- a/trunk/drivers/net/wireless/prism54/islpci_hotplug.c
+++ b/trunk/drivers/net/wireless/prism54/islpci_hotplug.c
@@ -189,7 +189,7 @@ prism54_probe(struct pci_dev *pdev, const struct pci_device_id *id)
/* request for the interrupt before uploading the firmware */
rvalue = request_irq(pdev->irq, &islpci_interrupt,
- IRQF_SHARED, ndev->name, priv);
+ SA_SHIRQ, ndev->name, priv);
if (rvalue) {
/* error, could not hook the handler to the irq */
diff --git a/trunk/drivers/net/yellowfin.c b/trunk/drivers/net/yellowfin.c
index bbbf7e274a2a..569305f57561 100644
--- a/trunk/drivers/net/yellowfin.c
+++ b/trunk/drivers/net/yellowfin.c
@@ -602,7 +602,7 @@ static int yellowfin_open(struct net_device *dev)
/* Reset the chip. */
iowrite32(0x80000000, ioaddr + DMACtrl);
- i = request_irq(dev->irq, &yellowfin_interrupt, IRQF_SHARED, dev->name, dev);
+ i = request_irq(dev->irq, &yellowfin_interrupt, SA_SHIRQ, dev->name, dev);
if (i) return i;
if (yellowfin_debug > 1)
diff --git a/trunk/drivers/net/zorro8390.c b/trunk/drivers/net/zorro8390.c
index df04e050c647..8037e5806d0a 100644
--- a/trunk/drivers/net/zorro8390.c
+++ b/trunk/drivers/net/zorro8390.c
@@ -201,7 +201,7 @@ static int __devinit zorro8390_init(struct net_device *dev,
dev->irq = IRQ_AMIGA_PORTS;
/* Install the Interrupt handler */
- i = request_irq(IRQ_AMIGA_PORTS, ei_interrupt, IRQF_SHARED, DRV_NAME, dev);
+ i = request_irq(IRQ_AMIGA_PORTS, ei_interrupt, SA_SHIRQ, DRV_NAME, dev);
if (i) return i;
for(i = 0; i < ETHER_ADDR_LEN; i++) {
diff --git a/trunk/drivers/parisc/eisa.c b/trunk/drivers/parisc/eisa.c
index 884965cedec9..58f0ce8d78e0 100644
--- a/trunk/drivers/parisc/eisa.c
+++ b/trunk/drivers/parisc/eisa.c
@@ -340,7 +340,7 @@ static int __devinit eisa_probe(struct parisc_device *dev)
}
pcibios_register_hba(&eisa_dev.hba);
- result = request_irq(dev->irq, eisa_irq, IRQF_SHARED, "EISA", &eisa_dev);
+ result = request_irq(dev->irq, eisa_irq, SA_SHIRQ, "EISA", &eisa_dev);
if (result) {
printk(KERN_ERR "EISA: request_irq failed!\n");
return result;
diff --git a/trunk/drivers/parisc/superio.c b/trunk/drivers/parisc/superio.c
index 4ee26a6d9e25..a988dc7a9abd 100644
--- a/trunk/drivers/parisc/superio.c
+++ b/trunk/drivers/parisc/superio.c
@@ -271,7 +271,7 @@ superio_init(struct pci_dev *pcidev)
else
printk(KERN_ERR PFX "USB regulator not initialized!\n");
- if (request_irq(pdev->irq, superio_interrupt, IRQF_DISABLED,
+ if (request_irq(pdev->irq, superio_interrupt, SA_INTERRUPT,
SUPERIO, (void *)sio)) {
printk(KERN_ERR PFX "could not get irq\n");
diff --git a/trunk/drivers/parport/parport_ax88796.c b/trunk/drivers/parport/parport_ax88796.c
index 1850632590fd..4baa719439a2 100644
--- a/trunk/drivers/parport/parport_ax88796.c
+++ b/trunk/drivers/parport/parport_ax88796.c
@@ -345,7 +345,7 @@ static int parport_ax88796_probe(struct platform_device *pdev)
if (irq >= 0) {
/* request irq */
ret = request_irq(irq, parport_ax88796_interrupt,
- IRQF_TRIGGER_FALLING, pdev->name, pp);
+ SA_TRIGGER_FALLING, pdev->name, pp);
if (ret < 0)
goto exit_port;
diff --git a/trunk/drivers/parport/parport_mfc3.c b/trunk/drivers/parport/parport_mfc3.c
index b2b8092a2b39..c85364765ef8 100644
--- a/trunk/drivers/parport/parport_mfc3.c
+++ b/trunk/drivers/parport/parport_mfc3.c
@@ -353,7 +353,7 @@ static int __init parport_mfc3_init(void)
if (p->irq != PARPORT_IRQ_NONE) {
if (use_cnt++ == 0)
- if (request_irq(IRQ_AMIGA_PORTS, mfc3_interrupt, IRQF_SHARED, p->name, &pp_mfc3_ops))
+ if (request_irq(IRQ_AMIGA_PORTS, mfc3_interrupt, SA_SHIRQ, p->name, &pp_mfc3_ops))
goto out_irq;
}
diff --git a/trunk/drivers/parport/parport_sunbpp.c b/trunk/drivers/parport/parport_sunbpp.c
index fac333b279bf..7c43c5392bed 100644
--- a/trunk/drivers/parport/parport_sunbpp.c
+++ b/trunk/drivers/parport/parport_sunbpp.c
@@ -322,7 +322,7 @@ static int __devinit init_one_port(struct sbus_dev *sdev)
p->size = size;
if ((err = request_irq(p->irq, parport_sunbpp_interrupt,
- IRQF_SHARED, p->name, p)) != 0) {
+ SA_SHIRQ, p->name, p)) != 0) {
goto out_put_port;
}
diff --git a/trunk/drivers/pci/hotplug/cpci_hotplug_core.c b/trunk/drivers/pci/hotplug/cpci_hotplug_core.c
index d5df5871cfa2..30d87143b5d9 100644
--- a/trunk/drivers/pci/hotplug/cpci_hotplug_core.c
+++ b/trunk/drivers/pci/hotplug/cpci_hotplug_core.c
@@ -347,7 +347,7 @@ cpci_hp_intr(int irq, void *data, struct pt_regs *regs)
dbg("entered cpci_hp_intr");
/* Check to see if it was our interrupt */
- if ((controller->irq_flags & IRQF_SHARED) &&
+ if ((controller->irq_flags & SA_SHIRQ) &&
!controller->ops->check_irq(controller->dev_id)) {
dbg("exited cpci_hp_intr, not our interrupt");
return IRQ_NONE;
diff --git a/trunk/drivers/pci/hotplug/cpcihp_zt5550.c b/trunk/drivers/pci/hotplug/cpcihp_zt5550.c
index 1c12e9171097..584f8538da13 100644
--- a/trunk/drivers/pci/hotplug/cpcihp_zt5550.c
+++ b/trunk/drivers/pci/hotplug/cpcihp_zt5550.c
@@ -35,8 +35,7 @@
#include
#include
#include
-#include
-#include /* IRQF_SHARED */
+#include /* SA_SHIRQ */
#include "cpci_hotplug.h"
#include "cpcihp_zt5550.h"
@@ -220,7 +219,7 @@ static int zt5550_hc_init_one (struct pci_dev *pdev, const struct pci_device_id
zt5550_hpc.ops = &zt5550_hpc_ops;
if(!poll) {
zt5550_hpc.irq = hc_dev->irq;
- zt5550_hpc.irq_flags = IRQF_SHARED;
+ zt5550_hpc.irq_flags = SA_SHIRQ;
zt5550_hpc.dev_id = hc_dev;
zt5550_hpc_ops.enable_irq = zt5550_hc_enable_irq;
diff --git a/trunk/drivers/pci/hotplug/cpqphp_core.c b/trunk/drivers/pci/hotplug/cpqphp_core.c
index 1fc259913b68..e6e171f77c34 100644
--- a/trunk/drivers/pci/hotplug/cpqphp_core.c
+++ b/trunk/drivers/pci/hotplug/cpqphp_core.c
@@ -1188,7 +1188,7 @@ static int cpqhpc_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
/* set up the interrupt */
dbg("HPC interrupt = %d \n", ctrl->interrupt);
if (request_irq(ctrl->interrupt, cpqhp_ctrl_intr,
- IRQF_SHARED, MY_NAME, ctrl)) {
+ SA_SHIRQ, MY_NAME, ctrl)) {
err("Can't get irq %d for the hotplug pci controller\n",
ctrl->interrupt);
rc = -ENODEV;
diff --git a/trunk/drivers/pci/hotplug/pciehp_hpc.c b/trunk/drivers/pci/hotplug/pciehp_hpc.c
index 0d8fb6e607a1..11f7858f0064 100644
--- a/trunk/drivers/pci/hotplug/pciehp_hpc.c
+++ b/trunk/drivers/pci/hotplug/pciehp_hpc.c
@@ -1458,7 +1458,7 @@ int pcie_init(struct controller * ctrl, struct pcie_device *dev)
start_int_poll_timer( php_ctlr, 10 ); /* start with 10 second delay */
} else {
/* Installs the interrupt handler */
- rc = request_irq(php_ctlr->irq, pcie_isr, IRQF_SHARED, MY_NAME, (void *) ctrl);
+ rc = request_irq(php_ctlr->irq, pcie_isr, SA_SHIRQ, MY_NAME, (void *) ctrl);
dbg("%s: request_irq %d for hpc%d (returns %d)\n", __FUNCTION__, php_ctlr->irq, ctlr_seq_num, rc);
if (rc) {
err("Can't get irq %d for the hotplug controller\n", php_ctlr->irq);
diff --git a/trunk/drivers/pci/hotplug/shpchp_hpc.c b/trunk/drivers/pci/hotplug/shpchp_hpc.c
index 0f9798df4704..45facaad39bd 100644
--- a/trunk/drivers/pci/hotplug/shpchp_hpc.c
+++ b/trunk/drivers/pci/hotplug/shpchp_hpc.c
@@ -1246,7 +1246,7 @@ int shpc_init(struct controller * ctrl, struct pci_dev * pdev)
} else
php_ctlr->irq = pdev->irq;
- rc = request_irq(php_ctlr->irq, shpc_isr, IRQF_SHARED, MY_NAME, (void *) ctrl);
+ rc = request_irq(php_ctlr->irq, shpc_isr, SA_SHIRQ, MY_NAME, (void *) ctrl);
dbg("%s: request_irq %d for hpc%d (returns %d)\n", __FUNCTION__, php_ctlr->irq, ctlr_seq_num, rc);
if (rc) {
err("Can't get irq %d for the hotplug controller\n", php_ctlr->irq);
diff --git a/trunk/drivers/pcmcia/at91_cf.c b/trunk/drivers/pcmcia/at91_cf.c
index 40569f40e90e..5256342e8532 100644
--- a/trunk/drivers/pcmcia/at91_cf.c
+++ b/trunk/drivers/pcmcia/at91_cf.c
@@ -267,7 +267,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
/* must be a GPIO; ergo must trigger on both edges */
status = request_irq(board->det_pin, at91_cf_irq,
- IRQF_SAMPLE_RANDOM, driver_name, cf);
+ SA_SAMPLE_RANDOM, driver_name, cf);
if (status < 0)
goto fail0;
device_init_wakeup(&pdev->dev, 1);
@@ -280,7 +280,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
*/
if (board->irq_pin) {
status = request_irq(board->irq_pin, at91_cf_irq,
- IRQF_SHARED, driver_name, cf);
+ SA_SHIRQ, driver_name, cf);
if (status < 0)
goto fail0a;
cf->socket.pci_irq = board->irq_pin;
diff --git a/trunk/drivers/pcmcia/hd64465_ss.c b/trunk/drivers/pcmcia/hd64465_ss.c
index ad02629c8be2..c662e4f89d46 100644
--- a/trunk/drivers/pcmcia/hd64465_ss.c
+++ b/trunk/drivers/pcmcia/hd64465_ss.c
@@ -761,7 +761,7 @@ static int hs_init_socket(hs_socket_t *sp, int irq, unsigned long mem_base,
hd64465_register_irq_demux(sp->irq, hs_irq_demux, sp);
- if ((err = request_irq(sp->irq, hs_interrupt, IRQF_DISABLED, MODNAME, sp)) < 0)
+ if ((err = request_irq(sp->irq, hs_interrupt, SA_INTERRUPT, MODNAME, sp)) < 0)
return err;
if (request_mem_region(sp->mem_base, sp->mem_length, MODNAME) == 0) {
sp->mem_base = 0;
diff --git a/trunk/drivers/pcmcia/i82092.c b/trunk/drivers/pcmcia/i82092.c
index 2163aa75a257..d5f03a338c6c 100644
--- a/trunk/drivers/pcmcia/i82092.c
+++ b/trunk/drivers/pcmcia/i82092.c
@@ -149,7 +149,7 @@ static int __devinit i82092aa_pci_probe(struct pci_dev *dev, const struct pci_de
/* Register the interrupt handler */
dprintk(KERN_DEBUG "Requesting interrupt %i \n",dev->irq);
- if ((ret = request_irq(dev->irq, i82092aa_interrupt, IRQF_SHARED, "i82092aa", i82092aa_interrupt))) {
+ if ((ret = request_irq(dev->irq, i82092aa_interrupt, SA_SHIRQ, "i82092aa", i82092aa_interrupt))) {
printk(KERN_ERR "i82092aa: Failed to register IRQ %d, aborting\n", dev->irq);
goto err_out_free_res;
}
diff --git a/trunk/drivers/pcmcia/i82365.c b/trunk/drivers/pcmcia/i82365.c
index 1cc2682394b1..ff51a65d9433 100644
--- a/trunk/drivers/pcmcia/i82365.c
+++ b/trunk/drivers/pcmcia/i82365.c
@@ -509,7 +509,7 @@ static irqreturn_t i365_count_irq(int irq, void *dev, struct pt_regs *regs)
static u_int __init test_irq(u_short sock, int irq)
{
debug(2, " testing ISA irq %d\n", irq);
- if (request_irq(irq, i365_count_irq, IRQF_PROBE_SHARED, "scan",
+ if (request_irq(irq, i365_count_irq, SA_PROBEIRQ, "scan",
i365_count_irq) != 0)
return 1;
irq_hits = 0; irq_sock = sock;
@@ -562,7 +562,7 @@ static u_int __init isa_scan(u_short sock, u_int mask0)
} else {
/* Fallback: just find interrupts that aren't in use */
for (i = 0; i < 16; i++)
- if ((mask0 & (1 << i)) && (_check_irq(i, IRQF_PROBE_SHARED) == 0))
+ if ((mask0 & (1 << i)) && (_check_irq(i, SA_PROBEIRQ) == 0))
mask1 |= (1 << i);
printk("default");
/* If scan failed, default to polled status */
@@ -726,7 +726,7 @@ static void __init add_pcic(int ns, int type)
u_int cs_mask = mask & ((cs_irq) ? (1< 0; cs_irq--)
if ((cs_mask & (1 << cs_irq)) &&
- (_check_irq(cs_irq, IRQF_PROBE_SHARED) == 0))
+ (_check_irq(cs_irq, SA_PROBEIRQ) == 0))
break;
if (cs_irq) {
grab_irq = 1;
diff --git a/trunk/drivers/pcmcia/omap_cf.c b/trunk/drivers/pcmcia/omap_cf.c
index 420e10aec0ae..2c23d7584399 100644
--- a/trunk/drivers/pcmcia/omap_cf.c
+++ b/trunk/drivers/pcmcia/omap_cf.c
@@ -232,7 +232,7 @@ static int __init omap_cf_probe(struct device *dev)
dev_set_drvdata(dev, cf);
/* this primarily just shuts up irq handling noise */
- status = request_irq(irq, omap_cf_irq, IRQF_SHARED,
+ status = request_irq(irq, omap_cf_irq, SA_SHIRQ,
driver_name, cf);
if (status < 0)
goto fail0;
diff --git a/trunk/drivers/pcmcia/pcmcia_resource.c b/trunk/drivers/pcmcia/pcmcia_resource.c
index 7bf25b88ea31..3281e519e714 100644
--- a/trunk/drivers/pcmcia/pcmcia_resource.c
+++ b/trunk/drivers/pcmcia/pcmcia_resource.c
@@ -801,9 +801,9 @@ int pcmcia_request_irq(struct pcmcia_device *p_dev, irq_req_t *req)
/* Decide what type of interrupt we are registering */
type = 0;
if (s->functions > 1) /* All of this ought to be handled higher up */
- type = IRQF_SHARED;
+ type = SA_SHIRQ;
if (req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)
- type = IRQF_SHARED;
+ type = SA_SHIRQ;
#ifdef CONFIG_PCMCIA_PROBE
if (s->irq.AssignedIRQ != 0) {
@@ -845,7 +845,7 @@ int pcmcia_request_irq(struct pcmcia_device *p_dev, irq_req_t *req)
if (ret && !s->irq.AssignedIRQ) {
if (!s->pci_irq)
return ret;
- type = IRQF_SHARED;
+ type = SA_SHIRQ;
irq = s->pci_irq;
}
@@ -855,7 +855,7 @@ int pcmcia_request_irq(struct pcmcia_device *p_dev, irq_req_t *req)
}
/* Make sure the fact the request type was overridden is passed back */
- if (type == IRQF_SHARED && !(req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)) {
+ if (type == SA_SHIRQ && !(req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)) {
req->Attributes |= IRQ_TYPE_DYNAMIC_SHARING;
printk(KERN_WARNING "pcmcia: request for exclusive IRQ could not be fulfilled.\n");
printk(KERN_WARNING "pcmcia: the driver needs updating to supported shared IRQ lines.\n");
diff --git a/trunk/drivers/pcmcia/pd6729.c b/trunk/drivers/pcmcia/pd6729.c
index 22c5e7427ddd..9ee26c1b8635 100644
--- a/trunk/drivers/pcmcia/pd6729.c
+++ b/trunk/drivers/pcmcia/pd6729.c
@@ -689,7 +689,7 @@ static int __devinit pd6729_pci_probe(struct pci_dev *dev,
pci_set_drvdata(dev, socket);
if (irq_mode == 1) {
/* Register the interrupt handler */
- if ((ret = request_irq(dev->irq, pd6729_interrupt, IRQF_SHARED,
+ if ((ret = request_irq(dev->irq, pd6729_interrupt, SA_SHIRQ,
"pd6729", socket))) {
printk(KERN_ERR "pd6729: Failed to register irq %d, "
"aborting\n", dev->irq);
diff --git a/trunk/drivers/pcmcia/soc_common.c b/trunk/drivers/pcmcia/soc_common.c
index 888358fac598..ecf65d4c4e95 100644
--- a/trunk/drivers/pcmcia/soc_common.c
+++ b/trunk/drivers/pcmcia/soc_common.c
@@ -523,7 +523,7 @@ int soc_pcmcia_request_irqs(struct soc_pcmcia_socket *skt,
if (irqs[i].sock != skt->nr)
continue;
res = request_irq(irqs[i].irq, soc_common_pcmcia_interrupt,
- IRQF_DISABLED, irqs[i].str, skt);
+ SA_INTERRUPT, irqs[i].str, skt);
if (res)
break;
set_irq_type(irqs[i].irq, IRQT_NOEDGE);
diff --git a/trunk/drivers/pcmcia/vrc4171_card.c b/trunk/drivers/pcmcia/vrc4171_card.c
index e076a13db555..459e6e1946fd 100644
--- a/trunk/drivers/pcmcia/vrc4171_card.c
+++ b/trunk/drivers/pcmcia/vrc4171_card.c
@@ -730,7 +730,7 @@ static int __devinit vrc4171_card_init(void)
retval = vrc4171_add_sockets();
if (retval == 0)
- retval = request_irq(vrc4171_irq, pccard_interrupt, IRQF_SHARED,
+ retval = request_irq(vrc4171_irq, pccard_interrupt, SA_SHIRQ,
vrc4171_card_name, vrc4171_sockets);
if (retval < 0) {
diff --git a/trunk/drivers/pcmcia/vrc4173_cardu.c b/trunk/drivers/pcmcia/vrc4173_cardu.c
index d19a9138135f..6004196f7cc1 100644
--- a/trunk/drivers/pcmcia/vrc4173_cardu.c
+++ b/trunk/drivers/pcmcia/vrc4173_cardu.c
@@ -500,7 +500,7 @@ static int __devinit vrc4173_cardu_probe(struct pci_dev *dev,
return -ENOMEM;
}
- if (request_irq(dev->irq, cardu_interrupt, IRQF_SHARED, socket->name, socket) < 0) {
+ if (request_irq(dev->irq, cardu_interrupt, SA_SHIRQ, socket->name, socket) < 0) {
pcmcia_unregister_socket(socket->pcmcia_socket);
socket->pcmcia_socket = NULL;
iounmap(socket->base);
diff --git a/trunk/drivers/pcmcia/yenta_socket.c b/trunk/drivers/pcmcia/yenta_socket.c
index 1344746381e8..47e57602d5ea 100644
--- a/trunk/drivers/pcmcia/yenta_socket.c
+++ b/trunk/drivers/pcmcia/yenta_socket.c
@@ -923,7 +923,7 @@ static int yenta_probe_cb_irq(struct yenta_socket *socket)
socket->probe_status = 0;
- if (request_irq(socket->cb_irq, yenta_probe_handler, IRQF_SHARED, "yenta", socket)) {
+ if (request_irq(socket->cb_irq, yenta_probe_handler, SA_SHIRQ, "yenta", socket)) {
printk(KERN_WARNING "Yenta: request_irq() in yenta_probe_cb_irq() failed!\n");
return -1;
}
@@ -1172,7 +1172,7 @@ static int __devinit yenta_probe (struct pci_dev *dev, const struct pci_device_i
/* We must finish initialization here */
- if (!socket->cb_irq || request_irq(socket->cb_irq, yenta_interrupt, IRQF_SHARED, "yenta", socket)) {
+ if (!socket->cb_irq || request_irq(socket->cb_irq, yenta_interrupt, SA_SHIRQ, "yenta", socket)) {
/* No IRQ or request_irq failed. Poll */
socket->cb_irq = 0; /* But zero is a valid IRQ number. */
init_timer(&socket->poll_timer);
diff --git a/trunk/drivers/pnp/resource.c b/trunk/drivers/pnp/resource.c
index 5c8ec21e1086..9fefe563f8fc 100644
--- a/trunk/drivers/pnp/resource.c
+++ b/trunk/drivers/pnp/resource.c
@@ -396,7 +396,7 @@ int pnp_check_irq(struct pnp_dev * dev, int idx)
* device is active because it itself may be in use */
if(!dev->active) {
if (request_irq(*irq, pnp_test_handler,
- IRQF_DISABLED|IRQF_PROBE_SHARED, "pnp", NULL))
+ SA_INTERRUPT|SA_PROBEIRQ, "pnp", NULL))
return 0;
free_irq(*irq, NULL);
}
diff --git a/trunk/drivers/rtc/rtc-at91.c b/trunk/drivers/rtc/rtc-at91.c
index dfd0ce86f6a0..b676f443c17e 100644
--- a/trunk/drivers/rtc/rtc-at91.c
+++ b/trunk/drivers/rtc/rtc-at91.c
@@ -293,7 +293,7 @@ static int __init at91_rtc_probe(struct platform_device *pdev)
AT91_RTC_CALEV);
ret = request_irq(AT91_ID_SYS, at91_rtc_interrupt,
- IRQF_SHARED, "at91_rtc", pdev);
+ SA_SHIRQ, "at91_rtc", pdev);
if (ret) {
printk(KERN_ERR "at91_rtc: IRQ %d already in use.\n",
AT91_ID_SYS);
diff --git a/trunk/drivers/rtc/rtc-ds1553.c b/trunk/drivers/rtc/rtc-ds1553.c
index 209001495474..762521a1419c 100644
--- a/trunk/drivers/rtc/rtc-ds1553.c
+++ b/trunk/drivers/rtc/rtc-ds1553.c
@@ -341,7 +341,7 @@ static int __init ds1553_rtc_probe(struct platform_device *pdev)
if (pdata->irq >= 0) {
writeb(0, ioaddr + RTC_INTERRUPTS);
- if (request_irq(pdata->irq, ds1553_rtc_interrupt, IRQF_SHARED,
+ if (request_irq(pdata->irq, ds1553_rtc_interrupt, SA_SHIRQ,
pdev->name, pdev) < 0) {
dev_warn(&pdev->dev, "interrupt not available.\n");
pdata->irq = -1;
diff --git a/trunk/drivers/rtc/rtc-pl031.c b/trunk/drivers/rtc/rtc-pl031.c
index d6d1c5726b0e..ee538632660b 100644
--- a/trunk/drivers/rtc/rtc-pl031.c
+++ b/trunk/drivers/rtc/rtc-pl031.c
@@ -173,7 +173,7 @@ static int pl031_probe(struct amba_device *adev, void *id)
goto out_no_remap;
}
- if (request_irq(adev->irq[0], pl031_interrupt, IRQF_DISABLED,
+ if (request_irq(adev->irq[0], pl031_interrupt, SA_INTERRUPT,
"rtc-pl031", ldata->rtc)) {
ret = -EIO;
goto out_no_irq;
diff --git a/trunk/drivers/rtc/rtc-sa1100.c b/trunk/drivers/rtc/rtc-sa1100.c
index ee4b61ee67b0..9cd1cb304bb2 100644
--- a/trunk/drivers/rtc/rtc-sa1100.c
+++ b/trunk/drivers/rtc/rtc-sa1100.c
@@ -157,19 +157,19 @@ static int sa1100_rtc_open(struct device *dev)
{
int ret;
- ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, IRQF_DISABLED,
+ ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, SA_INTERRUPT,
"rtc 1Hz", dev);
if (ret) {
dev_err(dev, "IRQ %d already in use.\n", IRQ_RTC1Hz);
goto fail_ui;
}
- ret = request_irq(IRQ_RTCAlrm, sa1100_rtc_interrupt, IRQF_DISABLED,
+ ret = request_irq(IRQ_RTCAlrm, sa1100_rtc_interrupt, SA_INTERRUPT,
"rtc Alrm", dev);
if (ret) {
dev_err(dev, "IRQ %d already in use.\n", IRQ_RTCAlrm);
goto fail_ai;
}
- ret = request_irq(IRQ_OST1, timer1_interrupt, IRQF_DISABLED,
+ ret = request_irq(IRQ_OST1, timer1_interrupt, SA_INTERRUPT,
"rtc timer", dev);
if (ret) {
dev_err(dev, "IRQ %d already in use.\n", IRQ_OST1);
diff --git a/trunk/drivers/rtc/rtc-vr41xx.c b/trunk/drivers/rtc/rtc-vr41xx.c
index bb6d5ff24fd0..4b9291dd4443 100644
--- a/trunk/drivers/rtc/rtc-vr41xx.c
+++ b/trunk/drivers/rtc/rtc-vr41xx.c
@@ -345,11 +345,11 @@ static int __devinit rtc_probe(struct platform_device *pdev)
spin_unlock_irq(&rtc_lock);
irq = ELAPSEDTIME_IRQ;
- retval = request_irq(irq, elapsedtime_interrupt, IRQF_DISABLED,
+ retval = request_irq(irq, elapsedtime_interrupt, SA_INTERRUPT,
"elapsed_time", pdev);
if (retval == 0) {
irq = RTCLONG1_IRQ;
- retval = request_irq(irq, rtclong1_interrupt, IRQF_DISABLED,
+ retval = request_irq(irq, rtclong1_interrupt, SA_INTERRUPT,
"rtclong1", pdev);
}
diff --git a/trunk/drivers/sbus/char/aurora.c b/trunk/drivers/sbus/char/aurora.c
index 4fdb2c932210..015db40ad8a4 100644
--- a/trunk/drivers/sbus/char/aurora.c
+++ b/trunk/drivers/sbus/char/aurora.c
@@ -337,19 +337,19 @@ static int aurora_probe(void)
printk("intr pri %d\n", grrr);
#endif
if ((bp->irq=irqs[bn]) && valid_irq(bp->irq) &&
- !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {
+ !request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) {
free_irq(bp->irq|0x30, bp);
} else
if ((bp->irq=prom_getint(sdev->prom_node, "bintr")) && valid_irq(bp->irq) &&
- !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {
+ !request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) {
free_irq(bp->irq|0x30, bp);
} else
if ((bp->irq=prom_getint(sdev->prom_node, "intr")) && valid_irq(bp->irq) &&
- !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {
+ !request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) {
free_irq(bp->irq|0x30, bp);
} else
for(grrr=0;grrrirq=type_1_irq[grrr])&&!request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {
+ if ((bp->irq=type_1_irq[grrr])&&!request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) {
free_irq(bp->irq|0x30, bp);
break;
} else {
@@ -909,14 +909,14 @@ static int aurora_setup_board(struct Aurora_board * bp)
#ifdef AURORA_ALLIRQ
int i;
for (i = 0; i < AURORA_ALLIRQ; i++) {
- error = request_irq(allirq[i]|0x30, aurora_interrupt, IRQF_SHARED,
+ error = request_irq(allirq[i]|0x30, aurora_interrupt, SA_SHIRQ,
"sio16", bp);
if (error)
printk(KERN_ERR "IRQ%d request error %d\n",
allirq[i], error);
}
#else
- error = request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED,
+ error = request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ,
"sio16", bp);
if (error) {
printk(KERN_ERR "IRQ request error %d\n", error);
diff --git a/trunk/drivers/sbus/char/bbc_i2c.c b/trunk/drivers/sbus/char/bbc_i2c.c
index 7186235594f9..73634371393b 100644
--- a/trunk/drivers/sbus/char/bbc_i2c.c
+++ b/trunk/drivers/sbus/char/bbc_i2c.c
@@ -377,7 +377,7 @@ static int __init attach_one_i2c(struct linux_ebus_device *edev, int index)
bp->waiting = 0;
init_waitqueue_head(&bp->wq);
if (request_irq(edev->irqs[0], bbc_i2c_interrupt,
- IRQF_SHARED, "bbc_i2c", bp))
+ SA_SHIRQ, "bbc_i2c", bp))
goto fail;
bp->index = index;
diff --git a/trunk/drivers/sbus/char/cpwatchdog.c b/trunk/drivers/sbus/char/cpwatchdog.c
index 836a58bb0305..21737b7e86a1 100644
--- a/trunk/drivers/sbus/char/cpwatchdog.c
+++ b/trunk/drivers/sbus/char/cpwatchdog.c
@@ -301,7 +301,7 @@ static int wd_open(struct inode *inode, struct file *f)
{
if (request_irq(wd_dev.irq,
&wd_interrupt,
- IRQF_SHARED,
+ SA_SHIRQ,
WD_OBPNAME,
(void *)wd_dev.regs)) {
printk("%s: Cannot register IRQ %d\n",
diff --git a/trunk/drivers/scsi/3w-9xxx.c b/trunk/drivers/scsi/3w-9xxx.c
index 5a9475e56d0e..b003baf8d404 100644
--- a/trunk/drivers/scsi/3w-9xxx.c
+++ b/trunk/drivers/scsi/3w-9xxx.c
@@ -2122,7 +2122,7 @@ static int __devinit twa_probe(struct pci_dev *pdev, const struct pci_device_id
TW_PARAM_PORTCOUNT, TW_PARAM_PORTCOUNT_LENGTH)));
/* Now setup the interrupt handler */
- retval = request_irq(pdev->irq, twa_interrupt, IRQF_SHARED, "3w-9xxx", tw_dev);
+ retval = request_irq(pdev->irq, twa_interrupt, SA_SHIRQ, "3w-9xxx", tw_dev);
if (retval) {
TW_PRINTK(tw_dev->host, TW_DRIVER, 0x30, "Error requesting IRQ");
goto out_remove_host;
diff --git a/trunk/drivers/scsi/3w-xxxx.c b/trunk/drivers/scsi/3w-xxxx.c
index f3a5f422a8e4..17dbd4ac8692 100644
--- a/trunk/drivers/scsi/3w-xxxx.c
+++ b/trunk/drivers/scsi/3w-xxxx.c
@@ -2397,7 +2397,7 @@ static int __devinit tw_probe(struct pci_dev *pdev, const struct pci_device_id *
printk(KERN_WARNING "3w-xxxx: scsi%d: Found a 3ware Storage Controller at 0x%x, IRQ: %d.\n", host->host_no, tw_dev->base_addr, pdev->irq);
/* Now setup the interrupt handler */
- retval = request_irq(pdev->irq, tw_interrupt, IRQF_SHARED, "3w-xxxx", tw_dev);
+ retval = request_irq(pdev->irq, tw_interrupt, SA_SHIRQ, "3w-xxxx", tw_dev);
if (retval) {
printk(KERN_WARNING "3w-xxxx: Error requesting IRQ.");
goto out_remove_host;
diff --git a/trunk/drivers/scsi/53c7xx.c b/trunk/drivers/scsi/53c7xx.c
index c690c2b89e41..c9bd0335995d 100644
--- a/trunk/drivers/scsi/53c7xx.c
+++ b/trunk/drivers/scsi/53c7xx.c
@@ -1070,7 +1070,7 @@ NCR53c7x0_init (struct Scsi_Host *host) {
NCR53c7x0_driver_init (host);
- if (request_irq(host->irq, NCR53c7x0_intr, IRQF_SHARED, "53c7xx", host))
+ if (request_irq(host->irq, NCR53c7x0_intr, SA_SHIRQ, "53c7xx", host))
{
printk("scsi%d : IRQ%d not free, detaching\n",
host->host_no, host->irq);
@@ -4232,7 +4232,7 @@ NCR53c7x0_intfly (struct Scsi_Host *host)
* Purpose : handle NCR53c7x0 interrupts for all NCR devices sharing
* the same IRQ line.
*
- * Inputs : Since we're using the IRQF_DISABLED interrupt handler
+ * Inputs : Since we're using the SA_INTERRUPT interrupt handler
* semantics, irq indicates the interrupt which invoked
* this handler.
*
diff --git a/trunk/drivers/scsi/BusLogic.c b/trunk/drivers/scsi/BusLogic.c
index 16a12a3b7b2b..259b47ec4f54 100644
--- a/trunk/drivers/scsi/BusLogic.c
+++ b/trunk/drivers/scsi/BusLogic.c
@@ -1844,7 +1844,7 @@ static boolean __init BusLogic_AcquireResources(struct BusLogic_HostAdapter *Hos
/*
Acquire shared access to the IRQ Channel.
*/
- if (request_irq(HostAdapter->IRQ_Channel, BusLogic_InterruptHandler, IRQF_SHARED, HostAdapter->FullModelName, HostAdapter) < 0) {
+ if (request_irq(HostAdapter->IRQ_Channel, BusLogic_InterruptHandler, SA_SHIRQ, HostAdapter->FullModelName, HostAdapter) < 0) {
BusLogic_Error("UNABLE TO ACQUIRE IRQ CHANNEL %d - DETACHING\n", HostAdapter, HostAdapter->IRQ_Channel);
return false;
}
diff --git a/trunk/drivers/scsi/NCR5380.c b/trunk/drivers/scsi/NCR5380.c
index 616810ad17d8..75f2f7ae2a8e 100644
--- a/trunk/drivers/scsi/NCR5380.c
+++ b/trunk/drivers/scsi/NCR5380.c
@@ -585,7 +585,7 @@ static int __init NCR5380_probe_irq(struct Scsi_Host *instance, int possible)
NCR5380_setup(instance);
for (trying_irqs = i = 0, mask = 1; i < 16; ++i, mask <<= 1)
- if ((mask & possible) && (request_irq(i, &probe_intr, IRQF_DISABLED, "NCR-probe", NULL) == 0))
+ if ((mask & possible) && (request_irq(i, &probe_intr, SA_INTERRUPT, "NCR-probe", NULL) == 0))
trying_irqs |= mask;
timeout = jiffies + (250 * HZ / 1000);
diff --git a/trunk/drivers/scsi/NCR_D700.c b/trunk/drivers/scsi/NCR_D700.c
index a06f547e87f7..577e63499778 100644
--- a/trunk/drivers/scsi/NCR_D700.c
+++ b/trunk/drivers/scsi/NCR_D700.c
@@ -320,7 +320,7 @@ NCR_D700_probe(struct device *dev)
memset(p, '\0', sizeof(*p));
p->dev = dev;
snprintf(p->name, sizeof(p->name), "D700(%s)", dev->bus_id);
- if (request_irq(irq, NCR_D700_intr, IRQF_SHARED, p->name, p)) {
+ if (request_irq(irq, NCR_D700_intr, SA_SHIRQ, p->name, p)) {
printk(KERN_ERR "D700: request_irq failed\n");
kfree(p);
return -EBUSY;
diff --git a/trunk/drivers/scsi/NCR_Q720.c b/trunk/drivers/scsi/NCR_Q720.c
index c39ffbb86e39..9d18ec90510f 100644
--- a/trunk/drivers/scsi/NCR_Q720.c
+++ b/trunk/drivers/scsi/NCR_Q720.c
@@ -265,7 +265,7 @@ NCR_Q720_probe(struct device *dev)
p->irq = irq;
p->siops = siops;
- if (request_irq(irq, NCR_Q720_intr, IRQF_SHARED, "NCR_Q720", p)) {
+ if (request_irq(irq, NCR_Q720_intr, SA_SHIRQ, "NCR_Q720", p)) {
printk(KERN_ERR "NCR_Q720: request irq %d failed\n", irq);
goto out_release;
}
diff --git a/trunk/drivers/scsi/a100u2w.c b/trunk/drivers/scsi/a100u2w.c
index d7e9fab54c60..3dce21c78737 100644
--- a/trunk/drivers/scsi/a100u2w.c
+++ b/trunk/drivers/scsi/a100u2w.c
@@ -1120,7 +1120,7 @@ static int __devinit inia100_probe_one(struct pci_dev *pdev,
shost->sg_tablesize = TOTAL_SG_ENTRY;
/* Initial orc chip */
- error = request_irq(pdev->irq, inia100_intr, IRQF_SHARED,
+ error = request_irq(pdev->irq, inia100_intr, SA_SHIRQ,
"inia100", shost);
if (error < 0) {
printk(KERN_WARNING "inia100: unable to get irq %d\n",
diff --git a/trunk/drivers/scsi/a2091.c b/trunk/drivers/scsi/a2091.c
index fddfa2ebcd70..54996eaae979 100644
--- a/trunk/drivers/scsi/a2091.c
+++ b/trunk/drivers/scsi/a2091.c
@@ -208,7 +208,7 @@ int __init a2091_detect(struct scsi_host_template *tpnt)
regs.SASR = &(DMA(instance)->SASR);
regs.SCMD = &(DMA(instance)->SCMD);
wd33c93_init(instance, regs, dma_setup, dma_stop, WD33C93_FS_8_10);
- request_irq(IRQ_AMIGA_PORTS, a2091_intr, IRQF_SHARED, "A2091 SCSI",
+ request_irq(IRQ_AMIGA_PORTS, a2091_intr, SA_SHIRQ, "A2091 SCSI",
instance);
DMA(instance)->CNTR = CNTR_PDMD | CNTR_INTEN;
num_a2091++;
diff --git a/trunk/drivers/scsi/a3000.c b/trunk/drivers/scsi/a3000.c
index ae9ab4b136ac..f425d424bf08 100644
--- a/trunk/drivers/scsi/a3000.c
+++ b/trunk/drivers/scsi/a3000.c
@@ -190,7 +190,7 @@ int __init a3000_detect(struct scsi_host_template *tpnt)
regs.SASR = &(DMA(a3000_host)->SASR);
regs.SCMD = &(DMA(a3000_host)->SCMD);
wd33c93_init(a3000_host, regs, dma_setup, dma_stop, WD33C93_FS_12_15);
- if (request_irq(IRQ_AMIGA_PORTS, a3000_intr, IRQF_SHARED, "A3000 SCSI",
+ if (request_irq(IRQ_AMIGA_PORTS, a3000_intr, SA_SHIRQ, "A3000 SCSI",
a3000_intr))
goto fail_irq;
DMA(a3000_host)->CNTR = CNTR_PDMD | CNTR_INTEN;
diff --git a/trunk/drivers/scsi/aacraid/rkt.c b/trunk/drivers/scsi/aacraid/rkt.c
index 458ea897fd72..5b52966bbbf3 100644
--- a/trunk/drivers/scsi/aacraid/rkt.c
+++ b/trunk/drivers/scsi/aacraid/rkt.c
@@ -453,7 +453,7 @@ int aac_rkt_init(struct aac_dev *dev)
}
msleep(1);
}
- if (request_irq(dev->scsi_host_ptr->irq, aac_rkt_intr, IRQF_SHARED|IRQF_DISABLED, "aacraid", (void *)dev)<0)
+ if (request_irq(dev->scsi_host_ptr->irq, aac_rkt_intr, SA_SHIRQ|SA_INTERRUPT, "aacraid", (void *)dev)<0)
{
printk(KERN_ERR "%s%d: Interrupt unavailable.\n", name, instance);
goto error_iounmap;
diff --git a/trunk/drivers/scsi/aacraid/rx.c b/trunk/drivers/scsi/aacraid/rx.c
index 035018db69b1..9dadfb28b3f1 100644
--- a/trunk/drivers/scsi/aacraid/rx.c
+++ b/trunk/drivers/scsi/aacraid/rx.c
@@ -453,7 +453,7 @@ int aac_rx_init(struct aac_dev *dev)
}
msleep(1);
}
- if (request_irq(dev->scsi_host_ptr->irq, aac_rx_intr, IRQF_SHARED|IRQF_DISABLED, "aacraid", (void *)dev)<0)
+ if (request_irq(dev->scsi_host_ptr->irq, aac_rx_intr, SA_SHIRQ|SA_INTERRUPT, "aacraid", (void *)dev)<0)
{
printk(KERN_ERR "%s%d: Interrupt unavailable.\n", name, instance);
goto error_iounmap;
diff --git a/trunk/drivers/scsi/aacraid/sa.c b/trunk/drivers/scsi/aacraid/sa.c
index cd586cc8f9be..88d400fccc94 100644
--- a/trunk/drivers/scsi/aacraid/sa.c
+++ b/trunk/drivers/scsi/aacraid/sa.c
@@ -327,7 +327,7 @@ int aac_sa_init(struct aac_dev *dev)
msleep(1);
}
- if (request_irq(dev->scsi_host_ptr->irq, aac_sa_intr, IRQF_SHARED|IRQF_DISABLED, "aacraid", (void *)dev ) < 0) {
+ if (request_irq(dev->scsi_host_ptr->irq, aac_sa_intr, SA_SHIRQ|SA_INTERRUPT, "aacraid", (void *)dev ) < 0) {
printk(KERN_WARNING "%s%d: Interrupt unavailable.\n", name, instance);
goto error_iounmap;
}
diff --git a/trunk/drivers/scsi/advansys.c b/trunk/drivers/scsi/advansys.c
index e32b4ab2f8fb..537136457ea0 100644
--- a/trunk/drivers/scsi/advansys.c
+++ b/trunk/drivers/scsi/advansys.c
@@ -371,7 +371,7 @@
1.5 (8/8/96):
1. Add support for ABP-940U (PCI Ultra) adapter.
- 2. Add support for IRQ sharing by setting the IRQF_SHARED flag for
+ 2. Add support for IRQ sharing by setting the SA_SHIRQ flag for
request_irq and supplying a dev_id pointer to both request_irq()
and free_irq().
3. In AscSearchIOPortAddr11() restore a call to check_region() which
@@ -504,9 +504,9 @@
3. For v2.1.93 and newer kernels use CONFIG_PCI and new PCI BIOS
access functions.
4. Update board serial number printing.
- 5. Try allocating an IRQ both with and without the IRQF_DISABLED
+ 5. Try allocating an IRQ both with and without the SA_INTERRUPT
flag set to allow IRQ sharing with drivers that do not set
- the IRQF_DISABLED flag. Also display a more descriptive error
+ the SA_INTERRUPT flag. Also display a more descriptive error
message if request_irq() fails.
6. Update to latest Asc and Adv Libraries.
@@ -5202,19 +5202,19 @@ advansys_detect(struct scsi_host_template *tpnt)
/* Register IRQ Number. */
ASC_DBG1(2, "advansys_detect: request_irq() %d\n", shp->irq);
/*
- * If request_irq() fails with the IRQF_DISABLED flag set,
- * then try again without the IRQF_DISABLED flag set. This
+ * If request_irq() fails with the SA_INTERRUPT flag set,
+ * then try again without the SA_INTERRUPT flag set. This
* allows IRQ sharing to work even with other drivers that
- * do not set the IRQF_DISABLED flag.
+ * do not set the SA_INTERRUPT flag.
*
- * If IRQF_DISABLED is not set, then interrupts are enabled
+ * If SA_INTERRUPT is not set, then interrupts are enabled
* before the driver interrupt function is called.
*/
if (((ret = request_irq(shp->irq, advansys_interrupt,
- IRQF_DISABLED | (share_irq == TRUE ? IRQF_SHARED : 0),
+ SA_INTERRUPT | (share_irq == TRUE ? SA_SHIRQ : 0),
"advansys", boardp)) != 0) &&
((ret = request_irq(shp->irq, advansys_interrupt,
- (share_irq == TRUE ? IRQF_SHARED : 0),
+ (share_irq == TRUE ? SA_SHIRQ : 0),
"advansys", boardp)) != 0))
{
if (ret == -EBUSY) {
diff --git a/trunk/drivers/scsi/aha152x.c b/trunk/drivers/scsi/aha152x.c
index 36e63f82d9f8..de80cdfb5b9d 100644
--- a/trunk/drivers/scsi/aha152x.c
+++ b/trunk/drivers/scsi/aha152x.c
@@ -855,7 +855,7 @@ struct Scsi_Host *aha152x_probe_one(struct aha152x_setup *setup)
SETPORT(SIMODE0, 0);
SETPORT(SIMODE1, 0);
- if( request_irq(shpnt->irq, swintr, IRQF_DISABLED|IRQF_SHARED, "aha152x", shpnt) ) {
+ if( request_irq(shpnt->irq, swintr, SA_INTERRUPT|SA_SHIRQ, "aha152x", shpnt) ) {
printk(KERN_ERR "aha152x%d: irq %d busy.\n", shpnt->host_no, shpnt->irq);
goto out_host_put;
}
@@ -889,7 +889,7 @@ struct Scsi_Host *aha152x_probe_one(struct aha152x_setup *setup)
SETPORT(SSTAT0, 0x7f);
SETPORT(SSTAT1, 0xef);
- if ( request_irq(shpnt->irq, intr, IRQF_DISABLED|IRQF_SHARED, "aha152x", shpnt) ) {
+ if ( request_irq(shpnt->irq, intr, SA_INTERRUPT|SA_SHIRQ, "aha152x", shpnt) ) {
printk(KERN_ERR "aha152x%d: failed to reassign irq %d.\n", shpnt->host_no, shpnt->irq);
goto out_host_put;
}
diff --git a/trunk/drivers/scsi/aha1740.c b/trunk/drivers/scsi/aha1740.c
index 0e4a7ebe300a..4b8c6a543925 100644
--- a/trunk/drivers/scsi/aha1740.c
+++ b/trunk/drivers/scsi/aha1740.c
@@ -634,7 +634,7 @@ static int aha1740_probe (struct device *dev)
}
DEB(printk("aha1740_probe: enable interrupt channel %d\n",irq_level));
- if (request_irq(irq_level,aha1740_intr_handle,irq_type ? 0 : IRQF_SHARED,
+ if (request_irq(irq_level,aha1740_intr_handle,irq_type ? 0 : SA_SHIRQ,
"aha1740",shpnt)) {
printk(KERN_ERR "aha1740_probe: Unable to allocate IRQ %d.\n",
irq_level);
diff --git a/trunk/drivers/scsi/ahci.c b/trunk/drivers/scsi/ahci.c
index 15f6cd4279b7..f05946777718 100644
--- a/trunk/drivers/scsi/ahci.c
+++ b/trunk/drivers/scsi/ahci.c
@@ -1371,7 +1371,7 @@ static int ahci_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
probe_ent->port_ops = ahci_port_info[board_idx].port_ops;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
probe_ent->private_data = hpriv;
diff --git a/trunk/drivers/scsi/aic7xxx/aic7770_osm.c b/trunk/drivers/scsi/aic7xxx/aic7770_osm.c
index 867cbe23579b..d754b3267863 100644
--- a/trunk/drivers/scsi/aic7xxx/aic7770_osm.c
+++ b/trunk/drivers/scsi/aic7xxx/aic7770_osm.c
@@ -65,7 +65,7 @@ aic7770_map_int(struct ahc_softc *ahc, u_int irq)
shared = 0;
if ((ahc->flags & AHC_EDGE_INTERRUPT) == 0)
- shared = IRQF_SHARED;
+ shared = SA_SHIRQ;
error = request_irq(irq, ahc_linux_isr, shared, "aic7xxx", ahc);
if (error == 0)
diff --git a/trunk/drivers/scsi/aic7xxx/aic79xx_osm_pci.c b/trunk/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
index 50a41eda580e..ebbf7e4ff4cc 100644
--- a/trunk/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
+++ b/trunk/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
@@ -342,7 +342,7 @@ ahd_pci_map_int(struct ahd_softc *ahd)
int error;
error = request_irq(ahd->dev_softc->irq, ahd_linux_isr,
- IRQF_SHARED, "aic79xx", ahd);
+ SA_SHIRQ, "aic79xx", ahd);
if (!error)
ahd->platform_data->irq = ahd->dev_softc->irq;
diff --git a/trunk/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c b/trunk/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
index 7e42f07a27f3..0c9c2f400bf6 100644
--- a/trunk/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
+++ b/trunk/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
@@ -375,7 +375,7 @@ ahc_pci_map_int(struct ahc_softc *ahc)
int error;
error = request_irq(ahc->dev_softc->irq, ahc_linux_isr,
- IRQF_SHARED, "aic7xxx", ahc);
+ SA_SHIRQ, "aic7xxx", ahc);
if (error == 0)
ahc->platform_data->irq = ahc->dev_softc->irq;
diff --git a/trunk/drivers/scsi/aic7xxx_old.c b/trunk/drivers/scsi/aic7xxx_old.c
index 3f85b5e978f1..5dba1c63122e 100644
--- a/trunk/drivers/scsi/aic7xxx_old.c
+++ b/trunk/drivers/scsi/aic7xxx_old.c
@@ -8322,11 +8322,11 @@ aic7xxx_register(struct scsi_host_template *template, struct aic7xxx_host *p,
}
else
{
- result = (request_irq(p->irq, do_aic7xxx_isr, IRQF_SHARED,
+ result = (request_irq(p->irq, do_aic7xxx_isr, SA_SHIRQ,
"aic7xxx", p));
if (result < 0)
{
- result = (request_irq(p->irq, do_aic7xxx_isr, IRQF_DISABLED | IRQF_SHARED,
+ result = (request_irq(p->irq, do_aic7xxx_isr, SA_INTERRUPT | SA_SHIRQ,
"aic7xxx", p));
}
}
diff --git a/trunk/drivers/scsi/arm/acornscsi.c b/trunk/drivers/scsi/arm/acornscsi.c
index 7621e3fa37b1..1b9900b58956 100644
--- a/trunk/drivers/scsi/arm/acornscsi.c
+++ b/trunk/drivers/scsi/arm/acornscsi.c
@@ -3030,7 +3030,7 @@ acornscsi_probe(struct expansion_card *ec, const struct ecard_id *id)
if (!request_region(host->io_port, 2048, "acornscsi(ram)"))
goto err_5;
- ret = request_irq(host->irq, acornscsi_intr, IRQF_DISABLED, "acornscsi", ashost);
+ ret = request_irq(host->irq, acornscsi_intr, SA_INTERRUPT, "acornscsi", ashost);
if (ret) {
printk(KERN_CRIT "scsi%d: IRQ%d not free: %d\n",
host->host_no, ashost->scsi.irq, ret);
diff --git a/trunk/drivers/scsi/arm/cumana_1.c b/trunk/drivers/scsi/arm/cumana_1.c
index 3bdfc36481ae..e6c9491dc5c0 100644
--- a/trunk/drivers/scsi/arm/cumana_1.c
+++ b/trunk/drivers/scsi/arm/cumana_1.c
@@ -277,7 +277,7 @@ cumanascsi1_probe(struct expansion_card *ec, const struct ecard_id *id)
((struct NCR5380_hostdata *)host->hostdata)->ctrl = 0;
outb(0x00, host->io_port - 577);
- ret = request_irq(host->irq, cumanascsi_intr, IRQF_DISABLED,
+ ret = request_irq(host->irq, cumanascsi_intr, SA_INTERRUPT,
"CumanaSCSI-1", host);
if (ret) {
printk("scsi%d: IRQ%d not free: %d\n",
diff --git a/trunk/drivers/scsi/arm/cumana_2.c b/trunk/drivers/scsi/arm/cumana_2.c
index 719af0dcc0e5..fad2109268bb 100644
--- a/trunk/drivers/scsi/arm/cumana_2.c
+++ b/trunk/drivers/scsi/arm/cumana_2.c
@@ -460,7 +460,7 @@ cumanascsi2_probe(struct expansion_card *ec, const struct ecard_id *id)
goto out_free;
ret = request_irq(ec->irq, cumanascsi_2_intr,
- IRQF_DISABLED, "cumanascsi2", info);
+ SA_INTERRUPT, "cumanascsi2", info);
if (ret) {
printk("scsi%d: IRQ%d not free: %d\n",
host->host_no, ec->irq, ret);
diff --git a/trunk/drivers/scsi/arm/powertec.c b/trunk/drivers/scsi/arm/powertec.c
index b2c346a47052..3d69f6c45a6b 100644
--- a/trunk/drivers/scsi/arm/powertec.c
+++ b/trunk/drivers/scsi/arm/powertec.c
@@ -373,7 +373,7 @@ powertecscsi_probe(struct expansion_card *ec, const struct ecard_id *id)
goto out_free;
ret = request_irq(ec->irq, powertecscsi_intr,
- IRQF_DISABLED, "powertec", info);
+ SA_INTERRUPT, "powertec", info);
if (ret) {
printk("scsi%d: IRQ%d not free: %d\n",
host->host_no, ec->irq, ret);
diff --git a/trunk/drivers/scsi/atp870u.c b/trunk/drivers/scsi/atp870u.c
index 412f8301b757..3ee4d4d3f445 100644
--- a/trunk/drivers/scsi/atp870u.c
+++ b/trunk/drivers/scsi/atp870u.c
@@ -2751,7 +2751,7 @@ static int atp870u_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
goto unregister;
}
- if (request_irq(pdev->irq, atp870u_intr_handle, IRQF_SHARED, "atp880i", shpnt)) {
+ if (request_irq(pdev->irq, atp870u_intr_handle, SA_SHIRQ, "atp880i", shpnt)) {
printk(KERN_ERR "Unable to allocate IRQ%d for Acard controller.\n", pdev->irq);
goto free_tables;
}
@@ -2822,7 +2822,7 @@ static int atp870u_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
#ifdef ED_DBGP
printk("request_irq() shpnt %p hostdata %p\n", shpnt, p);
#endif
- if (request_irq(pdev->irq, atp870u_intr_handle, IRQF_SHARED, "atp870u", shpnt)) {
+ if (request_irq(pdev->irq, atp870u_intr_handle, SA_SHIRQ, "atp870u", shpnt)) {
printk(KERN_ERR "Unable to allocate IRQ for Acard controller.\n");
goto free_tables;
}
@@ -3004,7 +3004,7 @@ static int atp870u_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (atp870u_init_tables(shpnt) < 0)
goto unregister;
- if (request_irq(pdev->irq, atp870u_intr_handle, IRQF_SHARED, "atp870i", shpnt)) {
+ if (request_irq(pdev->irq, atp870u_intr_handle, SA_SHIRQ, "atp870i", shpnt)) {
printk(KERN_ERR "Unable to allocate IRQ%d for Acard controller.\n", pdev->irq);
goto free_tables;
}
diff --git a/trunk/drivers/scsi/blz1230.c b/trunk/drivers/scsi/blz1230.c
index 329a8f297b31..3867ac2de4c2 100644
--- a/trunk/drivers/scsi/blz1230.c
+++ b/trunk/drivers/scsi/blz1230.c
@@ -172,7 +172,7 @@ int __init blz1230_esp_detect(struct scsi_host_template *tpnt)
esp->irq = IRQ_AMIGA_PORTS;
esp->slot = board+REAL_BLZ1230_ESP_ADDR;
- if (request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
+ if (request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
"Blizzard 1230 SCSI IV", esp->ehost))
goto err_out;
diff --git a/trunk/drivers/scsi/blz2060.c b/trunk/drivers/scsi/blz2060.c
index b6c137b97350..4ebe69e32756 100644
--- a/trunk/drivers/scsi/blz2060.c
+++ b/trunk/drivers/scsi/blz2060.c
@@ -146,7 +146,7 @@ int __init blz2060_esp_detect(struct scsi_host_template *tpnt)
esp->esp_command_dvma = virt_to_bus((void *)cmd_buffer);
esp->irq = IRQ_AMIGA_PORTS;
- request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
+ request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
"Blizzard 2060 SCSI", esp->ehost);
/* Figure out our scsi ID on the bus */
diff --git a/trunk/drivers/scsi/cyberstorm.c b/trunk/drivers/scsi/cyberstorm.c
index 7c7cfb54e897..a4a4fac5c0a1 100644
--- a/trunk/drivers/scsi/cyberstorm.c
+++ b/trunk/drivers/scsi/cyberstorm.c
@@ -172,7 +172,7 @@ int __init cyber_esp_detect(struct scsi_host_template *tpnt)
esp->esp_command_dvma = virt_to_bus((void *)cmd_buffer);
esp->irq = IRQ_AMIGA_PORTS;
- request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
+ request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
"CyberStorm SCSI", esp->ehost);
/* Figure out our scsi ID on the bus */
/* The DMA cond flag contains a hardcoded jumper bit
diff --git a/trunk/drivers/scsi/cyberstormII.c b/trunk/drivers/scsi/cyberstormII.c
index d88cb9cf091e..3a803d73bc5f 100644
--- a/trunk/drivers/scsi/cyberstormII.c
+++ b/trunk/drivers/scsi/cyberstormII.c
@@ -153,7 +153,7 @@ int __init cyberII_esp_detect(struct scsi_host_template *tpnt)
esp->esp_command_dvma = virt_to_bus((void *)cmd_buffer);
esp->irq = IRQ_AMIGA_PORTS;
- request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
+ request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
"CyberStorm SCSI Mk II", esp->ehost);
/* Figure out our scsi ID on the bus */
diff --git a/trunk/drivers/scsi/dc395x.c b/trunk/drivers/scsi/dc395x.c
index ff2b1796fa34..58b0748045ee 100644
--- a/trunk/drivers/scsi/dc395x.c
+++ b/trunk/drivers/scsi/dc395x.c
@@ -4562,7 +4562,7 @@ static int __devinit adapter_init(struct AdapterCtlBlk *acb,
acb->io_port_base = io_port;
acb->io_port_len = io_port_len;
- if (request_irq(irq, dc395x_interrupt, IRQF_SHARED, DC395X_NAME, acb)) {
+ if (request_irq(irq, dc395x_interrupt, SA_SHIRQ, DC395X_NAME, acb)) {
/* release the region we just claimed */
dprintkl(KERN_INFO, "Failed to register IRQ\n");
goto failed;
diff --git a/trunk/drivers/scsi/dec_esp.c b/trunk/drivers/scsi/dec_esp.c
index eb32062f7e68..a35ee43a48df 100644
--- a/trunk/drivers/scsi/dec_esp.c
+++ b/trunk/drivers/scsi/dec_esp.c
@@ -202,19 +202,19 @@ static int dec_esp_detect(struct scsi_host_template * tpnt)
esp_initialize(esp);
- if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
+ if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
"ncr53c94", esp->ehost))
goto err_dealloc;
if (request_irq(dec_interrupt[DEC_IRQ_ASC_MERR],
- scsi_dma_merr_int, IRQF_DISABLED,
+ scsi_dma_merr_int, SA_INTERRUPT,
"ncr53c94 error", esp->ehost))
goto err_free_irq;
if (request_irq(dec_interrupt[DEC_IRQ_ASC_ERR],
- scsi_dma_err_int, IRQF_DISABLED,
+ scsi_dma_err_int, SA_INTERRUPT,
"ncr53c94 overrun", esp->ehost))
goto err_free_irq_merr;
if (request_irq(dec_interrupt[DEC_IRQ_ASC_DMA],
- scsi_dma_int, IRQF_DISABLED,
+ scsi_dma_int, SA_INTERRUPT,
"ncr53c94 dma", esp->ehost))
goto err_free_irq_err;
@@ -276,7 +276,7 @@ static int dec_esp_detect(struct scsi_host_template * tpnt)
esp->dma_mmu_release_scsi_sgl = 0;
esp->dma_advance_sg = 0;
- if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
+ if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
"PMAZ_AA", esp->ehost)) {
esp_deallocate(esp);
release_tc_card(slot);
diff --git a/trunk/drivers/scsi/dmx3191d.c b/trunk/drivers/scsi/dmx3191d.c
index 879a26657676..38e4010eff96 100644
--- a/trunk/drivers/scsi/dmx3191d.c
+++ b/trunk/drivers/scsi/dmx3191d.c
@@ -94,7 +94,7 @@ static int __devinit dmx3191d_probe_one(struct pci_dev *pdev,
NCR5380_init(shost, FLAG_NO_PSEUDO_DMA | FLAG_DTC3181E);
- if (request_irq(pdev->irq, NCR5380_intr, IRQF_SHARED,
+ if (request_irq(pdev->irq, NCR5380_intr, SA_SHIRQ,
DMX3191D_DRIVER_NAME, shost)) {
/*
* Steam powered scsi controllers run without an IRQ anyway
diff --git a/trunk/drivers/scsi/dpt_i2o.c b/trunk/drivers/scsi/dpt_i2o.c
index e1337339cacc..b1b704a42efd 100644
--- a/trunk/drivers/scsi/dpt_i2o.c
+++ b/trunk/drivers/scsi/dpt_i2o.c
@@ -1009,7 +1009,7 @@ static int adpt_install_hba(struct scsi_host_template* sht, struct pci_dev* pDev
printk(KERN_INFO" BAR1 %p - size= %x\n",msg_addr_virt,hba_map1_area_size);
}
- if (request_irq (pDev->irq, adpt_isr, IRQF_SHARED, pHba->name, pHba)) {
+ if (request_irq (pDev->irq, adpt_isr, SA_SHIRQ, pHba->name, pHba)) {
printk(KERN_ERR"%s: Couldn't register IRQ %d\n", pHba->name, pDev->irq);
adpt_i2o_delete_hba(pHba);
return -EINVAL;
diff --git a/trunk/drivers/scsi/dtc.c b/trunk/drivers/scsi/dtc.c
index 0d5713dfa204..c5108c8c887b 100644
--- a/trunk/drivers/scsi/dtc.c
+++ b/trunk/drivers/scsi/dtc.c
@@ -280,7 +280,7 @@ static int __init dtc_detect(struct scsi_host_template * tpnt)
/* With interrupts enabled, it will sometimes hang when doing heavy
* reads. So better not enable them until I finger it out. */
if (instance->irq != SCSI_IRQ_NONE)
- if (request_irq(instance->irq, dtc_intr, IRQF_DISABLED, "dtc", instance)) {
+ if (request_irq(instance->irq, dtc_intr, SA_INTERRUPT, "dtc", instance)) {
printk(KERN_ERR "scsi%d : IRQ%d not free, interrupts disabled\n", instance->host_no, instance->irq);
instance->irq = SCSI_IRQ_NONE;
}
diff --git a/trunk/drivers/scsi/eata.c b/trunk/drivers/scsi/eata.c
index a5ff43b1b263..67c419402d8a 100644
--- a/trunk/drivers/scsi/eata.c
+++ b/trunk/drivers/scsi/eata.c
@@ -1221,7 +1221,7 @@ static int port_detect(unsigned long port_base, unsigned int j,
/* Board detected, allocate its IRQ */
if (request_irq(irq, do_interrupt_handler,
- IRQF_DISABLED | ((subversion == ESA) ? IRQF_SHARED : 0),
+ SA_INTERRUPT | ((subversion == ESA) ? SA_SHIRQ : 0),
driver_name, (void *)&sha[j])) {
printk("%s: unable to allocate IRQ %u, detaching.\n", name,
irq);
diff --git a/trunk/drivers/scsi/eata_pio.c b/trunk/drivers/scsi/eata_pio.c
index 771b01984cbc..d8c9ec21e0ef 100644
--- a/trunk/drivers/scsi/eata_pio.c
+++ b/trunk/drivers/scsi/eata_pio.c
@@ -731,7 +731,7 @@ static int register_pio_HBA(long base, struct get_conf *gc)
return 0;
if (!reg_IRQ[gc->IRQ]) { /* Interrupt already registered ? */
- if (!request_irq(gc->IRQ, do_eata_pio_int_handler, IRQF_DISABLED, "EATA-PIO", sh)) {
+ if (!request_irq(gc->IRQ, do_eata_pio_int_handler, SA_INTERRUPT, "EATA-PIO", sh)) {
reg_IRQ[gc->IRQ]++;
if (!gc->IRQ_TR)
reg_IRQL[gc->IRQ] = 1; /* IRQ is edge triggered */
@@ -965,7 +965,7 @@ static int eata_pio_detect(struct scsi_host_template *tpnt)
for (i = 0; i <= MAXIRQ; i++)
if (reg_IRQ[i])
- request_irq(i, do_eata_pio_int_handler, IRQF_DISABLED, "EATA-PIO", NULL);
+ request_irq(i, do_eata_pio_int_handler, SA_INTERRUPT, "EATA-PIO", NULL);
HBA_ptr = first_HBA;
diff --git a/trunk/drivers/scsi/esp.c b/trunk/drivers/scsi/esp.c
index 10573c24a50b..36c50b61f94d 100644
--- a/trunk/drivers/scsi/esp.c
+++ b/trunk/drivers/scsi/esp.c
@@ -778,7 +778,7 @@ static int __init esp_register_irq(struct esp *esp)
* sanely maintain.
*/
if (request_irq(esp->ehost->irq, esp_intr,
- IRQF_SHARED, "ESP SCSI", esp)) {
+ SA_SHIRQ, "ESP SCSI", esp)) {
printk("esp%d: Cannot acquire irq line\n",
esp->esp_id);
return -1;
diff --git a/trunk/drivers/scsi/fastlane.c b/trunk/drivers/scsi/fastlane.c
index 2a1c5c22b9e0..8ae9c406a83b 100644
--- a/trunk/drivers/scsi/fastlane.c
+++ b/trunk/drivers/scsi/fastlane.c
@@ -210,7 +210,7 @@ int __init fastlane_esp_detect(struct scsi_host_template *tpnt)
esp->irq = IRQ_AMIGA_PORTS;
esp->slot = board+FASTLANE_ESP_ADDR;
- if (request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
+ if (request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
"Fastlane SCSI", esp->ehost)) {
printk(KERN_WARNING "Fastlane: Could not get IRQ%d, aborting.\n", IRQ_AMIGA_PORTS);
goto err_unmap;
diff --git a/trunk/drivers/scsi/fd_mcs.c b/trunk/drivers/scsi/fd_mcs.c
index dde3edf35c03..70a1606bd580 100644
--- a/trunk/drivers/scsi/fd_mcs.c
+++ b/trunk/drivers/scsi/fd_mcs.c
@@ -400,7 +400,7 @@ static int fd_mcs_detect(struct scsi_host_template * tpnt)
mca_set_adapter_name(slot - 1, fd_mcs_adapters[loop].name);
/* check irq/region */
- if (request_irq(irq, fd_mcs_intr, IRQF_SHARED, "fd_mcs", hosts)) {
+ if (request_irq(irq, fd_mcs_intr, SA_SHIRQ, "fd_mcs", hosts)) {
printk(KERN_ERR "fd_mcs: interrupt is not available, skipping...\n");
continue;
}
diff --git a/trunk/drivers/scsi/fdomain.c b/trunk/drivers/scsi/fdomain.c
index b0694dcce246..03356887202d 100644
--- a/trunk/drivers/scsi/fdomain.c
+++ b/trunk/drivers/scsi/fdomain.c
@@ -949,7 +949,7 @@ struct Scsi_Host *__fdomain_16x0_detect(struct scsi_host_template *tpnt )
/* Register the IRQ with the kernel */
retcode = request_irq( interrupt_level,
- do_fdomain_16x0_intr, pdev?IRQF_SHARED:0, "fdomain", shpnt);
+ do_fdomain_16x0_intr, pdev?SA_SHIRQ:0, "fdomain", shpnt);
if (retcode < 0) {
if (retcode == -EINVAL) {
diff --git a/trunk/drivers/scsi/g_NCR5380.c b/trunk/drivers/scsi/g_NCR5380.c
index 67f1100f3103..fbc8e16c8d15 100644
--- a/trunk/drivers/scsi/g_NCR5380.c
+++ b/trunk/drivers/scsi/g_NCR5380.c
@@ -461,7 +461,7 @@ int __init generic_NCR5380_detect(struct scsi_host_template * tpnt)
instance->irq = NCR5380_probe_irq(instance, 0xffff);
if (instance->irq != SCSI_IRQ_NONE)
- if (request_irq(instance->irq, generic_NCR5380_intr, IRQF_DISABLED, "NCR5380", instance)) {
+ if (request_irq(instance->irq, generic_NCR5380_intr, SA_INTERRUPT, "NCR5380", instance)) {
printk(KERN_WARNING "scsi%d : IRQ%d not free, interrupts disabled\n", instance->host_no, instance->irq);
instance->irq = SCSI_IRQ_NONE;
}
diff --git a/trunk/drivers/scsi/gdth.c b/trunk/drivers/scsi/gdth.c
index 43afd476e606..76071a158306 100644
--- a/trunk/drivers/scsi/gdth.c
+++ b/trunk/drivers/scsi/gdth.c
@@ -4350,7 +4350,7 @@ static int __init gdth_detect(Scsi_Host_Template *shtp)
printk("Configuring GDT-ISA HA at BIOS 0x%05X IRQ %u DRQ %u\n",
isa_bios,ha->irq,ha->drq);
- if (request_irq(ha->irq,gdth_interrupt,IRQF_DISABLED,"gdth",ha)) {
+ if (request_irq(ha->irq,gdth_interrupt,SA_INTERRUPT,"gdth",ha)) {
printk("GDT-ISA: Unable to allocate IRQ\n");
scsi_unregister(shp);
continue;
@@ -4476,7 +4476,7 @@ static int __init gdth_detect(Scsi_Host_Template *shtp)
printk("Configuring GDT-EISA HA at Slot %d IRQ %u\n",
eisa_slot>>12,ha->irq);
- if (request_irq(ha->irq,gdth_interrupt,IRQF_DISABLED,"gdth",ha)) {
+ if (request_irq(ha->irq,gdth_interrupt,SA_INTERRUPT,"gdth",ha)) {
printk("GDT-EISA: Unable to allocate IRQ\n");
scsi_unregister(shp);
continue;
@@ -4603,7 +4603,7 @@ static int __init gdth_detect(Scsi_Host_Template *shtp)
pcistr[ctr].bus,PCI_SLOT(pcistr[ctr].device_fn),ha->irq);
if (request_irq(ha->irq, gdth_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "gdth", ha))
+ SA_INTERRUPT|SA_SHIRQ, "gdth", ha))
{
printk("GDT-PCI: Unable to allocate IRQ\n");
scsi_unregister(shp);
diff --git a/trunk/drivers/scsi/gvp11.c b/trunk/drivers/scsi/gvp11.c
index a0d831b1bada..5b154498056d 100644
--- a/trunk/drivers/scsi/gvp11.c
+++ b/trunk/drivers/scsi/gvp11.c
@@ -328,7 +328,7 @@ int __init gvp11_detect(struct scsi_host_template *tpnt)
(epc & GVP_SCSICLKMASK) ? WD33C93_FS_8_10
: WD33C93_FS_12_15);
- request_irq(IRQ_AMIGA_PORTS, gvp11_intr, IRQF_SHARED, "GVP11 SCSI",
+ request_irq(IRQ_AMIGA_PORTS, gvp11_intr, SA_SHIRQ, "GVP11 SCSI",
instance);
DMA(instance)->CNTR = GVP11_DMAC_INT_ENABLE;
num_gvp11++;
diff --git a/trunk/drivers/scsi/hptiop.c b/trunk/drivers/scsi/hptiop.c
index ab2f8b267908..f77808329e7c 100644
--- a/trunk/drivers/scsi/hptiop.c
+++ b/trunk/drivers/scsi/hptiop.c
@@ -1304,7 +1304,7 @@ static int __devinit hptiop_probe(struct pci_dev *pcidev,
pci_set_drvdata(pcidev, host);
- if (request_irq(pcidev->irq, hptiop_intr, IRQF_SHARED,
+ if (request_irq(pcidev->irq, hptiop_intr, SA_SHIRQ,
driver_name, hba)) {
printk(KERN_ERR "scsi%d: request irq %d failed\n",
hba->host->host_no, pcidev->irq);
diff --git a/trunk/drivers/scsi/ibmmca.c b/trunk/drivers/scsi/ibmmca.c
index 2be1dc5d852a..1cbc94842cc6 100644
--- a/trunk/drivers/scsi/ibmmca.c
+++ b/trunk/drivers/scsi/ibmmca.c
@@ -1510,7 +1510,7 @@ int ibmmca_detect(struct scsi_host_template * scsi_template)
#endif
/* get interrupt request level */
- if (request_irq(IM_IRQ, interrupt_handler, IRQF_SHARED, "ibmmcascsi", hosts)) {
+ if (request_irq(IM_IRQ, interrupt_handler, SA_SHIRQ, "ibmmcascsi", hosts)) {
printk(KERN_ERR "IBM MCA SCSI: Unable to get shared IRQ %d.\n", IM_IRQ);
return 0;
} else
@@ -1635,7 +1635,7 @@ int ibmmca_detect(struct scsi_host_template * scsi_template)
/* IRQ11 is used by SCSI-2 F/W Adapter/A */
printk(KERN_DEBUG "IBM MCA SCSI: SCSI-2 F/W adapter needs IRQ 11.\n");
/* get interrupt request level */
- if (request_irq(IM_IRQ_FW, interrupt_handler, IRQF_SHARED, "ibmmcascsi", hosts)) {
+ if (request_irq(IM_IRQ_FW, interrupt_handler, SA_SHIRQ, "ibmmcascsi", hosts)) {
printk(KERN_ERR "IBM MCA SCSI: Unable to get shared IRQ %d.\n", IM_IRQ_FW);
} else
IRQ11_registered++;
@@ -1696,7 +1696,7 @@ int ibmmca_detect(struct scsi_host_template * scsi_template)
/* IRQ11 is used by SCSI-2 F/W Adapter/A */
printk(KERN_DEBUG "IBM MCA SCSI: SCSI-2 F/W adapter needs IRQ 11.\n");
/* get interrupt request level */
- if (request_irq(IM_IRQ_FW, interrupt_handler, IRQF_SHARED, "ibmmcascsi", hosts))
+ if (request_irq(IM_IRQ_FW, interrupt_handler, SA_SHIRQ, "ibmmcascsi", hosts))
printk(KERN_ERR "IBM MCA SCSI: Unable to get shared IRQ %d.\n", IM_IRQ_FW);
else
IRQ11_registered++;
diff --git a/trunk/drivers/scsi/in2000.c b/trunk/drivers/scsi/in2000.c
index 59a4097f1254..883bc92b4d9a 100644
--- a/trunk/drivers/scsi/in2000.c
+++ b/trunk/drivers/scsi/in2000.c
@@ -2015,7 +2015,7 @@ static int __init in2000_detect(struct scsi_host_template * tpnt)
write1_io(0, IO_FIFO_READ); /* start fifo out in read mode */
write1_io(0, IO_INTR_MASK); /* allow all ints */
x = int_tab[(switches & (SW_INT0 | SW_INT1)) >> SW_INT_SHIFT];
- if (request_irq(x, in2000_intr, IRQF_DISABLED, "in2000", instance)) {
+ if (request_irq(x, in2000_intr, SA_INTERRUPT, "in2000", instance)) {
printk("in2000_detect: Unable to allocate IRQ.\n");
detect_count--;
continue;
diff --git a/trunk/drivers/scsi/initio.c b/trunk/drivers/scsi/initio.c
index 9e10dac61cfd..43acb1fe90b4 100644
--- a/trunk/drivers/scsi/initio.c
+++ b/trunk/drivers/scsi/initio.c
@@ -2867,7 +2867,7 @@ static int i91u_detect(struct scsi_host_template * tpnt)
hreg->sg_tablesize = TOTAL_SG_ENTRY; /* Maximun support is 32 */
/* Initial tulip chip */
- ok = request_irq(pHCB->HCS_Intr, i91u_intr, IRQF_DISABLED | IRQF_SHARED, "i91u", hreg);
+ ok = request_irq(pHCB->HCS_Intr, i91u_intr, SA_INTERRUPT | SA_SHIRQ, "i91u", hreg);
if (ok < 0) {
printk(KERN_WARNING "i91u: unable to request IRQ %d\n\n", pHCB->HCS_Intr);
return 0;
diff --git a/trunk/drivers/scsi/ipr.c b/trunk/drivers/scsi/ipr.c
index 01080b3acf5e..e19bf690cdf1 100644
--- a/trunk/drivers/scsi/ipr.c
+++ b/trunk/drivers/scsi/ipr.c
@@ -6428,7 +6428,7 @@ static int __devinit ipr_probe_ioa(struct pci_dev *pdev,
ioa_cfg->needs_hard_reset = 1;
ipr_mask_and_clear_interrupts(ioa_cfg, ~IPR_PCII_IOA_TRANS_TO_OPER);
- rc = request_irq(pdev->irq, ipr_isr, IRQF_SHARED, IPR_NAME, ioa_cfg);
+ rc = request_irq(pdev->irq, ipr_isr, SA_SHIRQ, IPR_NAME, ioa_cfg);
if (rc) {
dev_err(&pdev->dev, "Couldn't register IRQ %d! rc=%d\n",
diff --git a/trunk/drivers/scsi/ips.c b/trunk/drivers/scsi/ips.c
index 3c639286ec1e..7436793c3ad3 100644
--- a/trunk/drivers/scsi/ips.c
+++ b/trunk/drivers/scsi/ips.c
@@ -7007,7 +7007,7 @@ ips_register_scsi(int index)
memcpy(ha, oldha, sizeof (ips_ha_t));
free_irq(oldha->irq, oldha);
/* Install the interrupt handler with the new ha */
- if (request_irq(ha->irq, do_ipsintr, IRQF_SHARED, ips_name, ha)) {
+ if (request_irq(ha->irq, do_ipsintr, SA_SHIRQ, ips_name, ha)) {
IPS_PRINTK(KERN_WARNING, ha->pcidev,
"Unable to install interrupt handler\n");
scsi_host_put(sh);
@@ -7419,7 +7419,7 @@ ips_init_phase2(int index)
}
/* Install the interrupt handler */
- if (request_irq(ha->irq, do_ipsintr, IRQF_SHARED, ips_name, ha)) {
+ if (request_irq(ha->irq, do_ipsintr, SA_SHIRQ, ips_name, ha)) {
IPS_PRINTK(KERN_WARNING, ha->pcidev,
"Unable to install interrupt handler\n");
return ips_abort_init(ha, index);
diff --git a/trunk/drivers/scsi/jazz_esp.c b/trunk/drivers/scsi/jazz_esp.c
index 3fd8a96f2af3..fc031c76dade 100644
--- a/trunk/drivers/scsi/jazz_esp.c
+++ b/trunk/drivers/scsi/jazz_esp.c
@@ -131,7 +131,7 @@ static int jazz_esp_detect(struct scsi_host_template *tpnt)
esp->esp_command_dvma = vdma_alloc(CPHYSADDR(cmd_buffer), sizeof (cmd_buffer));
esp->irq = JAZZ_SCSI_IRQ;
- request_irq(JAZZ_SCSI_IRQ, esp_intr, IRQF_DISABLED, "JAZZ SCSI",
+ request_irq(JAZZ_SCSI_IRQ, esp_intr, SA_INTERRUPT, "JAZZ SCSI",
esp->ehost);
/*
diff --git a/trunk/drivers/scsi/lasi700.c b/trunk/drivers/scsi/lasi700.c
index f0871c3ac3d9..eb7bd310cc82 100644
--- a/trunk/drivers/scsi/lasi700.c
+++ b/trunk/drivers/scsi/lasi700.c
@@ -131,7 +131,7 @@ lasi700_probe(struct parisc_device *dev)
host->this_id = 7;
host->base = base;
host->irq = dev->irq;
- if(request_irq(dev->irq, NCR_700_intr, IRQF_SHARED, "lasi700", host)) {
+ if(request_irq(dev->irq, NCR_700_intr, SA_SHIRQ, "lasi700", host)) {
printk(KERN_ERR "lasi700: request_irq failed!\n");
goto out_put_host;
}
diff --git a/trunk/drivers/scsi/libata-bmdma.c b/trunk/drivers/scsi/libata-bmdma.c
index 9ce221f25954..38bfebf4fe8f 100644
--- a/trunk/drivers/scsi/libata-bmdma.c
+++ b/trunk/drivers/scsi/libata-bmdma.c
@@ -853,7 +853,7 @@ ata_pci_init_native_mode(struct pci_dev *pdev, struct ata_port_info **port, int
return NULL;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->private_data = port[0]->private_data;
if (ports & ATA_PORT_PRIMARY) {
diff --git a/trunk/drivers/scsi/lpfc/lpfc_init.c b/trunk/drivers/scsi/lpfc/lpfc_init.c
index 5a28d9bf8e4d..908d0f27706f 100644
--- a/trunk/drivers/scsi/lpfc/lpfc_init.c
+++ b/trunk/drivers/scsi/lpfc/lpfc_init.c
@@ -1620,7 +1620,7 @@ lpfc_pci_probe_one(struct pci_dev *pdev, const struct pci_device_id *pid)
if (error)
goto out_remove_host;
- error = request_irq(phba->pcidev->irq, lpfc_intr_handler, IRQF_SHARED,
+ error = request_irq(phba->pcidev->irq, lpfc_intr_handler, SA_SHIRQ,
LPFC_DRIVER_NAME, phba);
if (error) {
lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
diff --git a/trunk/drivers/scsi/megaraid.c b/trunk/drivers/scsi/megaraid.c
index 76edbb639d37..5d2cefb5e52d 100644
--- a/trunk/drivers/scsi/megaraid.c
+++ b/trunk/drivers/scsi/megaraid.c
@@ -4714,7 +4714,7 @@ megaraid_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
if (request_irq(irq, (adapter->flag & BOARD_MEMMAP) ?
megaraid_isr_memmapped : megaraid_isr_iomapped,
- IRQF_SHARED, "megaraid", adapter)) {
+ SA_SHIRQ, "megaraid", adapter)) {
printk(KERN_WARNING
"megaraid: Couldn't register IRQ %d!\n", irq);
goto out_free_scb_list;
diff --git a/trunk/drivers/scsi/megaraid/megaraid_mbox.c b/trunk/drivers/scsi/megaraid/megaraid_mbox.c
index 92715130ac09..b7caf60638e8 100644
--- a/trunk/drivers/scsi/megaraid/megaraid_mbox.c
+++ b/trunk/drivers/scsi/megaraid/megaraid_mbox.c
@@ -767,7 +767,7 @@ megaraid_init_mbox(adapter_t *adapter)
//
// request IRQ and register the interrupt service routine
- if (request_irq(adapter->irq, megaraid_isr, IRQF_SHARED, "megaraid",
+ if (request_irq(adapter->irq, megaraid_isr, SA_SHIRQ, "megaraid",
adapter)) {
con_log(CL_ANN, (KERN_WARNING
diff --git a/trunk/drivers/scsi/megaraid/megaraid_sas.c b/trunk/drivers/scsi/megaraid/megaraid_sas.c
index e5c017ccda59..0c9516ff636f 100644
--- a/trunk/drivers/scsi/megaraid/megaraid_sas.c
+++ b/trunk/drivers/scsi/megaraid/megaraid_sas.c
@@ -2191,7 +2191,7 @@ megasas_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
/*
* Register IRQ
*/
- if (request_irq(pdev->irq, megasas_isr, IRQF_SHARED, "megasas", instance)) {
+ if (request_irq(pdev->irq, megasas_isr, SA_SHIRQ, "megasas", instance)) {
printk(KERN_DEBUG "megasas: Failed to register IRQ\n");
goto fail_irq;
}
diff --git a/trunk/drivers/scsi/nsp32.c b/trunk/drivers/scsi/nsp32.c
index bd337a914298..5c55e152e718 100644
--- a/trunk/drivers/scsi/nsp32.c
+++ b/trunk/drivers/scsi/nsp32.c
@@ -2867,7 +2867,7 @@ static int nsp32_detect(struct scsi_host_template *sht)
nsp32_do_bus_reset(data);
ret = request_irq(host->irq, do_nsp32_isr,
- IRQF_SHARED | IRQF_SAMPLE_RANDOM, "nsp32", data);
+ SA_SHIRQ | SA_SAMPLE_RANDOM, "nsp32", data);
if (ret < 0) {
nsp32_msg(KERN_ERR, "Unable to allocate IRQ for NinjaSCSI32 "
"SCSI PCI controller. Interrupt: %d", host->irq);
diff --git a/trunk/drivers/scsi/oktagon_esp.c b/trunk/drivers/scsi/oktagon_esp.c
index dd67a68c5c23..d7a0bcc6c670 100644
--- a/trunk/drivers/scsi/oktagon_esp.c
+++ b/trunk/drivers/scsi/oktagon_esp.c
@@ -197,7 +197,7 @@ int oktagon_esp_detect(struct scsi_host_template *tpnt)
esp->esp_command_dvma = (__u32) cmd_buffer;
esp->irq = IRQ_AMIGA_PORTS;
- request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
+ request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
"BSC Oktagon SCSI", esp->ehost);
/* Figure out our scsi ID on the bus */
diff --git a/trunk/drivers/scsi/pas16.c b/trunk/drivers/scsi/pas16.c
index 1434209a8ac5..1bf96ed8f935 100644
--- a/trunk/drivers/scsi/pas16.c
+++ b/trunk/drivers/scsi/pas16.c
@@ -454,7 +454,7 @@ int __init pas16_detect(struct scsi_host_template * tpnt)
instance->irq = NCR5380_probe_irq(instance, PAS16_IRQS);
if (instance->irq != SCSI_IRQ_NONE)
- if (request_irq(instance->irq, pas16_intr, IRQF_DISABLED, "pas16", instance)) {
+ if (request_irq(instance->irq, pas16_intr, SA_INTERRUPT, "pas16", instance)) {
printk("scsi%d : IRQ%d not free, interrupts disabled\n",
instance->host_no, instance->irq);
instance->irq = SCSI_IRQ_NONE;
diff --git a/trunk/drivers/scsi/pcmcia/nsp_cs.c b/trunk/drivers/scsi/pcmcia/nsp_cs.c
index 7ff5851c040b..231f9c311c69 100644
--- a/trunk/drivers/scsi/pcmcia/nsp_cs.c
+++ b/trunk/drivers/scsi/pcmcia/nsp_cs.c
@@ -1623,7 +1623,7 @@ static int nsp_cs_probe(struct pcmcia_device *link)
/* Interrupt handler */
link->irq.Handler = &nspintr;
link->irq.Instance = info;
- link->irq.Attributes |= (IRQF_SHARED | IRQF_SAMPLE_RANDOM);
+ link->irq.Attributes |= (SA_SHIRQ | SA_SAMPLE_RANDOM);
/* General socket configuration */
link->conf.Attributes = CONF_ENABLE_IRQ;
diff --git a/trunk/drivers/scsi/pcmcia/sym53c500_cs.c b/trunk/drivers/scsi/pcmcia/sym53c500_cs.c
index 0b65099acb1a..9f59827707f0 100644
--- a/trunk/drivers/scsi/pcmcia/sym53c500_cs.c
+++ b/trunk/drivers/scsi/pcmcia/sym53c500_cs.c
@@ -799,7 +799,7 @@ SYM53C500_config(struct pcmcia_device *link)
data = (struct sym53c500_data *)host->hostdata;
if (irq_level > 0) {
- if (request_irq(irq_level, SYM53C500_intr, IRQF_SHARED, "SYM53C500", host)) {
+ if (request_irq(irq_level, SYM53C500_intr, SA_SHIRQ, "SYM53C500", host)) {
printk("SYM53C500: unable to allocate IRQ %d\n", irq_level);
goto err_free_scsi;
}
diff --git a/trunk/drivers/scsi/pdc_adma.c b/trunk/drivers/scsi/pdc_adma.c
index d1f38c32aa15..7ebe8e03aa96 100644
--- a/trunk/drivers/scsi/pdc_adma.c
+++ b/trunk/drivers/scsi/pdc_adma.c
@@ -690,7 +690,7 @@ static int adma_ata_init_one(struct pci_dev *pdev,
probe_ent->port_ops = adma_port_info[board_idx].port_ops;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
probe_ent->n_ports = ADMA_PORTS;
diff --git a/trunk/drivers/scsi/qla1280.c b/trunk/drivers/scsi/qla1280.c
index b818b9bfe678..a7e4183462b8 100644
--- a/trunk/drivers/scsi/qla1280.c
+++ b/trunk/drivers/scsi/qla1280.c
@@ -192,7 +192,7 @@
- Don't walk the entire list in qla1280_putq_t() just to directly
grab the pointer to the last element afterwards
Rev 3.23.5 Beta August 9, 2001, Jes Sorensen
- - Don't use IRQF_DISABLED, it's use is deprecated for this kinda driver
+ - Don't use SA_INTERRUPT, it's use is deprecated for this kinda driver
Rev 3.23.4 Beta August 8, 2001, Jes Sorensen
- Set dev->max_sectors to 1024
Rev 3.23.3 Beta August 6, 2001, Jes Sorensen
@@ -4369,7 +4369,7 @@ qla1280_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
/* Disable ISP interrupts. */
qla1280_disable_intrs(ha);
- if (request_irq(pdev->irq, qla1280_intr_handler, IRQF_SHARED,
+ if (request_irq(pdev->irq, qla1280_intr_handler, SA_SHIRQ,
"qla1280", ha)) {
printk("qla1280 : Failed to reserve interrupt %d already "
"in use\n", pdev->irq);
diff --git a/trunk/drivers/scsi/qla2xxx/qla_os.c b/trunk/drivers/scsi/qla2xxx/qla_os.c
index 93062593ebe7..ccaad0b08d35 100644
--- a/trunk/drivers/scsi/qla2xxx/qla_os.c
+++ b/trunk/drivers/scsi/qla2xxx/qla_os.c
@@ -1541,7 +1541,7 @@ static int qla2x00_probe_one(struct pci_dev *pdev)
host->transportt = qla2xxx_transport_template;
ret = request_irq(pdev->irq, ha->isp_ops.intr_handler,
- IRQF_DISABLED|IRQF_SHARED, QLA2XXX_DRIVER_NAME, ha);
+ SA_INTERRUPT|SA_SHIRQ, QLA2XXX_DRIVER_NAME, ha);
if (ret) {
qla_printk(KERN_WARNING, ha,
"Failed to reserve interrupt %d already in use.\n",
diff --git a/trunk/drivers/scsi/qlogicpti.c b/trunk/drivers/scsi/qlogicpti.c
index 69e0551a81d2..329ead263714 100644
--- a/trunk/drivers/scsi/qlogicpti.c
+++ b/trunk/drivers/scsi/qlogicpti.c
@@ -718,7 +718,7 @@ static int __init qpti_register_irq(struct qlogicpti *qpti)
* sanely maintain.
*/
if (request_irq(qpti->irq, qpti_intr,
- IRQF_SHARED, "Qlogic/PTI", qpti))
+ SA_SHIRQ, "Qlogic/PTI", qpti))
goto fail;
printk("qpti%d: IRQ %d ", qpti->qpti_id, qpti->irq);
diff --git a/trunk/drivers/scsi/sata_mv.c b/trunk/drivers/scsi/sata_mv.c
index 1053c7c76b7d..4a71578df3c1 100644
--- a/trunk/drivers/scsi/sata_mv.c
+++ b/trunk/drivers/scsi/sata_mv.c
@@ -2395,7 +2395,7 @@ static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
probe_ent->port_ops = mv_port_info[board_idx].port_ops;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
probe_ent->private_data = hpriv;
diff --git a/trunk/drivers/scsi/sata_promise.c b/trunk/drivers/scsi/sata_promise.c
index 64631bd38952..b2b6ed5216e0 100644
--- a/trunk/drivers/scsi/sata_promise.c
+++ b/trunk/drivers/scsi/sata_promise.c
@@ -743,7 +743,7 @@ static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *e
probe_ent->port_ops = pdc_port_info[board_idx].port_ops;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
pdc_ata_setup_port(&probe_ent->port[0], base + 0x200);
diff --git a/trunk/drivers/scsi/sata_qstor.c b/trunk/drivers/scsi/sata_qstor.c
index d374c1db0cf3..98ddc25655f0 100644
--- a/trunk/drivers/scsi/sata_qstor.c
+++ b/trunk/drivers/scsi/sata_qstor.c
@@ -680,7 +680,7 @@ static int qs_ata_init_one(struct pci_dev *pdev,
probe_ent->port_ops = qs_port_info[board_idx].port_ops;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
probe_ent->n_ports = QS_PORTS;
diff --git a/trunk/drivers/scsi/sata_sil.c b/trunk/drivers/scsi/sata_sil.c
index 7aabb45c35e5..51d86d750e84 100644
--- a/trunk/drivers/scsi/sata_sil.c
+++ b/trunk/drivers/scsi/sata_sil.c
@@ -608,7 +608,7 @@ static int sil_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
probe_ent->mwdma_mask = sil_port_info[ent->driver_data].mwdma_mask;
probe_ent->udma_mask = sil_port_info[ent->driver_data].udma_mask;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->host_flags = sil_port_info[ent->driver_data].host_flags;
mmio_base = pci_iomap(pdev, 5, 0);
diff --git a/trunk/drivers/scsi/sata_sil24.c b/trunk/drivers/scsi/sata_sil24.c
index 07a1c6a8a414..b5f8fa955679 100644
--- a/trunk/drivers/scsi/sata_sil24.c
+++ b/trunk/drivers/scsi/sata_sil24.c
@@ -1041,7 +1041,7 @@ static int sil24_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
probe_ent->n_ports = SIL24_FLAG2NPORTS(pinfo->host_flags);
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = port_base;
probe_ent->private_data = hpriv;
diff --git a/trunk/drivers/scsi/sata_svw.c b/trunk/drivers/scsi/sata_svw.c
index 7d0858095e1f..a958b45e597c 100644
--- a/trunk/drivers/scsi/sata_svw.c
+++ b/trunk/drivers/scsi/sata_svw.c
@@ -428,7 +428,7 @@ static int k2_sata_init_one (struct pci_dev *pdev, const struct pci_device_id *e
probe_ent->port_ops = &k2_sata_ops;
probe_ent->n_ports = 4;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
/* We don't care much about the PIO/UDMA masks, but the core won't like us
diff --git a/trunk/drivers/scsi/sata_sx4.c b/trunk/drivers/scsi/sata_sx4.c
index ccc8cad24f7d..7f864410f7c2 100644
--- a/trunk/drivers/scsi/sata_sx4.c
+++ b/trunk/drivers/scsi/sata_sx4.c
@@ -1436,7 +1436,7 @@ static int pdc_sata_init_one (struct pci_dev *pdev, const struct pci_device_id *
probe_ent->port_ops = pdc_port_info[board_idx].port_ops;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
probe_ent->private_data = hpriv;
diff --git a/trunk/drivers/scsi/sata_via.c b/trunk/drivers/scsi/sata_via.c
index 03baec2191bf..501ce1791782 100644
--- a/trunk/drivers/scsi/sata_via.c
+++ b/trunk/drivers/scsi/sata_via.c
@@ -242,7 +242,7 @@ static struct ata_probe_ent *vt6421_init_probe_ent(struct pci_dev *pdev)
probe_ent->port_ops = &svia_sata_ops;
probe_ent->n_ports = N_PORTS;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->pio_mask = 0x1f;
probe_ent->mwdma_mask = 0x07;
probe_ent->udma_mask = 0x7f;
diff --git a/trunk/drivers/scsi/sata_vsc.c b/trunk/drivers/scsi/sata_vsc.c
index 916fe6fba756..616fd9634b4b 100644
--- a/trunk/drivers/scsi/sata_vsc.c
+++ b/trunk/drivers/scsi/sata_vsc.c
@@ -400,7 +400,7 @@ static int __devinit vsc_sata_init_one (struct pci_dev *pdev, const struct pci_d
probe_ent->port_ops = &vsc_sata_ops;
probe_ent->n_ports = 4;
probe_ent->irq = pdev->irq;
- probe_ent->irq_flags = IRQF_SHARED;
+ probe_ent->irq_flags = SA_SHIRQ;
probe_ent->mmio_base = mmio_base;
/* We don't care much about the PIO/UDMA masks, but the core won't like us
diff --git a/trunk/drivers/scsi/seagate.c b/trunk/drivers/scsi/seagate.c
index 3f312a84c6a7..7fa4da4ea64f 100644
--- a/trunk/drivers/scsi/seagate.c
+++ b/trunk/drivers/scsi/seagate.c
@@ -497,7 +497,7 @@ int __init seagate_st0x_detect (struct scsi_host_template * tpnt)
return 0;
hostno = instance->host_no;
- if (request_irq (irq, do_seagate_reconnect_intr, IRQF_DISABLED, (controller_type == SEAGATE) ? "seagate" : "tmc-8xx", instance)) {
+ if (request_irq (irq, do_seagate_reconnect_intr, SA_INTERRUPT, (controller_type == SEAGATE) ? "seagate" : "tmc-8xx", instance)) {
printk(KERN_ERR "scsi%d : unable to allocate IRQ%d\n", hostno, irq);
return 0;
}
diff --git a/trunk/drivers/scsi/sim710.c b/trunk/drivers/scsi/sim710.c
index b27e85428daa..2b2789345c13 100644
--- a/trunk/drivers/scsi/sim710.c
+++ b/trunk/drivers/scsi/sim710.c
@@ -133,7 +133,7 @@ sim710_probe_common(struct device *dev, unsigned long base_addr,
host->this_id = scsi_id;
host->base = base_addr;
host->irq = irq;
- if (request_irq(irq, NCR_700_intr, IRQF_SHARED, "sim710", host)) {
+ if (request_irq(irq, NCR_700_intr, SA_SHIRQ, "sim710", host)) {
printk(KERN_ERR "sim710: request_irq failed\n");
goto out_put_host;
}
diff --git a/trunk/drivers/scsi/sun3x_esp.c b/trunk/drivers/scsi/sun3x_esp.c
index 1f328cae5c05..2e2c1eb15636 100644
--- a/trunk/drivers/scsi/sun3x_esp.c
+++ b/trunk/drivers/scsi/sun3x_esp.c
@@ -97,7 +97,7 @@ int sun3x_esp_detect(struct scsi_host_template *tpnt)
esp->esp_command_dvma = dvma_vtob((unsigned long)esp->esp_command);
esp->irq = 2;
- if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
+ if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
"SUN3X SCSI", esp->ehost)) {
esp_deallocate(esp);
return 0;
diff --git a/trunk/drivers/scsi/sym53c8xx_2/sym_glue.c b/trunk/drivers/scsi/sym53c8xx_2/sym_glue.c
index 8c505076c0eb..ea82d3df63af 100644
--- a/trunk/drivers/scsi/sym53c8xx_2/sym_glue.c
+++ b/trunk/drivers/scsi/sym53c8xx_2/sym_glue.c
@@ -1547,7 +1547,7 @@ static struct Scsi_Host * __devinit sym_attach(struct scsi_host_template *tpnt,
* If we synchonize the C code with SCRIPTS on interrupt,
* we do not want to share the INTR line at all.
*/
- if (request_irq(pdev->irq, sym53c8xx_intr, IRQF_SHARED, NAME53C8XX, np)) {
+ if (request_irq(pdev->irq, sym53c8xx_intr, SA_SHIRQ, NAME53C8XX, np)) {
printf_err("%s: request irq %d failure\n",
sym_name(np), pdev->irq);
goto attach_failed;
diff --git a/trunk/drivers/scsi/t128.c b/trunk/drivers/scsi/t128.c
index 2df6747cb76f..a24f661b0270 100644
--- a/trunk/drivers/scsi/t128.c
+++ b/trunk/drivers/scsi/t128.c
@@ -260,7 +260,7 @@ int __init t128_detect(struct scsi_host_template * tpnt){
instance->irq = NCR5380_probe_irq(instance, T128_IRQS);
if (instance->irq != SCSI_IRQ_NONE)
- if (request_irq(instance->irq, t128_intr, IRQF_DISABLED, "t128", instance)) {
+ if (request_irq(instance->irq, t128_intr, SA_INTERRUPT, "t128", instance)) {
printk("scsi%d : IRQ%d not free, interrupts disabled\n",
instance->host_no, instance->irq);
instance->irq = SCSI_IRQ_NONE;
diff --git a/trunk/drivers/scsi/tmscsim.c b/trunk/drivers/scsi/tmscsim.c
index 9404ff3d4c79..7540f6a7529f 100644
--- a/trunk/drivers/scsi/tmscsim.c
+++ b/trunk/drivers/scsi/tmscsim.c
@@ -2584,7 +2584,7 @@ static int __devinit dc390_probe_one(struct pci_dev *pdev,
/* Reset Pending INT */
DC390_read8_(INT_Status, io_port);
- if (request_irq(pdev->irq, do_DC390_Interrupt, IRQF_SHARED,
+ if (request_irq(pdev->irq, do_DC390_Interrupt, SA_SHIRQ,
"tmscsim", pACB)) {
printk(KERN_ERR "DC390: register IRQ error!\n");
goto out_release_region;
diff --git a/trunk/drivers/scsi/u14-34f.c b/trunk/drivers/scsi/u14-34f.c
index 57449611e714..35c043e38ed4 100644
--- a/trunk/drivers/scsi/u14-34f.c
+++ b/trunk/drivers/scsi/u14-34f.c
@@ -872,7 +872,7 @@ static int port_detect \
/* Board detected, allocate its IRQ */
if (request_irq(irq, do_interrupt_handler,
- IRQF_DISABLED | ((subversion == ESA) ? IRQF_SHARED : 0),
+ SA_INTERRUPT | ((subversion == ESA) ? SA_SHIRQ : 0),
driver_name, (void *) &sha[j])) {
printk("%s: unable to allocate IRQ %u, detaching.\n", name, irq);
goto freelock;
diff --git a/trunk/drivers/scsi/wd7000.c b/trunk/drivers/scsi/wd7000.c
index a0b61af48f1c..574955b78a24 100644
--- a/trunk/drivers/scsi/wd7000.c
+++ b/trunk/drivers/scsi/wd7000.c
@@ -1250,7 +1250,7 @@ static int wd7000_init(Adapter * host)
return 0;
- if (request_irq(host->irq, wd7000_intr, IRQF_DISABLED, "wd7000", host)) {
+ if (request_irq(host->irq, wd7000_intr, SA_INTERRUPT, "wd7000", host)) {
printk("wd7000_init: can't get IRQ %d.\n", host->irq);
return (0);
}
diff --git a/trunk/drivers/scsi/zalon.c b/trunk/drivers/scsi/zalon.c
index 4b5f908d35c3..a6cfbb3b361c 100644
--- a/trunk/drivers/scsi/zalon.c
+++ b/trunk/drivers/scsi/zalon.c
@@ -136,7 +136,7 @@ zalon_probe(struct parisc_device *dev)
if (!host)
goto fail;
- if (request_irq(dev->irq, ncr53c8xx_intr, IRQF_SHARED, "zalon", host)) {
+ if (request_irq(dev->irq, ncr53c8xx_intr, SA_SHIRQ, "zalon", host)) {
printk(KERN_ERR "%s: irq problem with %d, detaching\n ",
dev->dev.bus_id, dev->irq);
goto fail;
diff --git a/trunk/drivers/serial/8250.c b/trunk/drivers/serial/8250.c
index 0995430e4cf1..9c5d36f50140 100644
--- a/trunk/drivers/serial/8250.c
+++ b/trunk/drivers/serial/8250.c
@@ -48,7 +48,7 @@
/*
* Configuration:
- * share_irqs - whether we pass IRQF_SHARED to request_irq(). This option
+ * share_irqs - whether we pass SA_SHIRQ to request_irq(). This option
* is unsafe when used on edge-triggered interrupts.
*/
static unsigned int share_irqs = SERIAL8250_SHARE_IRQS;
@@ -1400,7 +1400,7 @@ static void serial_do_unlink(struct irq_info *i, struct uart_8250_port *up)
static int serial_link_irq_chain(struct uart_8250_port *up)
{
struct irq_info *i = irq_lists + up->port.irq;
- int ret, irq_flags = up->port.flags & UPF_SHARE_IRQ ? IRQF_SHARED : 0;
+ int ret, irq_flags = up->port.flags & UPF_SHARE_IRQ ? SA_SHIRQ : 0;
spin_lock_irq(&i->lock);
diff --git a/trunk/drivers/serial/at91_serial.c b/trunk/drivers/serial/at91_serial.c
index a7d664383dae..7b3b3f3d5101 100644
--- a/trunk/drivers/serial/at91_serial.c
+++ b/trunk/drivers/serial/at91_serial.c
@@ -387,7 +387,7 @@ static int at91_startup(struct uart_port *port)
/*
* Allocate the IRQ
*/
- retval = request_irq(port->irq, at91_interrupt, IRQF_SHARED, "at91_serial", port);
+ retval = request_irq(port->irq, at91_interrupt, SA_SHIRQ, "at91_serial", port);
if (retval) {
printk("at91_serial: at91_startup - Can't get irq\n");
return retval;
diff --git a/trunk/drivers/serial/crisv10.c b/trunk/drivers/serial/crisv10.c
index cabd048c8636..901be3483455 100644
--- a/trunk/drivers/serial/crisv10.c
+++ b/trunk/drivers/serial/crisv10.c
@@ -415,7 +415,7 @@
* Fixed DEF_TX value that caused the serial transmitter pin (txd) to go to 0 when
* closing the last filehandle, NASTY!.
* Added break generation, not tested though!
- * Use IRQF_SHARED when request_irq() for ser2 and ser3 (shared with) par0 and par1.
+ * Use SA_SHIRQ when request_irq() for ser2 and ser3 (shared with) par0 and par1.
* You can't use them at the same time (yet..), but you can hopefully switch
* between ser2/par0, ser3/par1 with the same kernel config.
* Replaced some magic constants with defines
@@ -4942,55 +4942,55 @@ rs_init(void)
/* Not needed in simulator. May only complicate stuff. */
/* hook the irq's for DMA channel 6 and 7, serial output and input, and some more... */
- if (request_irq(SERIAL_IRQ_NBR, ser_interrupt, IRQF_SHARED | IRQF_DISABLED, "serial ", NULL))
+ if (request_irq(SERIAL_IRQ_NBR, ser_interrupt, SA_SHIRQ | SA_INTERRUPT, "serial ", NULL))
panic("irq8");
#ifdef CONFIG_ETRAX_SERIAL_PORT0
#ifdef CONFIG_ETRAX_SERIAL_PORT0_DMA6_OUT
- if (request_irq(SER0_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_DISABLED, "serial 0 dma tr", NULL))
+ if (request_irq(SER0_DMA_TX_IRQ_NBR, tr_interrupt, SA_INTERRUPT, "serial 0 dma tr", NULL))
panic("irq22");
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT0_DMA7_IN
- if (request_irq(SER0_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_DISABLED, "serial 0 dma rec", NULL))
+ if (request_irq(SER0_DMA_RX_IRQ_NBR, rec_interrupt, SA_INTERRUPT, "serial 0 dma rec", NULL))
panic("irq23");
#endif
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT1
#ifdef CONFIG_ETRAX_SERIAL_PORT1_DMA8_OUT
- if (request_irq(SER1_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_DISABLED, "serial 1 dma tr", NULL))
+ if (request_irq(SER1_DMA_TX_IRQ_NBR, tr_interrupt, SA_INTERRUPT, "serial 1 dma tr", NULL))
panic("irq24");
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT1_DMA9_IN
- if (request_irq(SER1_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_DISABLED, "serial 1 dma rec", NULL))
+ if (request_irq(SER1_DMA_RX_IRQ_NBR, rec_interrupt, SA_INTERRUPT, "serial 1 dma rec", NULL))
panic("irq25");
#endif
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT2
/* DMA Shared with par0 (and SCSI0 and ATA) */
#ifdef CONFIG_ETRAX_SERIAL_PORT2_DMA2_OUT
- if (request_irq(SER2_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_SHARED | IRQF_DISABLED, "serial 2 dma tr", NULL))
+ if (request_irq(SER2_DMA_TX_IRQ_NBR, tr_interrupt, SA_SHIRQ | SA_INTERRUPT, "serial 2 dma tr", NULL))
panic("irq18");
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT2_DMA3_IN
- if (request_irq(SER2_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_SHARED | IRQF_DISABLED, "serial 2 dma rec", NULL))
+ if (request_irq(SER2_DMA_RX_IRQ_NBR, rec_interrupt, SA_SHIRQ | SA_INTERRUPT, "serial 2 dma rec", NULL))
panic("irq19");
#endif
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT3
/* DMA Shared with par1 (and SCSI1 and Extern DMA 0) */
#ifdef CONFIG_ETRAX_SERIAL_PORT3_DMA4_OUT
- if (request_irq(SER3_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_SHARED | IRQF_DISABLED, "serial 3 dma tr", NULL))
+ if (request_irq(SER3_DMA_TX_IRQ_NBR, tr_interrupt, SA_SHIRQ | SA_INTERRUPT, "serial 3 dma tr", NULL))
panic("irq20");
#endif
#ifdef CONFIG_ETRAX_SERIAL_PORT3_DMA5_IN
- if (request_irq(SER3_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_SHARED | IRQF_DISABLED, "serial 3 dma rec", NULL))
+ if (request_irq(SER3_DMA_RX_IRQ_NBR, rec_interrupt, SA_SHIRQ | SA_INTERRUPT, "serial 3 dma rec", NULL))
panic("irq21");
#endif
#endif
#ifdef CONFIG_ETRAX_SERIAL_FLUSH_DMA_FAST
- if (request_irq(TIMER1_IRQ_NBR, timeout_interrupt, IRQF_SHARED | IRQF_DISABLED,
+ if (request_irq(TIMER1_IRQ_NBR, timeout_interrupt, SA_SHIRQ | SA_INTERRUPT,
"fast serial dma timeout", NULL)) {
printk(KERN_CRIT "err: timer1 irq\n");
}
diff --git a/trunk/drivers/serial/dz.c b/trunk/drivers/serial/dz.c
index d119c8296a78..ecf824bd2d4e 100644
--- a/trunk/drivers/serial/dz.c
+++ b/trunk/drivers/serial/dz.c
@@ -797,7 +797,7 @@ int __init dz_init(void)
restore_flags(flags);
if (request_irq(dz_ports[0].port.irq, dz_interrupt,
- IRQF_DISABLED, "DZ", &dz_ports[0]))
+ SA_INTERRUPT, "DZ", &dz_ports[0]))
panic("Unable to register DZ interrupt");
ret = uart_register_driver(&dz_reg);
diff --git a/trunk/drivers/serial/icom.c b/trunk/drivers/serial/icom.c
index a3c00a252149..ad1e753cbc53 100644
--- a/trunk/drivers/serial/icom.c
+++ b/trunk/drivers/serial/icom.c
@@ -1563,7 +1563,7 @@ static int __devinit icom_probe(struct pci_dev *dev,
/* save off irq and request irq line */
if ( (retval = request_irq(dev->irq, icom_interrupt,
- IRQF_DISABLED | IRQF_SHARED, ICOM_DRIVER_NAME,
+ SA_INTERRUPT | SA_SHIRQ, ICOM_DRIVER_NAME,
(void *) icom_adapter))) {
goto probe_exit2;
}
diff --git a/trunk/drivers/serial/imx.c b/trunk/drivers/serial/imx.c
index 4a142d6b8f38..0b5f39d038b9 100644
--- a/trunk/drivers/serial/imx.c
+++ b/trunk/drivers/serial/imx.c
@@ -404,7 +404,7 @@ static int imx_startup(struct uart_port *port)
if (retval) goto error_out2;
retval = request_irq(sport->rtsirq, imx_rtsint,
- IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
+ SA_TRIGGER_FALLING | SA_TRIGGER_RISING,
DRIVER_NAME, sport);
if (retval) goto error_out3;
diff --git a/trunk/drivers/serial/ioc4_serial.c b/trunk/drivers/serial/ioc4_serial.c
index 576ca1eaa2b6..717e47bbd784 100644
--- a/trunk/drivers/serial/ioc4_serial.c
+++ b/trunk/drivers/serial/ioc4_serial.c
@@ -2855,7 +2855,7 @@ ioc4_serial_attach_one(struct ioc4_driver_data *idd)
control->ic_soft = soft;
/* Hook up interrupt handler */
- if (!request_irq(idd->idd_pdev->irq, ioc4_intr, IRQF_SHARED,
+ if (!request_irq(idd->idd_pdev->irq, ioc4_intr, SA_SHIRQ,
"sgi-ioc4serial", soft)) {
control->ic_irq = idd->idd_pdev->irq;
} else {
diff --git a/trunk/drivers/serial/jsm/jsm_driver.c b/trunk/drivers/serial/jsm/jsm_driver.c
index 244f63be3a03..b3e1f71be4da 100644
--- a/trunk/drivers/serial/jsm/jsm_driver.c
+++ b/trunk/drivers/serial/jsm/jsm_driver.c
@@ -121,7 +121,7 @@ static int jsm_probe_one(struct pci_dev *pdev, const struct pci_device_id *ent)
}
rc = request_irq(brd->irq, brd->bd_ops->intr,
- IRQF_DISABLED|IRQF_SHARED, "JSM", brd);
+ SA_INTERRUPT|SA_SHIRQ, "JSM", brd);
if (rc) {
printk(KERN_WARNING "Failed to hook IRQ %d\n",brd->irq);
goto out_iounmap;
diff --git a/trunk/drivers/serial/m32r_sio.c b/trunk/drivers/serial/m32r_sio.c
index e7fe4bb46eca..fbaae96f4c93 100644
--- a/trunk/drivers/serial/m32r_sio.c
+++ b/trunk/drivers/serial/m32r_sio.c
@@ -542,7 +542,7 @@ static void serial_do_unlink(struct irq_info *i, struct uart_sio_port *up)
static int serial_link_irq_chain(struct uart_sio_port *up)
{
struct irq_info *i = irq_lists + up->port.irq;
- int ret, irq_flags = up->port.flags & UPF_SHARE_IRQ ? IRQF_SHARED : 0;
+ int ret, irq_flags = up->port.flags & UPF_SHARE_IRQ ? SA_SHIRQ : 0;
spin_lock_irq(&i->lock);
diff --git a/trunk/drivers/serial/mcfserial.c b/trunk/drivers/serial/mcfserial.c
index 832abd3c4706..29c0630e3e64 100644
--- a/trunk/drivers/serial/mcfserial.c
+++ b/trunk/drivers/serial/mcfserial.c
@@ -1596,7 +1596,7 @@ static void mcfrs_irqinit(struct mcf_serial *info)
/* Clear mask, so no surprise interrupts. */
uartp[MCFUART_UIMR] = 0;
- if (request_irq(info->irq, mcfrs_interrupt, IRQF_DISABLED,
+ if (request_irq(info->irq, mcfrs_interrupt, SA_INTERRUPT,
"ColdFire UART", NULL)) {
printk("MCFRS: Unable to attach ColdFire UART %d interrupt "
"vector=%d\n", info->line, info->irq);
diff --git a/trunk/drivers/serial/mpc52xx_uart.c b/trunk/drivers/serial/mpc52xx_uart.c
index 48eb22d3a63e..1b8e554f674f 100644
--- a/trunk/drivers/serial/mpc52xx_uart.c
+++ b/trunk/drivers/serial/mpc52xx_uart.c
@@ -190,7 +190,7 @@ mpc52xx_uart_startup(struct uart_port *port)
/* Request IRQ */
ret = request_irq(port->irq, mpc52xx_uart_int,
- IRQF_DISABLED | IRQF_SAMPLE_RANDOM, "mpc52xx_psc_uart", port);
+ SA_INTERRUPT | SA_SAMPLE_RANDOM, "mpc52xx_psc_uart", port);
if (ret)
return ret;
diff --git a/trunk/drivers/serial/mpsc.c b/trunk/drivers/serial/mpsc.c
index 63d2a66e563b..8c498f785e21 100644
--- a/trunk/drivers/serial/mpsc.c
+++ b/trunk/drivers/serial/mpsc.c
@@ -1412,7 +1412,7 @@ mpsc_startup(struct uart_port *port)
/* If irq's are shared, need to set flag */
if (mpsc_ports[0].port.irq == mpsc_ports[1].port.irq)
- flag = IRQF_SHARED;
+ flag = SA_SHIRQ;
if (request_irq(pi->port.irq, mpsc_sdma_intr, flag,
"mpsc-sdma", pi))
diff --git a/trunk/drivers/serial/pmac_zilog.c b/trunk/drivers/serial/pmac_zilog.c
index 459c0231aef3..4d9435451f4a 100644
--- a/trunk/drivers/serial/pmac_zilog.c
+++ b/trunk/drivers/serial/pmac_zilog.c
@@ -934,7 +934,7 @@ static int pmz_startup(struct uart_port *port)
}
pmz_get_port_A(uap)->flags |= PMACZILOG_FLAG_IS_IRQ_ON;
- if (request_irq(uap->port.irq, pmz_interrupt, IRQF_SHARED, "PowerMac Zilog", uap)) {
+ if (request_irq(uap->port.irq, pmz_interrupt, SA_SHIRQ, "PowerMac Zilog", uap)) {
dev_err(&uap->dev->ofdev.dev,
"Unable to register zs interrupt handler.\n");
pmz_set_scc_power(uap, 0);
diff --git a/trunk/drivers/serial/serial_txx9.c b/trunk/drivers/serial/serial_txx9.c
index b361669f85a1..28c1881a6691 100644
--- a/trunk/drivers/serial/serial_txx9.c
+++ b/trunk/drivers/serial/serial_txx9.c
@@ -495,7 +495,7 @@ static int serial_txx9_startup(struct uart_port *port)
sio_out(up, TXX9_SIDISR, 0);
retval = request_irq(up->port.irq, serial_txx9_interrupt,
- IRQF_SHARED, "serial_txx9", up);
+ SA_SHIRQ, "serial_txx9", up);
if (retval)
return retval;
diff --git a/trunk/drivers/serial/sh-sci.c b/trunk/drivers/serial/sh-sci.c
index 301573373c30..2509c3237e87 100644
--- a/trunk/drivers/serial/sh-sci.c
+++ b/trunk/drivers/serial/sh-sci.c
@@ -841,7 +841,7 @@ static int sci_request_irq(struct sci_port *port)
printk(KERN_ERR "sci: Cannot allocate irq.(IRQ=0)\n");
return -ENODEV;
}
- if (request_irq(port->irqs[0], sci_mpxed_interrupt, IRQF_DISABLED,
+ if (request_irq(port->irqs[0], sci_mpxed_interrupt, SA_INTERRUPT,
"sci", port)) {
printk(KERN_ERR "sci: Cannot allocate irq.\n");
return -ENODEV;
@@ -850,7 +850,7 @@ static int sci_request_irq(struct sci_port *port)
for (i = 0; i < ARRAY_SIZE(handlers); i++) {
if (!port->irqs[i])
continue;
- if (request_irq(port->irqs[i], handlers[i], IRQF_DISABLED,
+ if (request_irq(port->irqs[i], handlers[i], SA_INTERRUPT,
desc[i], port)) {
printk(KERN_ERR "sci: Cannot allocate irq.\n");
return -ENODEV;
diff --git a/trunk/drivers/serial/sn_console.c b/trunk/drivers/serial/sn_console.c
index 2f148e5b9255..4b0afc8f12b9 100644
--- a/trunk/drivers/serial/sn_console.c
+++ b/trunk/drivers/serial/sn_console.c
@@ -648,7 +648,7 @@ static irqreturn_t sn_sal_interrupt(int irq, void *dev_id, struct pt_regs *regs)
static int sn_sal_connect_interrupt(struct sn_cons_port *port)
{
if (request_irq(SGI_UART_VECTOR, sn_sal_interrupt,
- IRQF_DISABLED | IRQF_SHARED,
+ SA_INTERRUPT | SA_SHIRQ,
"SAL console driver", port) >= 0) {
return SGI_UART_VECTOR;
}
diff --git a/trunk/drivers/serial/sunsab.c b/trunk/drivers/serial/sunsab.c
index 0dbd4df44c05..20a48697727c 100644
--- a/trunk/drivers/serial/sunsab.c
+++ b/trunk/drivers/serial/sunsab.c
@@ -1027,7 +1027,7 @@ static int __devinit sunsab_init_one(struct uart_sunsab_port *up,
int err;
err = request_irq(up->port.irq, sunsab_interrupt,
- IRQF_SHARED, "sab", up);
+ SA_SHIRQ, "sab", up);
if (err) {
of_iounmap(up->port.membase,
sizeof(union sab82532_async_regs));
diff --git a/trunk/drivers/serial/sunsu.c b/trunk/drivers/serial/sunsu.c
index f9013baba05b..eabf477fee95 100644
--- a/trunk/drivers/serial/sunsu.c
+++ b/trunk/drivers/serial/sunsu.c
@@ -667,10 +667,10 @@ static int sunsu_startup(struct uart_port *port)
if (up->su_type != SU_PORT_PORT) {
retval = request_irq(up->port.irq, sunsu_kbd_ms_interrupt,
- IRQF_SHARED, su_typev[up->su_type], up);
+ SA_SHIRQ, su_typev[up->su_type], up);
} else {
retval = request_irq(up->port.irq, sunsu_serial_interrupt,
- IRQF_SHARED, su_typev[up->su_type], up);
+ SA_SHIRQ, su_typev[up->su_type], up);
}
if (retval) {
printk("su: Cannot register IRQ %d\n", up->port.irq);
diff --git a/trunk/drivers/serial/sunzilog.c b/trunk/drivers/serial/sunzilog.c
index a1456d9352cb..9ee7f3af9ae2 100644
--- a/trunk/drivers/serial/sunzilog.c
+++ b/trunk/drivers/serial/sunzilog.c
@@ -1354,7 +1354,7 @@ static int __devinit zs_probe(struct of_device *dev, const struct of_device_id *
if (zilog_irq == -1) {
zilog_irq = op->irqs[0];
- err = request_irq(zilog_irq, sunzilog_interrupt, IRQF_SHARED,
+ err = request_irq(zilog_irq, sunzilog_interrupt, SA_SHIRQ,
"zs", sunzilog_irq_chain);
if (err) {
of_iounmap(rp, sizeof(struct zilog_layout));
diff --git a/trunk/drivers/serial/v850e_uart.c b/trunk/drivers/serial/v850e_uart.c
index f802867c95c5..a0da2aaf71c4 100644
--- a/trunk/drivers/serial/v850e_uart.c
+++ b/trunk/drivers/serial/v850e_uart.c
@@ -372,13 +372,13 @@ static int v850e_uart_startup (struct uart_port *port)
/* Alloc RX irq. */
err = request_irq (V850E_UART_RX_IRQ (port->line), v850e_uart_rx_irq,
- IRQF_DISABLED, "v850e_uart", port);
+ SA_INTERRUPT, "v850e_uart", port);
if (err)
return err;
/* Alloc TX irq. */
err = request_irq (V850E_UART_TX_IRQ (port->line), v850e_uart_tx_irq,
- IRQF_DISABLED, "v850e_uart", port);
+ SA_INTERRUPT, "v850e_uart", port);
if (err) {
free_irq (V850E_UART_RX_IRQ (port->line), port);
return err;
diff --git a/trunk/drivers/sn/ioc3.c b/trunk/drivers/sn/ioc3.c
index 6c7e0352d561..0040f10c9e39 100644
--- a/trunk/drivers/sn/ioc3.c
+++ b/trunk/drivers/sn/ioc3.c
@@ -706,7 +706,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
writel(~0, &idd->vma->eisr);
idd->dual_irq = 1;
- if (!request_irq(pdev->irq, ioc3_intr_eth, IRQF_SHARED,
+ if (!request_irq(pdev->irq, ioc3_intr_eth, SA_SHIRQ,
"ioc3-eth", (void *)idd)) {
idd->irq_eth = pdev->irq;
} else {
@@ -714,7 +714,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
"%s : request_irq fails for IRQ 0x%x\n ",
__FUNCTION__, pdev->irq);
}
- if (!request_irq(pdev->irq+2, ioc3_intr_io, IRQF_SHARED,
+ if (!request_irq(pdev->irq+2, ioc3_intr_io, SA_SHIRQ,
"ioc3-io", (void *)idd)) {
idd->irq_io = pdev->irq+2;
} else {
@@ -723,7 +723,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
__FUNCTION__, pdev->irq+2);
}
} else {
- if (!request_irq(pdev->irq, ioc3_intr_io, IRQF_SHARED,
+ if (!request_irq(pdev->irq, ioc3_intr_io, SA_SHIRQ,
"ioc3", (void *)idd)) {
idd->irq_io = pdev->irq;
} else {
diff --git a/trunk/drivers/tc/zs.c b/trunk/drivers/tc/zs.c
index 5e8a27620f6f..93bc90b8ff92 100644
--- a/trunk/drivers/tc/zs.c
+++ b/trunk/drivers/tc/zs.c
@@ -1791,7 +1791,7 @@ int __init zs_init(void)
zs_soft[channel].clk_divisor = 16;
zs_soft[channel].zs_baud = get_zsbaud(&zs_soft[channel]);
- if (request_irq(zs_soft[channel].irq, rs_interrupt, IRQF_SHARED,
+ if (request_irq(zs_soft[channel].irq, rs_interrupt, SA_SHIRQ,
"scc", &zs_soft[channel]))
printk(KERN_ERR "decserial: can't get irq %d\n",
zs_soft[channel].irq);
diff --git a/trunk/drivers/usb/core/hcd-pci.c b/trunk/drivers/usb/core/hcd-pci.c
index 5078fb3375e3..9d16716d166e 100644
--- a/trunk/drivers/usb/core/hcd-pci.c
+++ b/trunk/drivers/usb/core/hcd-pci.c
@@ -125,7 +125,7 @@ int usb_hcd_pci_probe (struct pci_dev *dev, const struct pci_device_id *id)
pci_set_master (dev);
- retval = usb_add_hcd (hcd, dev->irq, IRQF_SHARED);
+ retval = usb_add_hcd (hcd, dev->irq, SA_SHIRQ);
if (retval != 0)
goto err4;
return retval;
diff --git a/trunk/drivers/usb/gadget/at91_udc.c b/trunk/drivers/usb/gadget/at91_udc.c
index 1c459ff037ce..acb3c3d2e888 100644
--- a/trunk/drivers/usb/gadget/at91_udc.c
+++ b/trunk/drivers/usb/gadget/at91_udc.c
@@ -1653,13 +1653,13 @@ static int __devinit at91udc_probe(struct platform_device *pdev)
pullup(udc, 0);
/* request UDC and maybe VBUS irqs */
- if (request_irq(AT91_ID_UDP, at91_udc_irq, IRQF_DISABLED, driver_name, udc)) {
+ if (request_irq(AT91_ID_UDP, at91_udc_irq, SA_INTERRUPT, driver_name, udc)) {
DBG("request irq %d failed\n", AT91_ID_UDP);
retval = -EBUSY;
goto fail1;
}
if (udc->board.vbus_pin > 0) {
- if (request_irq(udc->board.vbus_pin, at91_vbus_irq, IRQF_DISABLED, driver_name, udc)) {
+ if (request_irq(udc->board.vbus_pin, at91_vbus_irq, SA_INTERRUPT, driver_name, udc)) {
DBG("request vbus irq %d failed\n", udc->board.vbus_pin);
free_irq(AT91_ID_UDP, udc);
retval = -EBUSY;
diff --git a/trunk/drivers/usb/gadget/goku_udc.c b/trunk/drivers/usb/gadget/goku_udc.c
index 7cf2999e8616..3f827ded8cdf 100644
--- a/trunk/drivers/usb/gadget/goku_udc.c
+++ b/trunk/drivers/usb/gadget/goku_udc.c
@@ -1916,7 +1916,7 @@ static int goku_probe(struct pci_dev *pdev, const struct pci_device_id *id)
/* init to known state, then setup irqs */
udc_reset(dev);
udc_reinit (dev);
- if (request_irq(pdev->irq, goku_irq, IRQF_SHARED/*|IRQF_SAMPLE_RANDOM*/,
+ if (request_irq(pdev->irq, goku_irq, SA_SHIRQ/*|SA_SAMPLE_RANDOM*/,
driver_name, dev) != 0) {
DBG(dev, "request interrupt %d failed\n", pdev->irq);
retval = -EBUSY;
diff --git a/trunk/drivers/usb/gadget/lh7a40x_udc.c b/trunk/drivers/usb/gadget/lh7a40x_udc.c
index bb22b7e82877..0d3424eda038 100644
--- a/trunk/drivers/usb/gadget/lh7a40x_udc.c
+++ b/trunk/drivers/usb/gadget/lh7a40x_udc.c
@@ -2107,7 +2107,7 @@ static int lh7a40x_udc_probe(struct platform_device *pdev)
/* irq setup after old hardware state is cleaned up */
retval =
- request_irq(IRQ_USBINTR, lh7a40x_udc_irq, IRQF_DISABLED, driver_name,
+ request_irq(IRQ_USBINTR, lh7a40x_udc_irq, SA_INTERRUPT, driver_name,
dev);
if (retval != 0) {
DEBUG(KERN_ERR "%s: can't get irq %i, err %d\n", driver_name,
diff --git a/trunk/drivers/usb/gadget/net2280.c b/trunk/drivers/usb/gadget/net2280.c
index 09243239d948..570996d7eb34 100644
--- a/trunk/drivers/usb/gadget/net2280.c
+++ b/trunk/drivers/usb/gadget/net2280.c
@@ -2895,7 +2895,7 @@ static int net2280_probe (struct pci_dev *pdev, const struct pci_device_id *id)
goto done;
}
- if (request_irq (pdev->irq, net2280_irq, IRQF_SHARED, driver_name, dev)
+ if (request_irq (pdev->irq, net2280_irq, SA_SHIRQ, driver_name, dev)
!= 0) {
ERROR (dev, "request interrupt %d failed\n", pdev->irq);
retval = -EBUSY;
diff --git a/trunk/drivers/usb/gadget/omap_udc.c b/trunk/drivers/usb/gadget/omap_udc.c
index f28ebbc048d5..0d642ac70055 100644
--- a/trunk/drivers/usb/gadget/omap_udc.c
+++ b/trunk/drivers/usb/gadget/omap_udc.c
@@ -2818,7 +2818,7 @@ static int __init omap_udc_probe(struct platform_device *pdev)
/* USB general purpose IRQ: ep0, state changes, dma, etc */
status = request_irq(pdev->resource[1].start, omap_udc_irq,
- IRQF_SAMPLE_RANDOM, driver_name, udc);
+ SA_SAMPLE_RANDOM, driver_name, udc);
if (status != 0) {
ERR( "can't get irq %ld, err %d\n",
pdev->resource[1].start, status);
@@ -2827,7 +2827,7 @@ static int __init omap_udc_probe(struct platform_device *pdev)
/* USB "non-iso" IRQ (PIO for all but ep0) */
status = request_irq(pdev->resource[2].start, omap_udc_pio_irq,
- IRQF_SAMPLE_RANDOM, "omap_udc pio", udc);
+ SA_SAMPLE_RANDOM, "omap_udc pio", udc);
if (status != 0) {
ERR( "can't get irq %ld, err %d\n",
pdev->resource[2].start, status);
@@ -2835,7 +2835,7 @@ static int __init omap_udc_probe(struct platform_device *pdev)
}
#ifdef USE_ISO
status = request_irq(pdev->resource[3].start, omap_udc_iso_irq,
- IRQF_DISABLED, "omap_udc iso", udc);
+ SA_INTERRUPT, "omap_udc iso", udc);
if (status != 0) {
ERR("can't get irq %ld, err %d\n",
pdev->resource[3].start, status);
diff --git a/trunk/drivers/usb/gadget/pxa2xx_udc.c b/trunk/drivers/usb/gadget/pxa2xx_udc.c
index fff027d30a09..c88650dffdeb 100644
--- a/trunk/drivers/usb/gadget/pxa2xx_udc.c
+++ b/trunk/drivers/usb/gadget/pxa2xx_udc.c
@@ -2521,7 +2521,7 @@ static int __init pxa2xx_udc_probe(struct platform_device *pdev)
/* irq setup after old hardware state is cleaned up */
retval = request_irq(IRQ_USB, pxa2xx_udc_irq,
- IRQF_DISABLED, driver_name, dev);
+ SA_INTERRUPT, driver_name, dev);
if (retval != 0) {
printk(KERN_ERR "%s: can't get irq %i, err %d\n",
driver_name, IRQ_USB, retval);
@@ -2533,7 +2533,7 @@ static int __init pxa2xx_udc_probe(struct platform_device *pdev)
if (machine_is_lubbock()) {
retval = request_irq(LUBBOCK_USB_DISC_IRQ,
lubbock_vbus_irq,
- IRQF_DISABLED | IRQF_SAMPLE_RANDOM,
+ SA_INTERRUPT | SA_SAMPLE_RANDOM,
driver_name, dev);
if (retval != 0) {
printk(KERN_ERR "%s: can't get irq %i, err %d\n",
@@ -2544,7 +2544,7 @@ static int __init pxa2xx_udc_probe(struct platform_device *pdev)
}
retval = request_irq(LUBBOCK_USB_IRQ,
lubbock_vbus_irq,
- IRQF_DISABLED | IRQF_SAMPLE_RANDOM,
+ SA_INTERRUPT | SA_SAMPLE_RANDOM,
driver_name, dev);
if (retval != 0) {
printk(KERN_ERR "%s: can't get irq %i, err %d\n",
diff --git a/trunk/drivers/usb/host/ehci-au1xxx.c b/trunk/drivers/usb/host/ehci-au1xxx.c
index d66867aa527e..9b4697add313 100644
--- a/trunk/drivers/usb/host/ehci-au1xxx.c
+++ b/trunk/drivers/usb/host/ehci-au1xxx.c
@@ -148,7 +148,7 @@ int usb_ehci_au1xxx_probe(const struct hc_driver *driver,
/* ehci_hcd_init(hcd_to_ehci(hcd)); */
retval =
- usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED | IRQF_SHARED);
+ usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT | SA_SHIRQ);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ehci-fsl.c b/trunk/drivers/usb/host/ehci-fsl.c
index d030516edfb9..a49a689bf423 100644
--- a/trunk/drivers/usb/host/ehci-fsl.c
+++ b/trunk/drivers/usb/host/ehci-fsl.c
@@ -121,7 +121,7 @@ int usb_hcd_fsl_probe(const struct hc_driver *driver,
temp = in_le32(hcd->regs + 0x1a8);
out_le32(hcd->regs + 0x1a8, temp | 0x3);
- retval = usb_add_hcd(hcd, irq, IRQF_SHARED);
+ retval = usb_add_hcd(hcd, irq, SA_SHIRQ);
if (retval != 0)
goto err4;
return retval;
diff --git a/trunk/drivers/usb/host/isp116x-hcd.c b/trunk/drivers/usb/host/isp116x-hcd.c
index 5147ed4a6662..14386254c870 100644
--- a/trunk/drivers/usb/host/isp116x-hcd.c
+++ b/trunk/drivers/usb/host/isp116x-hcd.c
@@ -1653,7 +1653,7 @@ static int __init isp116x_probe(struct platform_device *pdev)
goto err6;
}
- ret = usb_add_hcd(hcd, irq, IRQF_DISABLED);
+ ret = usb_add_hcd(hcd, irq, SA_INTERRUPT);
if (ret)
goto err6;
diff --git a/trunk/drivers/usb/host/ohci-at91.c b/trunk/drivers/usb/host/ohci-at91.c
index cdbafb710000..6b7350b52419 100644
--- a/trunk/drivers/usb/host/ohci-at91.c
+++ b/trunk/drivers/usb/host/ohci-at91.c
@@ -125,7 +125,7 @@ int usb_hcd_at91_probe (const struct hc_driver *driver, struct platform_device *
at91_start_hc(pdev);
ohci_hcd_init(hcd_to_ohci(hcd));
- retval = usb_add_hcd(hcd, pdev->resource[1].start, IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, pdev->resource[1].start, SA_INTERRUPT);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ohci-au1xxx.c b/trunk/drivers/usb/host/ohci-au1xxx.c
index 689261e44018..a1c8b3b2fcc7 100644
--- a/trunk/drivers/usb/host/ohci-au1xxx.c
+++ b/trunk/drivers/usb/host/ohci-au1xxx.c
@@ -191,7 +191,7 @@ static int usb_ohci_au1xxx_probe(const struct hc_driver *driver,
au1xxx_start_ohc(dev);
ohci_hcd_init(hcd_to_ohci(hcd));
- retval = usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED | IRQF_SHARED);
+ retval = usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT | SA_SHIRQ);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ohci-lh7a404.c b/trunk/drivers/usb/host/ohci-lh7a404.c
index 5602da9bd52c..0020ed7a39d0 100644
--- a/trunk/drivers/usb/host/ohci-lh7a404.c
+++ b/trunk/drivers/usb/host/ohci-lh7a404.c
@@ -100,7 +100,7 @@ int usb_hcd_lh7a404_probe (const struct hc_driver *driver,
lh7a404_start_hc(dev);
ohci_hcd_init(hcd_to_ohci(hcd));
- retval = usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ohci-omap.c b/trunk/drivers/usb/host/ohci-omap.c
index c4c4babd4767..ca19abe01c53 100644
--- a/trunk/drivers/usb/host/ohci-omap.c
+++ b/trunk/drivers/usb/host/ohci-omap.c
@@ -14,7 +14,7 @@
* This file is licenced under the GPL.
*/
-#include /* IRQF_DISABLED */
+#include /* SA_INTERRUPT */
#include
#include
#include
@@ -334,7 +334,7 @@ int usb_hcd_omap_probe (const struct hc_driver *driver,
retval = -ENXIO;
goto err2;
}
- retval = usb_add_hcd(hcd, irq, IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, irq, SA_INTERRUPT);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ohci-ppc-soc.c b/trunk/drivers/usb/host/ohci-ppc-soc.c
index 9fe56ff1615d..b2a8dfa48870 100644
--- a/trunk/drivers/usb/host/ohci-ppc-soc.c
+++ b/trunk/drivers/usb/host/ohci-ppc-soc.c
@@ -75,7 +75,7 @@ static int usb_hcd_ppc_soc_probe(const struct hc_driver *driver,
ohci->flags |= OHCI_BIG_ENDIAN;
ohci_hcd_init(ohci);
- retval = usb_add_hcd(hcd, irq, IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, irq, SA_INTERRUPT);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ohci-pxa27x.c b/trunk/drivers/usb/host/ohci-pxa27x.c
index 6f559e102789..fafe7c1265b3 100644
--- a/trunk/drivers/usb/host/ohci-pxa27x.c
+++ b/trunk/drivers/usb/host/ohci-pxa27x.c
@@ -190,7 +190,7 @@ int usb_hcd_pxa27x_probe (const struct hc_driver *driver, struct platform_device
ohci_hcd_init(hcd_to_ohci(hcd));
- retval = usb_add_hcd(hcd, pdev->resource[1].start, IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, pdev->resource[1].start, SA_INTERRUPT);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/ohci-s3c2410.c b/trunk/drivers/usb/host/ohci-s3c2410.c
index d2fc6969a9f7..1da5de573a6f 100644
--- a/trunk/drivers/usb/host/ohci-s3c2410.c
+++ b/trunk/drivers/usb/host/ohci-s3c2410.c
@@ -388,7 +388,7 @@ static int usb_hcd_s3c2410_probe (const struct hc_driver *driver,
ohci_hcd_init(hcd_to_ohci(hcd));
- retval = usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT);
if (retval != 0)
goto err_ioremap;
diff --git a/trunk/drivers/usb/host/ohci-sa1111.c b/trunk/drivers/usb/host/ohci-sa1111.c
index ce3de106cadc..fb3221ebbb29 100644
--- a/trunk/drivers/usb/host/ohci-sa1111.c
+++ b/trunk/drivers/usb/host/ohci-sa1111.c
@@ -143,7 +143,7 @@ int usb_hcd_sa1111_probe (const struct hc_driver *driver,
sa1111_start_hc(dev);
ohci_hcd_init(hcd_to_ohci(hcd));
- retval = usb_add_hcd(hcd, dev->irq[1], IRQF_DISABLED);
+ retval = usb_add_hcd(hcd, dev->irq[1], SA_INTERRUPT);
if (retval == 0)
return retval;
diff --git a/trunk/drivers/usb/host/sl811-hcd.c b/trunk/drivers/usb/host/sl811-hcd.c
index fa34092bbcde..c327168255cd 100644
--- a/trunk/drivers/usb/host/sl811-hcd.c
+++ b/trunk/drivers/usb/host/sl811-hcd.c
@@ -1749,7 +1749,7 @@ sl811h_probe(struct platform_device *dev)
* was on a system with single edge triggering, so most sorts of
* triggering arrangement should work.
*/
- retval = usb_add_hcd(hcd, irq, IRQF_DISABLED | IRQF_SHARED);
+ retval = usb_add_hcd(hcd, irq, SA_INTERRUPT | SA_SHIRQ);
if (retval != 0)
goto err6;
diff --git a/trunk/drivers/video/arcfb.c b/trunk/drivers/video/arcfb.c
index fd95c2dbd4f7..466042808daf 100644
--- a/trunk/drivers/video/arcfb.c
+++ b/trunk/drivers/video/arcfb.c
@@ -561,7 +561,7 @@ static int __init arcfb_probe(struct platform_device *dev)
platform_set_drvdata(dev, info);
if (irq) {
par->irq = irq;
- if (request_irq(par->irq, &arcfb_interrupt, IRQF_SHARED,
+ if (request_irq(par->irq, &arcfb_interrupt, SA_SHIRQ,
"arcfb", info)) {
printk(KERN_INFO
"arcfb: Failed req IRQ %d\n", par->irq);
diff --git a/trunk/drivers/video/aty/atyfb_base.c b/trunk/drivers/video/aty/atyfb_base.c
index 0c9706746d79..85fcd22e6ed5 100644
--- a/trunk/drivers/video/aty/atyfb_base.c
+++ b/trunk/drivers/video/aty/atyfb_base.c
@@ -1567,7 +1567,7 @@ static int aty_enable_irq(struct atyfb_par *par, int reenable)
u32 int_cntl;
if (!test_and_set_bit(0, &par->irq_flags)) {
- if (request_irq(par->irq, aty_irq, IRQF_SHARED, "atyfb", par)) {
+ if (request_irq(par->irq, aty_irq, SA_SHIRQ, "atyfb", par)) {
clear_bit(0, &par->irq_flags);
return -EINVAL;
}
diff --git a/trunk/drivers/video/au1200fb.c b/trunk/drivers/video/au1200fb.c
index c6a5f0ccc107..600d3e0e08b7 100644
--- a/trunk/drivers/video/au1200fb.c
+++ b/trunk/drivers/video/au1200fb.c
@@ -1694,7 +1694,7 @@ static int au1200fb_drv_probe(struct device *dev)
/* Now hook interrupt too */
if ((ret = request_irq(AU1200_LCD_INT, au1200fb_handle_irq,
- IRQF_DISABLED | IRQF_SHARED, "lcd", (void *)dev)) < 0) {
+ SA_INTERRUPT | SA_SHIRQ, "lcd", (void *)dev)) < 0) {
print_err("fail to request interrupt line %d (err: %d)",
AU1200_LCD_INT, ret);
goto failed;
diff --git a/trunk/drivers/video/matrox/matroxfb_base.c b/trunk/drivers/video/matrox/matroxfb_base.c
index 4a57dabb77d4..8b5bf7972ee3 100644
--- a/trunk/drivers/video/matrox/matroxfb_base.c
+++ b/trunk/drivers/video/matrox/matroxfb_base.c
@@ -233,7 +233,7 @@ int matroxfb_enable_irq(WPMINFO int reenable) {
if (!test_and_set_bit(0, &ACCESS_FBINFO(irq_flags))) {
if (request_irq(ACCESS_FBINFO(pcidev)->irq, matrox_irq,
- IRQF_SHARED, "matroxfb", MINFO)) {
+ SA_SHIRQ, "matroxfb", MINFO)) {
clear_bit(0, &ACCESS_FBINFO(irq_flags));
return -EINVAL;
}
diff --git a/trunk/drivers/video/pxafb.c b/trunk/drivers/video/pxafb.c
index bbb07106cd54..54663a9baf43 100644
--- a/trunk/drivers/video/pxafb.c
+++ b/trunk/drivers/video/pxafb.c
@@ -1334,7 +1334,7 @@ int __init pxafb_probe(struct platform_device *dev)
goto failed;
}
- ret = request_irq(IRQ_LCD, pxafb_handle_irq, IRQF_DISABLED, "LCD", fbi);
+ ret = request_irq(IRQ_LCD, pxafb_handle_irq, SA_INTERRUPT, "LCD", fbi);
if (ret) {
dev_err(&dev->dev, "request_irq failed: %d\n", ret);
ret = -EBUSY;
diff --git a/trunk/drivers/video/s3c2410fb.c b/trunk/drivers/video/s3c2410fb.c
index f461eb10cc79..fbc411850686 100644
--- a/trunk/drivers/video/s3c2410fb.c
+++ b/trunk/drivers/video/s3c2410fb.c
@@ -735,7 +735,7 @@ static int __init s3c2410fb_probe(struct platform_device *pdev)
dprintk("got LCD region\n");
- ret = request_irq(irq, s3c2410fb_irq, IRQF_DISABLED, pdev->name, info);
+ ret = request_irq(irq, s3c2410fb_irq, SA_INTERRUPT, pdev->name, info);
if (ret) {
dev_err(&pdev->dev, "cannot get irq %d - err %d\n", irq, ret);
ret = -EBUSY;
diff --git a/trunk/drivers/video/sa1100fb.c b/trunk/drivers/video/sa1100fb.c
index a2e6e7205d7e..553fd84af44f 100644
--- a/trunk/drivers/video/sa1100fb.c
+++ b/trunk/drivers/video/sa1100fb.c
@@ -1472,7 +1472,7 @@ static int __init sa1100fb_probe(struct platform_device *pdev)
if (ret)
goto failed;
- ret = request_irq(irq, sa1100fb_handle_irq, IRQF_DISABLED,
+ ret = request_irq(irq, sa1100fb_handle_irq, SA_INTERRUPT,
"LCD", fbi);
if (ret) {
printk(KERN_ERR "sa1100fb: request_irq failed: %d\n", ret);
diff --git a/trunk/include/asm-alpha/floppy.h b/trunk/include/asm-alpha/floppy.h
index 6a9f02af9529..21816d35ef89 100644
--- a/trunk/include/asm-alpha/floppy.h
+++ b/trunk/include/asm-alpha/floppy.h
@@ -26,7 +26,7 @@
#define fd_disable_irq() disable_irq(FLOPPY_IRQ)
#define fd_cacheflush(addr,size) /* nothing */
#define fd_request_irq() request_irq(FLOPPY_IRQ, floppy_interrupt,\
- IRQF_DISABLED, "floppy", NULL)
+ SA_INTERRUPT, "floppy", NULL)
#define fd_free_irq() free_irq(FLOPPY_IRQ, NULL);
#ifdef CONFIG_PCI
diff --git a/trunk/include/asm-alpha/signal.h b/trunk/include/asm-alpha/signal.h
index 13c2305d35ef..1a2c52a056fb 100644
--- a/trunk/include/asm-alpha/signal.h
+++ b/trunk/include/asm-alpha/signal.h
@@ -77,6 +77,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -97,6 +98,7 @@ typedef unsigned long sigset_t;
#define SA_ONESHOT SA_RESETHAND
#define SA_NOMASK SA_NODEFER
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
/*
* sigaltstack controls
diff --git a/trunk/include/asm-arm26/floppy.h b/trunk/include/asm-arm26/floppy.h
index efb732165a4f..a18af069ca28 100644
--- a/trunk/include/asm-arm26/floppy.h
+++ b/trunk/include/asm-arm26/floppy.h
@@ -22,7 +22,7 @@
#define fd_inb(port) inb((port))
#define fd_request_irq() request_irq(IRQ_FLOPPYDISK,floppy_interrupt,\
- IRQF_DISABLED,"floppy",NULL)
+ SA_INTERRUPT,"floppy",NULL)
#define fd_free_irq() free_irq(IRQ_FLOPPYDISK,NULL)
#define fd_disable_irq() disable_irq(IRQ_FLOPPYDISK)
#define fd_enable_irq() enable_irq(IRQ_FLOPPYDISK)
diff --git a/trunk/include/asm-arm26/signal.h b/trunk/include/asm-arm26/signal.h
index 967ba4947e40..37ad25355591 100644
--- a/trunk/include/asm-arm26/signal.h
+++ b/trunk/include/asm-arm26/signal.h
@@ -82,6 +82,7 @@ typedef unsigned long sigset_t;
* is running in 26-bit.
* SA_ONSTACK allows alternate signal stacks (see sigaltstack(2)).
* SA_RESTART flag to get restarting signals (which were the default long ago)
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_NODEFER prevents the current signal from being masked in the handler.
* SA_RESETHAND clears the handler when the signal is delivered.
*
@@ -100,6 +101,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
/*
diff --git a/trunk/include/asm-cris/arch-v10/irq.h b/trunk/include/asm-cris/arch-v10/irq.h
index b1128a9984ae..4fa8945b0263 100644
--- a/trunk/include/asm-cris/arch-v10/irq.h
+++ b/trunk/include/asm-cris/arch-v10/irq.h
@@ -141,7 +141,7 @@ __asm__ ( \
* it here, we would not get the multiple_irq at all.
*
* The non-blocking here is based on the knowledge that the timer interrupt is
- * registred as a fast interrupt (IRQF_DISABLED) so that we _know_ there will not
+ * registred as a fast interrupt (SA_INTERRUPT) so that we _know_ there will not
* be an sti() before the timer irq handler is run to acknowledge the interrupt.
*/
diff --git a/trunk/include/asm-cris/arch-v32/irq.h b/trunk/include/asm-cris/arch-v32/irq.h
index bac94ee6bc90..eeb0a80262c8 100644
--- a/trunk/include/asm-cris/arch-v32/irq.h
+++ b/trunk/include/asm-cris/arch-v32/irq.h
@@ -98,7 +98,7 @@ __asm__ ( \
* if we had BLOCK'edit here, we would not get the multiple_irq at all.
*
* The non-blocking here is based on the knowledge that the timer interrupt is
- * registred as a fast interrupt (IRQF_DISABLED) so that we _know_ there will not
+ * registred as a fast interrupt (SA_INTERRUPT) so that we _know_ there will not
* be an sti() before the timer irq handler is run to acknowledge the interrupt.
*/
#define BUILD_TIMER_IRQ(nr, mask) \
diff --git a/trunk/include/asm-cris/signal.h b/trunk/include/asm-cris/signal.h
index 349ae682b568..dfe039593a78 100644
--- a/trunk/include/asm-cris/signal.h
+++ b/trunk/include/asm-cris/signal.h
@@ -74,6 +74,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -94,6 +95,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-frv/irq-routing.h b/trunk/include/asm-frv/irq-routing.h
index ac3ab900a1dc..686fb2b39d6a 100644
--- a/trunk/include/asm-frv/irq-routing.h
+++ b/trunk/include/asm-frv/irq-routing.h
@@ -51,7 +51,7 @@ struct irq_source {
struct irq_level {
int usage;
int disable_count;
- unsigned long flags; /* current IRQF_DISABLED and IRQF_SHARED settings */
+ unsigned long flags; /* current SA_INTERRUPT and SA_SHIRQ settings */
spinlock_t lock;
struct irq_source *sources;
};
diff --git a/trunk/include/asm-frv/signal.h b/trunk/include/asm-frv/signal.h
index 2079197d483d..dcc1b3592918 100644
--- a/trunk/include/asm-frv/signal.h
+++ b/trunk/include/asm-frv/signal.h
@@ -74,6 +74,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -93,6 +94,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-h8300/signal.h b/trunk/include/asm-h8300/signal.h
index 7bc15048a64f..8eccdc176163 100644
--- a/trunk/include/asm-h8300/signal.h
+++ b/trunk/include/asm-h8300/signal.h
@@ -74,6 +74,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -93,6 +94,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-i386/floppy.h b/trunk/include/asm-i386/floppy.h
index 359ead60b718..9cb2793eb211 100644
--- a/trunk/include/asm-i386/floppy.h
+++ b/trunk/include/asm-i386/floppy.h
@@ -144,11 +144,11 @@ static int vdma_get_dma_residue(unsigned int dummy)
static int fd_request_irq(void)
{
if(can_use_virtual_dma)
- return request_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
+ "floppy", NULL);
else
- return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
+ "floppy", NULL);
}
diff --git a/trunk/include/asm-i386/signal.h b/trunk/include/asm-i386/signal.h
index 3824a502351f..026fd231488d 100644
--- a/trunk/include/asm-i386/signal.h
+++ b/trunk/include/asm-i386/signal.h
@@ -77,6 +77,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -96,6 +97,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-ia64/irq.h b/trunk/include/asm-ia64/irq.h
index 8acb00190d5a..79479e2c6966 100644
--- a/trunk/include/asm-ia64/irq.h
+++ b/trunk/include/asm-ia64/irq.h
@@ -14,8 +14,6 @@
#define NR_IRQS 256
#define NR_IRQ_VECTORS NR_IRQS
-#define IRQF_PERCPU 0x02000000
-
static __inline__ int
irq_canonicalize (int irq)
{
diff --git a/trunk/include/asm-ia64/signal.h b/trunk/include/asm-ia64/signal.h
index 4f5ca5643cb1..5e328ed5d01d 100644
--- a/trunk/include/asm-ia64/signal.h
+++ b/trunk/include/asm-ia64/signal.h
@@ -56,6 +56,7 @@
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons.
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -75,6 +76,7 @@
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
@@ -112,6 +114,8 @@
#define _NSIG_BPW 64
#define _NSIG_WORDS (_NSIG / _NSIG_BPW)
+#define SA_PERCPU_IRQ 0x02000000
+
#endif /* __KERNEL__ */
#include
diff --git a/trunk/include/asm-m32r/signal.h b/trunk/include/asm-m32r/signal.h
index e750045164d4..95f69b191953 100644
--- a/trunk/include/asm-m32r/signal.h
+++ b/trunk/include/asm-m32r/signal.h
@@ -81,6 +81,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -100,6 +101,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-m68k/floppy.h b/trunk/include/asm-m68k/floppy.h
index 57f4fdda65ab..63a05ed95c17 100644
--- a/trunk/include/asm-m68k/floppy.h
+++ b/trunk/include/asm-m68k/floppy.h
@@ -88,8 +88,8 @@ static __inline__ void fd_outb(unsigned char value, int port)
static int fd_request_irq(void)
{
if(MACH_IS_Q40)
- return request_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy", floppy_hardint);
+ return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
+ "floppy", floppy_hardint);
else if(MACH_IS_SUN3X)
return sun3xflop_request_irq();
return -ENXIO;
diff --git a/trunk/include/asm-m68k/irq.h b/trunk/include/asm-m68k/irq.h
index 3257f9881002..f4ae7d8feac6 100644
--- a/trunk/include/asm-m68k/irq.h
+++ b/trunk/include/asm-m68k/irq.h
@@ -67,8 +67,8 @@ struct pt_regs;
/*
* various flags for request_irq() - the Amiga now uses the standard
- * mechanism like all other architectures - IRQF_DISABLED and
- * IRQF_SHARED are your friends.
+ * mechanism like all other architectures - SA_INTERRUPT and SA_SHIRQ
+ * are your friends.
*/
#ifndef MACH_AMIGA_ONLY
#define IRQ_FLG_LOCK (0x0001) /* handler is not replaceable */
diff --git a/trunk/include/asm-m68k/signal.h b/trunk/include/asm-m68k/signal.h
index de1ba6ead3b4..85037a3d3e8e 100644
--- a/trunk/include/asm-m68k/signal.h
+++ b/trunk/include/asm-m68k/signal.h
@@ -74,6 +74,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -93,6 +94,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
/*
* sigaltstack controls
diff --git a/trunk/include/asm-m68k/sun3xflop.h b/trunk/include/asm-m68k/sun3xflop.h
index ca8cc4113843..98a9f79dab29 100644
--- a/trunk/include/asm-m68k/sun3xflop.h
+++ b/trunk/include/asm-m68k/sun3xflop.h
@@ -208,8 +208,7 @@ static int sun3xflop_request_irq(void)
if(!once) {
once = 1;
- error = request_irq(FLOPPY_IRQ, sun3xflop_hardint,
- IRQF_DISABLED, "floppy", NULL);
+ error = request_irq(FLOPPY_IRQ, sun3xflop_hardint, SA_INTERRUPT, "floppy", NULL);
return ((error == 0) ? 0 : -1);
} else return 0;
}
diff --git a/trunk/include/asm-m68knommu/irq.h b/trunk/include/asm-m68knommu/irq.h
index 45e7a2fd1689..53557274eef8 100644
--- a/trunk/include/asm-m68knommu/irq.h
+++ b/trunk/include/asm-m68knommu/irq.h
@@ -62,8 +62,8 @@ extern void (*mach_disable_irq)(unsigned int);
/*
* various flags for request_irq() - the Amiga now uses the standard
- * mechanism like all other architectures - IRQF_DISABLED and
- * IRQF_SHARED are your friends.
+ * mechanism like all other architectures - SA_INTERRUPT and SA_SHIRQ
+ * are your friends.
*/
#define IRQ_FLG_LOCK (0x0001) /* handler is not replaceable */
#define IRQ_FLG_REPLACE (0x0002) /* replace existing handler */
diff --git a/trunk/include/asm-m68knommu/signal.h b/trunk/include/asm-m68knommu/signal.h
index 216c08be54a0..1d13187f6062 100644
--- a/trunk/include/asm-m68knommu/signal.h
+++ b/trunk/include/asm-m68knommu/signal.h
@@ -74,6 +74,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -93,6 +94,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
/*
* sigaltstack controls
diff --git a/trunk/include/asm-mips/mach-generic/floppy.h b/trunk/include/asm-mips/mach-generic/floppy.h
index 001a8ce17c17..83cd69e30ec3 100644
--- a/trunk/include/asm-mips/mach-generic/floppy.h
+++ b/trunk/include/asm-mips/mach-generic/floppy.h
@@ -98,7 +98,7 @@ static inline void fd_disable_irq(void)
static inline int fd_request_irq(void)
{
return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ SA_INTERRUPT, "floppy", NULL);
}
static inline void fd_free_irq(void)
diff --git a/trunk/include/asm-mips/mach-jazz/floppy.h b/trunk/include/asm-mips/mach-jazz/floppy.h
index 56e9ca6ae426..9413117915f4 100644
--- a/trunk/include/asm-mips/mach-jazz/floppy.h
+++ b/trunk/include/asm-mips/mach-jazz/floppy.h
@@ -90,7 +90,7 @@ static inline void fd_disable_irq(void)
static inline int fd_request_irq(void)
{
return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ SA_INTERRUPT, "floppy", NULL);
}
static inline void fd_free_irq(void)
diff --git a/trunk/include/asm-mips/signal.h b/trunk/include/asm-mips/signal.h
index 87a1dff95199..a1f3a3fa9bd6 100644
--- a/trunk/include/asm-mips/signal.h
+++ b/trunk/include/asm-mips/signal.h
@@ -64,6 +64,7 @@ typedef unsigned long old_sigset_t; /* at least 32 bits */
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -83,6 +84,7 @@ typedef unsigned long old_sigset_t; /* at least 32 bits */
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000 /* Only for o32 */
@@ -97,6 +99,15 @@ typedef unsigned long old_sigset_t; /* at least 32 bits */
#ifdef __KERNEL__
+/*
+ * These values of sa_flags are used only by the kernel as part of the
+ * irq handling routines.
+ *
+ * SA_INTERRUPT is also used by the irq handling routines.
+ * SA_SHIRQ flag is for shared interrupt support on PCI and EISA.
+ */
+#define SA_SAMPLE_RANDOM SA_RESTART
+
#ifdef CONFIG_TRAD_SIGNALS
#define sig_uses_siginfo(ka) ((ka)->sa.sa_flags & SA_SIGINFO)
#else
diff --git a/trunk/include/asm-parisc/floppy.h b/trunk/include/asm-parisc/floppy.h
index da2f9c157143..458cdb2a7530 100644
--- a/trunk/include/asm-parisc/floppy.h
+++ b/trunk/include/asm-parisc/floppy.h
@@ -156,11 +156,11 @@ static int vdma_get_dma_residue(unsigned int dummy)
static int fd_request_irq(void)
{
if(can_use_virtual_dma)
- return request_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
+ "floppy", NULL);
else
- return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
+ "floppy", NULL);
}
static unsigned long dma_mem_alloc(unsigned long size)
diff --git a/trunk/include/asm-parisc/signal.h b/trunk/include/asm-parisc/signal.h
index 98a82fa0cfdb..25cb23ef7dd1 100644
--- a/trunk/include/asm-parisc/signal.h
+++ b/trunk/include/asm-parisc/signal.h
@@ -48,6 +48,7 @@
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -68,6 +69,7 @@
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000 /* obsolete -- ignored */
diff --git a/trunk/include/asm-powerpc/floppy.h b/trunk/include/asm-powerpc/floppy.h
index fd242a22331c..9c8d91bf5a0d 100644
--- a/trunk/include/asm-powerpc/floppy.h
+++ b/trunk/include/asm-powerpc/floppy.h
@@ -27,7 +27,7 @@
#define fd_disable_irq() disable_irq(FLOPPY_IRQ)
#define fd_cacheflush(addr,size) /* nothing */
#define fd_request_irq() request_irq(FLOPPY_IRQ, floppy_interrupt, \
- IRQF_DISABLED, "floppy", NULL)
+ SA_INTERRUPT, "floppy", NULL)
#define fd_free_irq() free_irq(FLOPPY_IRQ, NULL);
#ifdef CONFIG_PCI
diff --git a/trunk/include/asm-powerpc/signal.h b/trunk/include/asm-powerpc/signal.h
index a8c7babf4950..a4d8f8648541 100644
--- a/trunk/include/asm-powerpc/signal.h
+++ b/trunk/include/asm-powerpc/signal.h
@@ -63,6 +63,7 @@ typedef struct {
* SA_FLAGS values:
*
* SA_ONSTACK is not currently supported, but will allow sigaltstack(2).
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -82,6 +83,7 @@ typedef struct {
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000u /* dummy -- ignored */
#define SA_RESTORER 0x04000000U
diff --git a/trunk/include/asm-ppc/floppy.h b/trunk/include/asm-ppc/floppy.h
index d3963ca79ad8..2ba191eba448 100644
--- a/trunk/include/asm-ppc/floppy.h
+++ b/trunk/include/asm-ppc/floppy.h
@@ -96,11 +96,11 @@ static int vdma_get_dma_residue(unsigned int dummy)
static int fd_request_irq(void)
{
if (can_use_virtual_dma)
- return request_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
+ "floppy", NULL);
else
- return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
+ "floppy", NULL);
}
static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
diff --git a/trunk/include/asm-s390/signal.h b/trunk/include/asm-s390/signal.h
index f6cfddb278cb..7084626de215 100644
--- a/trunk/include/asm-s390/signal.h
+++ b/trunk/include/asm-s390/signal.h
@@ -84,6 +84,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -103,6 +104,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-sh/floppy.h b/trunk/include/asm-sh/floppy.h
index dc1ad464fa32..307d9ce9f9ed 100644
--- a/trunk/include/asm-sh/floppy.h
+++ b/trunk/include/asm-sh/floppy.h
@@ -146,11 +146,12 @@ static int vdma_get_dma_residue(unsigned int dummy)
static int fd_request_irq(void)
{
if(can_use_virtual_dma)
- return request_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
+ "floppy", NULL);
else
- return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
+ "floppy", NULL);
+
}
static unsigned long dma_mem_alloc(unsigned long size)
diff --git a/trunk/include/asm-sh/mpc1211/keyboard.h b/trunk/include/asm-sh/mpc1211/keyboard.h
index 71ef4cf4242d..5f0b9088c796 100644
--- a/trunk/include/asm-sh/mpc1211/keyboard.h
+++ b/trunk/include/asm-sh/mpc1211/keyboard.h
@@ -57,7 +57,7 @@ extern unsigned char pckbd_sysrq_xlate[128];
#define AUX_IRQ 12
#define aux_request_irq(hand, dev_id) \
- request_irq(AUX_IRQ, hand, IRQF_SHARED, "PS2 Mouse", dev_id)
+ request_irq(AUX_IRQ, hand, SA_SHIRQ, "PS2 Mouse", dev_id)
#define aux_free_irq(dev_id) free_irq(AUX_IRQ, dev_id)
diff --git a/trunk/include/asm-sh/signal.h b/trunk/include/asm-sh/signal.h
index 5c5c1e852089..d6e8eb0e65c7 100644
--- a/trunk/include/asm-sh/signal.h
+++ b/trunk/include/asm-sh/signal.h
@@ -75,6 +75,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -94,6 +95,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-sh64/keyboard.h b/trunk/include/asm-sh64/keyboard.h
index 1fab96d792bf..733e2bbe7b8c 100644
--- a/trunk/include/asm-sh64/keyboard.h
+++ b/trunk/include/asm-sh64/keyboard.h
@@ -65,7 +65,7 @@ extern unsigned char pckbd_sysrq_xlate[128];
#endif
#define aux_request_irq(hand, dev_id) \
- request_irq(AUX_IRQ, hand, IRQF_SHARED, "PS2 Mouse", dev_id)
+ request_irq(AUX_IRQ, hand, SA_SHIRQ, "PS2 Mouse", dev_id)
#define aux_free_irq(dev_id) free_irq(AUX_IRQ, dev_id)
diff --git a/trunk/include/asm-sh64/signal.h b/trunk/include/asm-sh64/signal.h
index a5a28203cb3b..2400dc688a65 100644
--- a/trunk/include/asm-sh64/signal.h
+++ b/trunk/include/asm-sh64/signal.h
@@ -74,6 +74,7 @@ typedef struct {
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -93,6 +94,7 @@ typedef struct {
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-sparc/floppy.h b/trunk/include/asm-sparc/floppy.h
index c53b332c850a..7a941b800b6b 100644
--- a/trunk/include/asm-sparc/floppy.h
+++ b/trunk/include/asm-sparc/floppy.h
@@ -271,8 +271,7 @@ static int sun_fd_request_irq(void)
if(!once) {
once = 1;
- error = request_fast_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy");
+ error = request_fast_irq(FLOPPY_IRQ, floppy_hardint, SA_INTERRUPT, "floppy");
return ((error == 0) ? 0 : -1);
} else return 0;
}
diff --git a/trunk/include/asm-sparc/signal.h b/trunk/include/asm-sparc/signal.h
index 0ae5084c427b..aa9960ad0ca9 100644
--- a/trunk/include/asm-sparc/signal.h
+++ b/trunk/include/asm-sparc/signal.h
@@ -132,13 +132,16 @@ struct sigstack {
* usage of signal stacks by using the (now obsolete) sa_restorer field in
* the sigaction structure as a stack pointer. This is now possible due to
* the changes in signal handling. LBT 010493.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
+ * SA_SHIRQ flag is for shared interrupt support on PCI and EISA.
*/
#define SA_NOCLDSTOP _SV_IGNCHILD
#define SA_STACK _SV_SSTACK
#define SA_ONSTACK _SV_SSTACK
#define SA_RESTART _SV_INTR
#define SA_ONESHOT _SV_RESET
+#define SA_INTERRUPT 0x10u
#define SA_NOMASK 0x20u
#define SA_NOCLDWAIT 0x100u
#define SA_SIGINFO 0x200u
diff --git a/trunk/include/asm-sparc64/floppy.h b/trunk/include/asm-sparc64/floppy.h
index abf150038019..b591d0e8d8f0 100644
--- a/trunk/include/asm-sparc64/floppy.h
+++ b/trunk/include/asm-sparc64/floppy.h
@@ -267,7 +267,7 @@ static int sun_fd_request_irq(void)
once = 1;
error = request_irq(FLOPPY_IRQ, sparc_floppy_irq,
- IRQF_DISABLED, "floppy", NULL);
+ SA_INTERRUPT, "floppy", NULL);
return ((error == 0) ? 0 : -1);
}
diff --git a/trunk/include/asm-sparc64/signal.h b/trunk/include/asm-sparc64/signal.h
index 9968871103bc..fdc42a14d4e6 100644
--- a/trunk/include/asm-sparc64/signal.h
+++ b/trunk/include/asm-sparc64/signal.h
@@ -133,13 +133,16 @@ struct sigstack {
* usage of signal stacks by using the (now obsolete) sa_restorer field in
* the sigaction structure as a stack pointer. This is now possible due to
* the changes in signal handling. LBT 010493.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
+ * SA_SHIRQ flag is for shared interrupt support on PCI and EISA.
*/
#define SA_NOCLDSTOP _SV_IGNCHILD
#define SA_STACK _SV_SSTACK
#define SA_ONSTACK _SV_SSTACK
#define SA_RESTART _SV_INTR
#define SA_ONESHOT _SV_RESET
+#define SA_INTERRUPT 0x10u
#define SA_NOMASK 0x20u
#define SA_NOCLDWAIT 0x100u
#define SA_SIGINFO 0x200u
diff --git a/trunk/include/asm-v850/signal.h b/trunk/include/asm-v850/signal.h
index a38df0834bbf..cb52caa69925 100644
--- a/trunk/include/asm-v850/signal.h
+++ b/trunk/include/asm-v850/signal.h
@@ -77,6 +77,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -96,6 +97,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-x86_64/floppy.h b/trunk/include/asm-x86_64/floppy.h
index 32ff5d132714..006291e89b4a 100644
--- a/trunk/include/asm-x86_64/floppy.h
+++ b/trunk/include/asm-x86_64/floppy.h
@@ -144,11 +144,11 @@ static int vdma_get_dma_residue(unsigned int dummy)
static int fd_request_irq(void)
{
if(can_use_virtual_dma)
- return request_irq(FLOPPY_IRQ, floppy_hardint,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
+ "floppy", NULL);
else
- return request_irq(FLOPPY_IRQ, floppy_interrupt,
- IRQF_DISABLED, "floppy", NULL);
+ return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
+ "floppy", NULL);
}
static unsigned long dma_mem_alloc(unsigned long size)
diff --git a/trunk/include/asm-x86_64/signal.h b/trunk/include/asm-x86_64/signal.h
index cef7a7d51b7e..f8d55798535a 100644
--- a/trunk/include/asm-x86_64/signal.h
+++ b/trunk/include/asm-x86_64/signal.h
@@ -83,6 +83,7 @@ typedef unsigned long sigset_t;
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -102,6 +103,7 @@ typedef unsigned long sigset_t;
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
diff --git a/trunk/include/asm-xtensa/signal.h b/trunk/include/asm-xtensa/signal.h
index 633ba73bc4d2..a99c9aec64ec 100644
--- a/trunk/include/asm-xtensa/signal.h
+++ b/trunk/include/asm-xtensa/signal.h
@@ -75,6 +75,7 @@ typedef struct {
* SA_FLAGS values:
*
* SA_ONSTACK indicates that a registered stack_t will be used.
+ * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
* SA_RESTART flag to get restarting signals (which were the default long ago)
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
* SA_RESETHAND clears the handler when the signal is delivered.
@@ -94,6 +95,7 @@ typedef struct {
#define SA_NOMASK SA_NODEFER
#define SA_ONESHOT SA_RESETHAND
+#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
#define SA_RESTORER 0x04000000
@@ -107,6 +109,19 @@ typedef struct {
#define SIGSTKSZ 8192
#ifndef __ASSEMBLY__
+#ifdef __KERNEL__
+
+/*
+ * These values of sa_flags are used only by the kernel as part of the
+ * irq handling routines.
+ *
+ * SA_INTERRUPT is also used by the irq handling routines.
+ * SA_SHIRQ is for shared interrupt support on PCI and EISA.
+ */
+#define SA_SAMPLE_RANDOM SA_RESTART
+#define SA_SHIRQ 0x04000000
+#define SA_PROBEIRQ 0x08000000
+#endif
#define SIG_BLOCK 0 /* for blocking signals */
#define SIG_UNBLOCK 1 /* for unblocking signals */
diff --git a/trunk/include/linux/interrupt.h b/trunk/include/linux/interrupt.h
index cf682a73a6f9..db2a63a11633 100644
--- a/trunk/include/linux/interrupt.h
+++ b/trunk/include/linux/interrupt.h
@@ -14,53 +14,6 @@
#include
#include
-/*
- * These correspond to the IORESOURCE_IRQ_* defines in
- * linux/ioport.h to select the interrupt line behaviour. When
- * requesting an interrupt without specifying a IRQF_TRIGGER, the
- * setting should be assumed to be "as already configured", which
- * may be as per machine or firmware initialisation.
- */
-#define IRQF_TRIGGER_NONE 0x00000000
-#define IRQF_TRIGGER_RISING 0x00000001
-#define IRQF_TRIGGER_FALLING 0x00000002
-#define IRQF_TRIGGER_HIGH 0x00000004
-#define IRQF_TRIGGER_LOW 0x00000008
-#define IRQF_TRIGGER_MASK (IRQF_TRIGGER_HIGH | IRQF_TRIGGER_LOW | \
- IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING)
-#define IRQF_TRIGGER_PROBE 0x00000010
-
-/*
- * These flags used only by the kernel as part of the
- * irq handling routines.
- *
- * IRQF_DISABLED - keep irqs disabled when calling the action handler
- * IRQF_SAMPLE_RANDOM - irq is used to feed the random generator
- * IRQF_SHARED - allow sharing the irq among several devices
- * IRQF_PROBE_SHARED - set by callers when they expect sharing mismatches to occur
- * IRQF_TIMER - Flag to mark this interrupt as timer interrupt
- */
-#define IRQF_DISABLED 0x00000020
-#define IRQF_SAMPLE_RANDOM 0x00000040
-#define IRQF_SHARED 0x00000080
-#define IRQF_PROBE_SHARED 0x00000100
-#define IRQF_TIMER 0x00000200
-
-/*
- * Migration helpers. Scheduled for removal in 1/2007
- * Do not use for new code !
- */
-#define SA_INTERRUPT IRQF_DISABLED
-#define SA_SAMPLE_RANDOM IRQF_SAMPLE_RANDOM
-#define SA_SHIRQ IRQF_SHARED
-#define SA_PROBEIRQ IRQF_PROBE_SHARED
-
-#define SA_TRIGGER_LOW IRQF_TRIGGER_LOW
-#define SA_TRIGGER_HIGH IRQF_TRIGGER_HIGH
-#define SA_TRIGGER_FALLING IRQF_TRIGGER_FALLING
-#define SA_TRIGGER_RISING IRQF_TRIGGER_RISING
-#define SA_TRIGGER_MASK IRQF_TRIGGER_MASK
-
struct irqaction {
irqreturn_t (*handler)(int, void *, struct pt_regs *);
unsigned long flags;
diff --git a/trunk/include/linux/irq.h b/trunk/include/linux/irq.h
index ae1e422f18e3..0832149cdb18 100644
--- a/trunk/include/linux/irq.h
+++ b/trunk/include/linux/irq.h
@@ -24,40 +24,41 @@
/*
* IRQ line status.
- *
- * Bits 0-16 are reserved for the IRQF_* bits in linux/interrupt.h
- *
- * IRQ types
*/
-#define IRQ_TYPE_NONE 0x00000000 /* Default, unspecified type */
-#define IRQ_TYPE_EDGE_RISING 0x00000001 /* Edge rising type */
-#define IRQ_TYPE_EDGE_FALLING 0x00000002 /* Edge falling type */
-#define IRQ_TYPE_EDGE_BOTH (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)
-#define IRQ_TYPE_LEVEL_HIGH 0x00000004 /* Level high type */
-#define IRQ_TYPE_LEVEL_LOW 0x00000008 /* Level low type */
-#define IRQ_TYPE_SENSE_MASK 0x0000000f /* Mask of the above */
-#define IRQ_TYPE_PROBE 0x00000010 /* Probing in progress */
-
-/* Internal flags */
-#define IRQ_INPROGRESS 0x00010000 /* IRQ handler active - do not enter! */
-#define IRQ_DISABLED 0x00020000 /* IRQ disabled - do not enter! */
-#define IRQ_PENDING 0x00040000 /* IRQ pending - replay on enable */
-#define IRQ_REPLAY 0x00080000 /* IRQ has been replayed but not acked yet */
-#define IRQ_AUTODETECT 0x00100000 /* IRQ is being autodetected */
-#define IRQ_WAITING 0x00200000 /* IRQ not yet seen - for autodetection */
-#define IRQ_LEVEL 0x00400000 /* IRQ level triggered */
-#define IRQ_MASKED 0x00800000 /* IRQ masked - shouldn't be seen again */
+#define IRQ_INPROGRESS 1 /* IRQ handler active - do not enter! */
+#define IRQ_DISABLED 2 /* IRQ disabled - do not enter! */
+#define IRQ_PENDING 4 /* IRQ pending - replay on enable */
+#define IRQ_REPLAY 8 /* IRQ has been replayed but not acked yet */
+#define IRQ_AUTODETECT 16 /* IRQ is being autodetected */
+#define IRQ_WAITING 32 /* IRQ not yet seen - for autodetection */
+#define IRQ_LEVEL 64 /* IRQ level triggered */
+#define IRQ_MASKED 128 /* IRQ masked - shouldn't be seen again */
#ifdef CONFIG_IRQ_PER_CPU
-# define IRQ_PER_CPU 0x01000000 /* IRQ is per CPU */
+# define IRQ_PER_CPU 256 /* IRQ is per CPU */
# define CHECK_IRQ_PER_CPU(var) ((var) & IRQ_PER_CPU)
#else
# define CHECK_IRQ_PER_CPU(var) 0
#endif
-#define IRQ_NOPROBE 0x02000000 /* IRQ is not valid for probing */
-#define IRQ_NOREQUEST 0x04000000 /* IRQ cannot be requested */
-#define IRQ_NOAUTOEN 0x08000000 /* IRQ will not be enabled on request irq */
-#define IRQ_DELAYED_DISABLE 0x10000000 /* IRQ disable (masking) happens delayed. */
+#define IRQ_NOPROBE 512 /* IRQ is not valid for probing */
+#define IRQ_NOREQUEST 1024 /* IRQ cannot be requested */
+#define IRQ_NOAUTOEN 2048 /* IRQ will not be enabled on request irq */
+#define IRQ_DELAYED_DISABLE \
+ 4096 /* IRQ disable (masking) happens delayed. */
+
+/*
+ * IRQ types, see also include/linux/interrupt.h
+ */
+#define IRQ_TYPE_NONE 0x0000 /* Default, unspecified type */
+#define IRQ_TYPE_EDGE_RISING 0x0001 /* Edge rising type */
+#define IRQ_TYPE_EDGE_FALLING 0x0002 /* Edge falling type */
+#define IRQ_TYPE_EDGE_BOTH (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)
+#define IRQ_TYPE_LEVEL_HIGH 0x0004 /* Level high type */
+#define IRQ_TYPE_LEVEL_LOW 0x0008 /* Level low type */
+#define IRQ_TYPE_SENSE_MASK 0x000f /* Mask of the above */
+#define IRQ_TYPE_SIMPLE 0x0010 /* Simple type */
+#define IRQ_TYPE_PERCPU 0x0020 /* Per CPU type */
+#define IRQ_TYPE_PROBE 0x0040 /* Probing in progress */
struct proc_dir_entry;
diff --git a/trunk/include/linux/signal.h b/trunk/include/linux/signal.h
index 117135e33d67..1e4ce7225eee 100644
--- a/trunk/include/linux/signal.h
+++ b/trunk/include/linux/signal.h
@@ -8,6 +8,32 @@
#include
#include
+/*
+ * These values of sa_flags are used only by the kernel as part of the
+ * irq handling routines.
+ *
+ * SA_INTERRUPT is also used by the irq handling routines.
+ * SA_SHIRQ is for shared interrupt support on PCI and EISA.
+ * SA_PROBEIRQ is set by callers when they expect sharing mismatches to occur
+ */
+#define SA_SAMPLE_RANDOM SA_RESTART
+#define SA_SHIRQ 0x04000000
+#define SA_PROBEIRQ 0x08000000
+
+/*
+ * As above, these correspond to the IORESOURCE_IRQ_* defines in
+ * linux/ioport.h to select the interrupt line behaviour. When
+ * requesting an interrupt without specifying a SA_TRIGGER, the
+ * setting should be assumed to be "as already configured", which
+ * may be as per machine or firmware initialisation.
+ */
+#define SA_TRIGGER_LOW 0x00000008
+#define SA_TRIGGER_HIGH 0x00000004
+#define SA_TRIGGER_FALLING 0x00000002
+#define SA_TRIGGER_RISING 0x00000001
+#define SA_TRIGGER_MASK (SA_TRIGGER_HIGH|SA_TRIGGER_LOW|\
+ SA_TRIGGER_RISING|SA_TRIGGER_FALLING)
+
/*
* Real Time signals may be queued.
*/
diff --git a/trunk/include/net/irda/irda_device.h b/trunk/include/net/irda/irda_device.h
index bca19ca7bdd4..0575c59a5c96 100644
--- a/trunk/include/net/irda/irda_device.h
+++ b/trunk/include/net/irda/irda_device.h
@@ -160,7 +160,7 @@ typedef struct {
int irq, irq2; /* Interrupts used */
int dma, dma2; /* DMA channel(s) used */
int fifo_size; /* FIFO size */
- int irqflags; /* interrupt flags (ie, IRQF_SHARED|IRQF_DISABLED) */
+ int irqflags; /* interrupt flags (ie, SA_SHIRQ|SA_INTERRUPT) */
int direction; /* Link direction, used by some FIR drivers */
int enabled; /* Powered on? */
int suspended; /* Suspended by APM */
diff --git a/trunk/include/sound/initval.h b/trunk/include/sound/initval.h
index 2ae76efc696f..d45170b9e0b7 100644
--- a/trunk/include/sound/initval.h
+++ b/trunk/include/sound/initval.h
@@ -62,7 +62,7 @@ static int snd_legacy_find_free_irq(int *irq_table)
{
while (*irq_table != -1) {
if (!request_irq(*irq_table, snd_legacy_empty_irq_handler,
- IRQF_DISABLED | IRQF_PROBE_SHARED, "ALSA Test IRQ",
+ SA_INTERRUPT | SA_PROBEIRQ, "ALSA Test IRQ",
(void *) irq_table)) {
free_irq(*irq_table, (void *) irq_table);
return *irq_table;
diff --git a/trunk/kernel/irq/handle.c b/trunk/kernel/irq/handle.c
index 6070e0464690..5a360dd4331b 100644
--- a/trunk/kernel/irq/handle.c
+++ b/trunk/kernel/irq/handle.c
@@ -113,7 +113,7 @@ irqreturn_t handle_IRQ_event(unsigned int irq, struct pt_regs *regs,
irqreturn_t ret, retval = IRQ_NONE;
unsigned int status = 0;
- if (!(action->flags & IRQF_DISABLED))
+ if (!(action->flags & SA_INTERRUPT))
local_irq_enable();
do {
@@ -124,7 +124,7 @@ irqreturn_t handle_IRQ_event(unsigned int irq, struct pt_regs *regs,
action = action->next;
} while (action);
- if (status & IRQF_SAMPLE_RANDOM)
+ if (status & SA_SAMPLE_RANDOM)
add_interrupt_randomness(irq);
local_irq_disable();
diff --git a/trunk/kernel/irq/manage.c b/trunk/kernel/irq/manage.c
index fede5fa351df..fcce5181e453 100644
--- a/trunk/kernel/irq/manage.c
+++ b/trunk/kernel/irq/manage.c
@@ -167,7 +167,7 @@ int can_request_irq(unsigned int irq, unsigned long irqflags)
action = irq_desc[irq].action;
if (action)
- if (irqflags & action->flags & IRQF_SHARED)
+ if (irqflags & action->flags & SA_SHIRQ)
action = NULL;
return !action;
@@ -205,7 +205,7 @@ int setup_irq(unsigned int irq, struct irqaction *new)
* so we have to be careful not to interfere with a
* running system.
*/
- if (new->flags & IRQF_SAMPLE_RANDOM) {
+ if (new->flags & SA_SAMPLE_RANDOM) {
/*
* This function might sleep, we want to call it first,
* outside of the atomic block.
@@ -227,17 +227,17 @@ int setup_irq(unsigned int irq, struct irqaction *new)
/*
* Can't share interrupts unless both agree to and are
* the same type (level, edge, polarity). So both flag
- * fields must have IRQF_SHARED set and the bits which
+ * fields must have SA_SHIRQ set and the bits which
* set the trigger type must match.
*/
- if (!((old->flags & new->flags) & IRQF_SHARED) ||
- ((old->flags ^ new->flags) & IRQF_TRIGGER_MASK))
+ if (!((old->flags & new->flags) & SA_SHIRQ) ||
+ ((old->flags ^ new->flags) & SA_TRIGGER_MASK))
goto mismatch;
-#if defined(CONFIG_IRQ_PER_CPU) && defined(IRQF_PERCPU)
+#if defined(CONFIG_IRQ_PER_CPU) && defined(SA_PERCPU_IRQ)
/* All handlers must agree on per-cpuness */
- if ((old->flags & IRQF_PERCPU) !=
- (new->flags & IRQF_PERCPU))
+ if ((old->flags & SA_PERCPU_IRQ) !=
+ (new->flags & SA_PERCPU_IRQ))
goto mismatch;
#endif
@@ -250,24 +250,24 @@ int setup_irq(unsigned int irq, struct irqaction *new)
}
*p = new;
-#if defined(CONFIG_IRQ_PER_CPU) && defined(IRQF_PERCPU)
- if (new->flags & IRQF_PERCPU)
+#if defined(CONFIG_IRQ_PER_CPU) && defined(SA_PERCPU_IRQ)
+ if (new->flags & SA_PERCPU_IRQ)
desc->status |= IRQ_PER_CPU;
#endif
if (!shared) {
irq_chip_set_defaults(desc->chip);
/* Setup the type (level, edge polarity) if configured: */
- if (new->flags & IRQF_TRIGGER_MASK) {
+ if (new->flags & SA_TRIGGER_MASK) {
if (desc->chip && desc->chip->set_type)
desc->chip->set_type(irq,
- new->flags & IRQF_TRIGGER_MASK);
+ new->flags & SA_TRIGGER_MASK);
else
/*
- * IRQF_TRIGGER_* but the PIC does not support
+ * SA_TRIGGER_* but the PIC does not support
* multiple flow-types?
*/
- printk(KERN_WARNING "No IRQF_TRIGGER set_type "
+ printk(KERN_WARNING "No SA_TRIGGER set_type "
"function for IRQ %d (%s)\n", irq,
desc->chip ? desc->chip->name :
"unknown");
@@ -299,7 +299,7 @@ int setup_irq(unsigned int irq, struct irqaction *new)
mismatch:
spin_unlock_irqrestore(&desc->lock, flags);
- if (!(new->flags & IRQF_PROBE_SHARED)) {
+ if (!(new->flags & SA_PROBEIRQ)) {
printk(KERN_ERR "IRQ handler type mismatch for IRQ %d\n", irq);
dump_stack();
}
@@ -398,9 +398,9 @@ EXPORT_SYMBOL(free_irq);
*
* Flags:
*
- * IRQF_SHARED Interrupt is shared
- * IRQF_DISABLED Disable local interrupts while processing
- * IRQF_SAMPLE_RANDOM The interrupt can be used for entropy
+ * SA_SHIRQ Interrupt is shared
+ * SA_INTERRUPT Disable local interrupts while processing
+ * SA_SAMPLE_RANDOM The interrupt can be used for entropy
*
*/
int request_irq(unsigned int irq,
@@ -416,7 +416,7 @@ int request_irq(unsigned int irq,
* which interrupt is which (messes up the interrupt freeing
* logic etc).
*/
- if ((irqflags & IRQF_SHARED) && !dev_id)
+ if ((irqflags & SA_SHIRQ) && !dev_id)
return -EINVAL;
if (irq >= NR_IRQS)
return -EINVAL;
diff --git a/trunk/kernel/irq/spurious.c b/trunk/kernel/irq/spurious.c
index 417e98092cf2..b483deed311c 100644
--- a/trunk/kernel/irq/spurious.c
+++ b/trunk/kernel/irq/spurious.c
@@ -36,7 +36,7 @@ static int misrouted_irq(int irq, struct pt_regs *regs)
* Already running: If it is shared get the other
* CPU to go looking for our mystery interrupt too
*/
- if (desc->action && (desc->action->flags & IRQF_SHARED))
+ if (desc->action && (desc->action->flags & SA_SHIRQ))
desc->status |= IRQ_PENDING;
spin_unlock(&desc->lock);
continue;
@@ -48,7 +48,7 @@ static int misrouted_irq(int irq, struct pt_regs *regs)
while (action) {
/* Only shared IRQ handlers are safe to call */
- if (action->flags & IRQF_SHARED) {
+ if (action->flags & SA_SHIRQ) {
if (action->handler(i, action->dev_id, regs) ==
IRQ_HANDLED)
ok = 1;
diff --git a/trunk/sound/arm/aaci.c b/trunk/sound/arm/aaci.c
index 8435fdd1c87c..6b18225672c7 100644
--- a/trunk/sound/arm/aaci.c
+++ b/trunk/sound/arm/aaci.c
@@ -360,7 +360,7 @@ static int aaci_pcm_open(struct aaci *aaci, struct snd_pcm_substream *substream,
if (ret)
goto out;
- ret = request_irq(aaci->dev->irq[0], aaci_irq, IRQF_SHARED|IRQF_DISABLED,
+ ret = request_irq(aaci->dev->irq[0], aaci_irq, SA_SHIRQ|SA_INTERRUPT,
DRIVER_NAME, aaci);
if (ret)
goto out;
diff --git a/trunk/sound/drivers/mpu401/mpu401.c b/trunk/sound/drivers/mpu401/mpu401.c
index 17cc105b26fc..8b80024968be 100644
--- a/trunk/sound/drivers/mpu401/mpu401.c
+++ b/trunk/sound/drivers/mpu401/mpu401.c
@@ -83,7 +83,7 @@ static int snd_mpu401_create(int dev, struct snd_card **rcard)
if ((err = snd_mpu401_uart_new(card, 0,
MPU401_HW_MPU401,
port[dev], 0,
- irq[dev], irq[dev] >= 0 ? IRQF_DISABLED : 0, NULL)) < 0) {
+ irq[dev], irq[dev] >= 0 ? SA_INTERRUPT : 0, NULL)) < 0) {
printk(KERN_ERR "MPU401 not detected at 0x%lx\n", port[dev]);
goto _err;
}
diff --git a/trunk/sound/drivers/mtpav.c b/trunk/sound/drivers/mtpav.c
index e064d6c5685b..474eed06e70f 100644
--- a/trunk/sound/drivers/mtpav.c
+++ b/trunk/sound/drivers/mtpav.c
@@ -590,7 +590,7 @@ static int __init snd_mtpav_get_ISA(struct mtpav * mcard)
return -EBUSY;
}
mcard->port = port;
- if (request_irq(irq, snd_mtpav_irqh, IRQF_DISABLED, "MOTU MTPAV", mcard)) {
+ if (request_irq(irq, snd_mtpav_irqh, SA_INTERRUPT, "MOTU MTPAV", mcard)) {
snd_printk("MTVAP IRQ %d busy\n", irq);
return -EBUSY;
}
diff --git a/trunk/sound/drivers/serial-u16550.c b/trunk/sound/drivers/serial-u16550.c
index 52afb4bd2079..2330fec505da 100644
--- a/trunk/sound/drivers/serial-u16550.c
+++ b/trunk/sound/drivers/serial-u16550.c
@@ -795,7 +795,7 @@ static int __init snd_uart16550_create(struct snd_card *card,
if (irq >= 0 && irq != SNDRV_AUTO_IRQ) {
if (request_irq(irq, snd_uart16550_interrupt,
- IRQF_DISABLED, "Serial MIDI", (void *) uart)) {
+ SA_INTERRUPT, "Serial MIDI", (void *) uart)) {
snd_printk("irq %d busy. Using Polling.\n", irq);
} else {
uart->irq = irq;
diff --git a/trunk/sound/isa/ad1816a/ad1816a.c b/trunk/sound/isa/ad1816a/ad1816a.c
index b33a5fb59ec2..31f299aed281 100644
--- a/trunk/sound/isa/ad1816a/ad1816a.c
+++ b/trunk/sound/isa/ad1816a/ad1816a.c
@@ -232,7 +232,7 @@ static int __devinit snd_card_ad1816a_probe(int dev, struct pnp_card_link *pcard
if (mpu_port[dev] > 0) {
if (snd_mpu401_uart_new(card, 0, MPU401_HW_MPU401,
- mpu_port[dev], 0, mpu_irq[dev], IRQF_DISABLED,
+ mpu_port[dev], 0, mpu_irq[dev], SA_INTERRUPT,
NULL) < 0)
printk(KERN_ERR PFX "no MPU-401 device at 0x%lx.\n", mpu_port[dev]);
}
diff --git a/trunk/sound/isa/ad1816a/ad1816a_lib.c b/trunk/sound/isa/ad1816a/ad1816a_lib.c
index 8fcf2c151823..fd8fe16c09ee 100644
--- a/trunk/sound/isa/ad1816a/ad1816a_lib.c
+++ b/trunk/sound/isa/ad1816a/ad1816a_lib.c
@@ -599,7 +599,7 @@ int __devinit snd_ad1816a_create(struct snd_card *card,
snd_ad1816a_free(chip);
return -EBUSY;
}
- if (request_irq(irq, snd_ad1816a_interrupt, IRQF_DISABLED, "AD1816A", (void *) chip)) {
+ if (request_irq(irq, snd_ad1816a_interrupt, SA_INTERRUPT, "AD1816A", (void *) chip)) {
snd_printk(KERN_ERR "ad1816a: can't grab IRQ %d\n", irq);
snd_ad1816a_free(chip);
return -EBUSY;
diff --git a/trunk/sound/isa/ad1848/ad1848_lib.c b/trunk/sound/isa/ad1848/ad1848_lib.c
index e711f87d5fd1..e0f8baa843b9 100644
--- a/trunk/sound/isa/ad1848/ad1848_lib.c
+++ b/trunk/sound/isa/ad1848/ad1848_lib.c
@@ -902,7 +902,7 @@ int snd_ad1848_create(struct snd_card *card,
snd_ad1848_free(chip);
return -EBUSY;
}
- if (request_irq(irq, snd_ad1848_interrupt, IRQF_DISABLED, "AD1848", (void *) chip)) {
+ if (request_irq(irq, snd_ad1848_interrupt, SA_INTERRUPT, "AD1848", (void *) chip)) {
snd_printk(KERN_ERR "ad1848: can't grab IRQ %d\n", irq);
snd_ad1848_free(chip);
return -EBUSY;
diff --git a/trunk/sound/isa/als100.c b/trunk/sound/isa/als100.c
index f2bcfb2cf5f5..a52bd8a14c9b 100644
--- a/trunk/sound/isa/als100.c
+++ b/trunk/sound/isa/als100.c
@@ -250,7 +250,7 @@ static int __devinit snd_card_als100_probe(int dev,
if (mpu_port[dev] > 0 && mpu_port[dev] != SNDRV_AUTO_PORT) {
if (snd_mpu401_uart_new(card, 0, MPU401_HW_ALS100,
mpu_port[dev], 0,
- mpu_irq[dev], IRQF_DISABLED,
+ mpu_irq[dev], SA_INTERRUPT,
NULL) < 0)
snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx\n", mpu_port[dev]);
}
diff --git a/trunk/sound/isa/azt2320.c b/trunk/sound/isa/azt2320.c
index b615538a928d..15e59283aac6 100644
--- a/trunk/sound/isa/azt2320.c
+++ b/trunk/sound/isa/azt2320.c
@@ -279,7 +279,7 @@ static int __devinit snd_card_azt2320_probe(int dev,
if (mpu_port[dev] > 0 && mpu_port[dev] != SNDRV_AUTO_PORT) {
if (snd_mpu401_uart_new(card, 0, MPU401_HW_AZT2320,
mpu_port[dev], 0,
- mpu_irq[dev], IRQF_DISABLED,
+ mpu_irq[dev], SA_INTERRUPT,
NULL) < 0)
snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx\n", mpu_port[dev]);
}
diff --git a/trunk/sound/isa/cs423x/cs4231.c b/trunk/sound/isa/cs423x/cs4231.c
index 696a5c86bcfa..397310f358b7 100644
--- a/trunk/sound/isa/cs423x/cs4231.c
+++ b/trunk/sound/isa/cs423x/cs4231.c
@@ -122,7 +122,7 @@ static int __init snd_cs4231_probe(struct platform_device *pdev)
if (snd_mpu401_uart_new(card, 0, MPU401_HW_CS4232,
mpu_port[dev], 0,
mpu_irq[dev],
- mpu_irq[dev] >= 0 ? IRQF_DISABLED : 0,
+ mpu_irq[dev] >= 0 ? SA_INTERRUPT : 0,
NULL) < 0)
printk(KERN_WARNING "cs4231: MPU401 not detected\n");
}
diff --git a/trunk/sound/isa/cs423x/cs4231_lib.c b/trunk/sound/isa/cs423x/cs4231_lib.c
index fbb20176cca4..823db8246701 100644
--- a/trunk/sound/isa/cs423x/cs4231_lib.c
+++ b/trunk/sound/isa/cs423x/cs4231_lib.c
@@ -1454,7 +1454,7 @@ int snd_cs4231_create(struct snd_card *card,
return -ENODEV;
}
chip->cport = cport;
- if (!(hwshare & CS4231_HWSHARE_IRQ) && request_irq(irq, snd_cs4231_interrupt, IRQF_DISABLED, "CS4231", (void *) chip)) {
+ if (!(hwshare & CS4231_HWSHARE_IRQ) && request_irq(irq, snd_cs4231_interrupt, SA_INTERRUPT, "CS4231", (void *) chip)) {
snd_printk(KERN_ERR "cs4231: can't grab IRQ %d\n", irq);
snd_cs4231_free(chip);
return -EBUSY;
diff --git a/trunk/sound/isa/cs423x/cs4236.c b/trunk/sound/isa/cs423x/cs4236.c
index 07ffd5c22e81..f7fa779347ff 100644
--- a/trunk/sound/isa/cs423x/cs4236.c
+++ b/trunk/sound/isa/cs423x/cs4236.c
@@ -535,7 +535,7 @@ static int __devinit snd_cs423x_probe(struct snd_card *card, int dev)
if (snd_mpu401_uart_new(card, 0, MPU401_HW_CS4232,
mpu_port[dev], 0,
mpu_irq[dev],
- mpu_irq[dev] >= 0 ? IRQF_DISABLED : 0, NULL) < 0)
+ mpu_irq[dev] >= 0 ? SA_INTERRUPT : 0, NULL) < 0)
printk(KERN_WARNING IDENT ": MPU401 not detected\n");
}
diff --git a/trunk/sound/isa/dt019x.c b/trunk/sound/isa/dt019x.c
index c20a4b1b1536..0acb4e5da47f 100644
--- a/trunk/sound/isa/dt019x.c
+++ b/trunk/sound/isa/dt019x.c
@@ -240,7 +240,7 @@ static int __devinit snd_card_dt019x_probe(int dev, struct pnp_card_link *pcard,
MPU401_HW_MPU401,
mpu_port[dev], 0,
mpu_irq[dev],
- mpu_irq[dev] >= 0 ? IRQF_DISABLED : 0,
+ mpu_irq[dev] >= 0 ? SA_INTERRUPT : 0,
NULL) < 0)
snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx ?\n", mpu_port[dev]);
}
diff --git a/trunk/sound/isa/es1688/es1688.c b/trunk/sound/isa/es1688/es1688.c
index 7f29f56e405b..e90689ee162f 100644
--- a/trunk/sound/isa/es1688/es1688.c
+++ b/trunk/sound/isa/es1688/es1688.c
@@ -153,7 +153,7 @@ static int __init snd_es1688_probe(struct platform_device *pdev)
if ((err = snd_mpu401_uart_new(card, 0, MPU401_HW_ES1688,
chip->mpu_port, 0,
xmpu_irq,
- IRQF_DISABLED,
+ SA_INTERRUPT,
NULL)) < 0)
goto _err;
}
diff --git a/trunk/sound/isa/es1688/es1688_lib.c b/trunk/sound/isa/es1688/es1688_lib.c
index 7e985d3bc510..702ad51ee9d5 100644
--- a/trunk/sound/isa/es1688/es1688_lib.c
+++ b/trunk/sound/isa/es1688/es1688_lib.c
@@ -659,7 +659,7 @@ int snd_es1688_create(struct snd_card *card,
snd_es1688_free(chip);
return -EBUSY;
}
- if (request_irq(irq, snd_es1688_interrupt, IRQF_DISABLED, "ES1688", (void *) chip)) {
+ if (request_irq(irq, snd_es1688_interrupt, SA_INTERRUPT, "ES1688", (void *) chip)) {
snd_printk(KERN_ERR "es1688: can't grab IRQ %d\n", irq);
snd_es1688_free(chip);
return -EBUSY;
diff --git a/trunk/sound/isa/es18xx.c b/trunk/sound/isa/es18xx.c
index 34998de9968c..af60b0bc8115 100644
--- a/trunk/sound/isa/es18xx.c
+++ b/trunk/sound/isa/es18xx.c
@@ -1837,7 +1837,7 @@ static int __devinit snd_es18xx_new_device(struct snd_card *card,
return -EBUSY;
}
- if (request_irq(irq, snd_es18xx_interrupt, IRQF_DISABLED, "ES18xx", (void *) chip)) {
+ if (request_irq(irq, snd_es18xx_interrupt, SA_INTERRUPT, "ES18xx", (void *) chip)) {
snd_es18xx_free(chip);
snd_printk(KERN_ERR PFX "unable to grap IRQ %d\n", irq);
return -EBUSY;
diff --git a/trunk/sound/isa/gus/gus_main.c b/trunk/sound/isa/gus/gus_main.c
index b680fddf0d74..53eeaf37007d 100644
--- a/trunk/sound/isa/gus/gus_main.c
+++ b/trunk/sound/isa/gus/gus_main.c
@@ -179,7 +179,7 @@ int snd_gus_create(struct snd_card *card,
snd_gus_free(gus);
return -EBUSY;
}
- if (irq >= 0 && request_irq(irq, snd_gus_interrupt, IRQF_DISABLED, "GUS GF1", (void *) gus)) {
+ if (irq >= 0 && request_irq(irq, snd_gus_interrupt, SA_INTERRUPT, "GUS GF1", (void *) gus)) {
snd_printk(KERN_ERR "gus: can't grab irq %d\n", irq);
snd_gus_free(gus);
return -EBUSY;
diff --git a/trunk/sound/isa/gus/gusextreme.c b/trunk/sound/isa/gus/gusextreme.c
index 22cdddbfd824..05852fcc613b 100644
--- a/trunk/sound/isa/gus/gusextreme.c
+++ b/trunk/sound/isa/gus/gusextreme.c
@@ -301,7 +301,7 @@ static int __init snd_gusextreme_probe(struct platform_device *pdev)
(err = snd_mpu401_uart_new(card, 0, MPU401_HW_ES1688,
es1688->mpu_port, 0,
xmpu_irq,
- IRQF_DISABLED,
+ SA_INTERRUPT,
NULL)) < 0)
goto out;
diff --git a/trunk/sound/isa/gus/gusmax.c b/trunk/sound/isa/gus/gusmax.c
index ac11cae8589a..fcf2c8fe6f94 100644
--- a/trunk/sound/isa/gus/gusmax.c
+++ b/trunk/sound/isa/gus/gusmax.c
@@ -292,7 +292,7 @@ static int __init snd_gusmax_probe(struct platform_device *pdev)
goto _err;
}
- if (request_irq(xirq, snd_gusmax_interrupt, IRQF_DISABLED, "GUS MAX", (void *)maxcard)) {
+ if (request_irq(xirq, snd_gusmax_interrupt, SA_INTERRUPT, "GUS MAX", (void *)maxcard)) {
snd_printk(KERN_ERR PFX "unable to grab IRQ %d\n", xirq);
err = -EBUSY;
goto _err;
diff --git a/trunk/sound/isa/gus/interwave.c b/trunk/sound/isa/gus/interwave.c
index ea69f25506fb..c1c86e0fa56d 100644
--- a/trunk/sound/isa/gus/interwave.c
+++ b/trunk/sound/isa/gus/interwave.c
@@ -706,7 +706,7 @@ static int __devinit snd_interwave_probe(struct snd_card *card, int dev)
if ((err = snd_gus_initialize(gus)) < 0)
return err;
- if (request_irq(xirq, snd_interwave_interrupt, IRQF_DISABLED,
+ if (request_irq(xirq, snd_interwave_interrupt, SA_INTERRUPT,
"InterWave", iwcard)) {
snd_printk(KERN_ERR PFX "unable to grab IRQ %d\n", xirq);
return -EBUSY;
diff --git a/trunk/sound/isa/opl3sa2.c b/trunk/sound/isa/opl3sa2.c
index 4031b61b797f..647a996791e9 100644
--- a/trunk/sound/isa/opl3sa2.c
+++ b/trunk/sound/isa/opl3sa2.c
@@ -683,7 +683,7 @@ static int __devinit snd_opl3sa2_probe(struct snd_card *card, int dev)
chip->single_dma = 1;
if ((err = snd_opl3sa2_detect(chip)) < 0)
return err;
- if (request_irq(xirq, snd_opl3sa2_interrupt, IRQF_DISABLED, "OPL3-SA2", chip)) {
+ if (request_irq(xirq, snd_opl3sa2_interrupt, SA_INTERRUPT, "OPL3-SA2", chip)) {
snd_printk(KERN_ERR PFX "can't grab IRQ %d\n", xirq);
return -ENODEV;
}
diff --git a/trunk/sound/isa/opti9xx/miro.c b/trunk/sound/isa/opti9xx/miro.c
index 1dd98375ac85..283817f2de75 100644
--- a/trunk/sound/isa/opti9xx/miro.c
+++ b/trunk/sound/isa/opti9xx/miro.c
@@ -1382,7 +1382,7 @@ static int __init snd_miro_probe(struct platform_device *devptr)
rmidi = NULL;
else
if ((error = snd_mpu401_uart_new(card, 0, MPU401_HW_MPU401,
- miro->mpu_port, 0, miro->mpu_irq, IRQF_DISABLED,
+ miro->mpu_port, 0, miro->mpu_irq, SA_INTERRUPT,
&rmidi)))
snd_printk(KERN_WARNING "no MPU-401 device at 0x%lx?\n", miro->mpu_port);
diff --git a/trunk/sound/isa/opti9xx/opti92x-ad1848.c b/trunk/sound/isa/opti9xx/opti92x-ad1848.c
index 9d528ae00bff..8ee0d70536f9 100644
--- a/trunk/sound/isa/opti9xx/opti92x-ad1848.c
+++ b/trunk/sound/isa/opti9xx/opti92x-ad1848.c
@@ -1291,7 +1291,7 @@ static int snd_opti93x_create(struct snd_card *card, struct snd_opti9xx *chip,
}
codec->dma2 = chip->dma2;
- if (request_irq(chip->irq, snd_opti93x_interrupt, IRQF_DISABLED, DRIVER_NAME" - WSS", codec)) {
+ if (request_irq(chip->irq, snd_opti93x_interrupt, SA_INTERRUPT, DRIVER_NAME" - WSS", codec)) {
snd_printk(KERN_ERR "opti9xx: can't grab IRQ %d\n", chip->irq);
snd_opti93x_free(codec);
return -EBUSY;
@@ -1863,7 +1863,7 @@ static int __init snd_opti9xx_probe(struct snd_card *card)
rmidi = NULL;
else
if ((error = snd_mpu401_uart_new(card, 0, MPU401_HW_MPU401,
- chip->mpu_port, 0, chip->mpu_irq, IRQF_DISABLED,
+ chip->mpu_port, 0, chip->mpu_irq, SA_INTERRUPT,
&rmidi)))
snd_printk(KERN_WARNING "no MPU-401 device at 0x%lx?\n",
chip->mpu_port);
diff --git a/trunk/sound/isa/sb/sb_common.c b/trunk/sound/isa/sb/sb_common.c
index f17de2bdd9e0..f343a8211d2d 100644
--- a/trunk/sound/isa/sb/sb_common.c
+++ b/trunk/sound/isa/sb/sb_common.c
@@ -232,7 +232,7 @@ int snd_sbdsp_create(struct snd_card *card,
chip->port = port;
if (request_irq(irq, irq_handler, hardware == SB_HW_ALS4000 ?
- IRQF_DISABLED | IRQF_SHARED : IRQF_DISABLED,
+ SA_INTERRUPT | SA_SHIRQ : SA_INTERRUPT,
"SoundBlaster", (void *) chip)) {
snd_printk(KERN_ERR "sb: can't grab irq %d\n", irq);
snd_sbdsp_free(chip);
diff --git a/trunk/sound/isa/sgalaxy.c b/trunk/sound/isa/sgalaxy.c
index 8742fa517491..09c8e8c6b5e3 100644
--- a/trunk/sound/isa/sgalaxy.c
+++ b/trunk/sound/isa/sgalaxy.c
@@ -147,7 +147,7 @@ static int __init snd_sgalaxy_setup_wss(unsigned long port, int irq, int dma)
if (tmp < 0)
return -EINVAL;
- if (request_irq(irq, snd_sgalaxy_dummy_interrupt, IRQF_DISABLED, "sgalaxy", NULL)) {
+ if (request_irq(irq, snd_sgalaxy_dummy_interrupt, SA_INTERRUPT, "sgalaxy", NULL)) {
snd_printk(KERN_ERR "sgalaxy: can't grab irq %d\n", irq);
return -EIO;
}
diff --git a/trunk/sound/isa/sscape.c b/trunk/sound/isa/sscape.c
index b1f25823c652..27271c9446dc 100644
--- a/trunk/sound/isa/sscape.c
+++ b/trunk/sound/isa/sscape.c
@@ -900,7 +900,7 @@ static int __devinit create_mpu401(struct snd_card *card, int devnum, unsigned l
if ((err = snd_mpu401_uart_new(card, devnum,
MPU401_HW_MPU401,
port, MPU401_INFO_INTEGRATED,
- irq, IRQF_DISABLED,
+ irq, SA_INTERRUPT,
&rawmidi)) == 0) {
struct snd_mpu401 *mpu = (struct snd_mpu401 *) rawmidi->private_data;
mpu->open_input = mpu401_open;
diff --git a/trunk/sound/isa/wavefront/wavefront.c b/trunk/sound/isa/wavefront/wavefront.c
index a8f8d2fa9d76..9eb27082c659 100644
--- a/trunk/sound/isa/wavefront/wavefront.c
+++ b/trunk/sound/isa/wavefront/wavefront.c
@@ -467,7 +467,7 @@ snd_wavefront_probe (struct snd_card *card, int dev)
return -EBUSY;
}
if (request_irq(ics2115_irq[dev], snd_wavefront_ics2115_interrupt,
- IRQF_DISABLED, "ICS2115", acard)) {
+ SA_INTERRUPT, "ICS2115", acard)) {
snd_printk(KERN_ERR "unable to use ICS2115 IRQ %d\n", ics2115_irq[dev]);
return -EBUSY;
}
@@ -497,7 +497,7 @@ snd_wavefront_probe (struct snd_card *card, int dev)
if ((err = snd_mpu401_uart_new(card, midi_dev, MPU401_HW_CS4232,
cs4232_mpu_port[dev], 0,
cs4232_mpu_irq[dev],
- IRQF_DISABLED,
+ SA_INTERRUPT,
NULL)) < 0) {
snd_printk (KERN_ERR "can't allocate CS4232 MPU-401 device\n");
return err;
diff --git a/trunk/sound/mips/au1x00.c b/trunk/sound/mips/au1x00.c
index c31b38659221..cf476fe1ac56 100644
--- a/trunk/sound/mips/au1x00.c
+++ b/trunk/sound/mips/au1x00.c
@@ -465,13 +465,13 @@ snd_au1000_pcm_new(struct snd_au1000 *au1000)
flags = claim_dma_lock();
if ((au1000->stream[PLAYBACK]->dma = request_au1000_dma(DMA_ID_AC97C_TX,
- "AC97 TX", au1000_dma_interrupt, IRQF_DISABLED,
+ "AC97 TX", au1000_dma_interrupt, SA_INTERRUPT,
au1000->stream[PLAYBACK])) < 0) {
release_dma_lock(flags);
return -EBUSY;
}
if ((au1000->stream[CAPTURE]->dma = request_au1000_dma(DMA_ID_AC97C_RX,
- "AC97 RX", au1000_dma_interrupt, IRQF_DISABLED,
+ "AC97 RX", au1000_dma_interrupt, SA_INTERRUPT,
au1000->stream[CAPTURE])) < 0){
release_dma_lock(flags);
return -EBUSY;
diff --git a/trunk/sound/oss/ad1889.c b/trunk/sound/oss/ad1889.c
index f56f870b4840..0b09b8b4ec7d 100644
--- a/trunk/sound/oss/ad1889.c
+++ b/trunk/sound/oss/ad1889.c
@@ -1010,7 +1010,7 @@ static int __devinit ad1889_probe(struct pci_dev *pcidev, const struct pci_devic
goto out2;
}
- if (request_irq(pcidev->irq, ad1889_interrupt, IRQF_SHARED, DEVNAME, dev) != 0) {
+ if (request_irq(pcidev->irq, ad1889_interrupt, SA_SHIRQ, DEVNAME, dev) != 0) {
printk(KERN_ERR DEVNAME ": unable to request interrupt\n");
goto out3;
}
diff --git a/trunk/sound/oss/ali5455.c b/trunk/sound/oss/ali5455.c
index 70dcd703a66f..62bb936b1f3d 100644
--- a/trunk/sound/oss/ali5455.c
+++ b/trunk/sound/oss/ali5455.c
@@ -3460,7 +3460,7 @@ static int __devinit ali_probe(struct pci_dev *pci_dev,
card->channel[4].num = 4;
/* claim our iospace and irq */
request_region(card->iobase, 256, card_names[pci_id->driver_data]);
- if (request_irq(card->irq, &ali_interrupt, IRQF_SHARED,
+ if (request_irq(card->irq, &ali_interrupt, SA_SHIRQ,
card_names[pci_id->driver_data], card)) {
printk(KERN_ERR "ali_audio: unable to allocate irq %d\n",
card->irq);
diff --git a/trunk/sound/oss/au1000.c b/trunk/sound/oss/au1000.c
index e3796231452a..eacb0aef21e1 100644
--- a/trunk/sound/oss/au1000.c
+++ b/trunk/sound/oss/au1000.c
@@ -2015,14 +2015,14 @@ static int __devinit au1000_probe(void)
if ((s->dma_dac.dmanr = request_au1000_dma(DMA_ID_AC97C_TX,
"audio DAC",
dac_dma_interrupt,
- IRQF_DISABLED, s)) < 0) {
+ SA_INTERRUPT, s)) < 0) {
err("Can't get DAC DMA");
goto err_dma1;
}
if ((s->dma_adc.dmanr = request_au1000_dma(DMA_ID_AC97C_RX,
"audio ADC",
adc_dma_interrupt,
- IRQF_DISABLED, s)) < 0) {
+ SA_INTERRUPT, s)) < 0) {
err("Can't get ADC DMA");
goto err_dma2;
}
diff --git a/trunk/sound/oss/btaudio.c b/trunk/sound/oss/btaudio.c
index 324a81fd3a3b..bfe3b534ef30 100644
--- a/trunk/sound/oss/btaudio.c
+++ b/trunk/sound/oss/btaudio.c
@@ -966,7 +966,7 @@ static int __devinit btaudio_probe(struct pci_dev *pci_dev,
btwrite(~0U, REG_INT_STAT);
pci_set_master(pci_dev);
- if ((rc = request_irq(bta->irq, btaudio_irq, IRQF_SHARED|IRQF_DISABLED,
+ if ((rc = request_irq(bta->irq, btaudio_irq, SA_SHIRQ|SA_INTERRUPT,
"btaudio",(void *)bta)) < 0) {
printk(KERN_WARNING
"btaudio: can't request irq (rc=%d)\n",rc);
diff --git a/trunk/sound/oss/cmpci.c b/trunk/sound/oss/cmpci.c
index ea51aafaf401..de60a059ff5f 100644
--- a/trunk/sound/oss/cmpci.c
+++ b/trunk/sound/oss/cmpci.c
@@ -3122,7 +3122,7 @@ static int __devinit cm_probe(struct pci_dev *pcidev, const struct pci_device_id
wrmixer(s, DSP_MIX_DATARESETIDX, 0);
/* request irq */
- if ((ret = request_irq(s->irq, cm_interrupt, IRQF_SHARED, "cmpci", s))) {
+ if ((ret = request_irq(s->irq, cm_interrupt, SA_SHIRQ, "cmpci", s))) {
printk(KERN_ERR "cmpci: irq %u in use\n", s->irq);
goto err_irq;
}
diff --git a/trunk/sound/oss/cs4281/cs4281m.c b/trunk/sound/oss/cs4281/cs4281m.c
index 0400a416dc93..0004442f9b7e 100644
--- a/trunk/sound/oss/cs4281/cs4281m.c
+++ b/trunk/sound/oss/cs4281/cs4281m.c
@@ -4346,7 +4346,7 @@ static int __devinit cs4281_probe(struct pci_dev *pcidev,
s->pcidev = pcidev;
s->irq = pcidev->irq;
if (request_irq
- (s->irq, cs4281_interrupt, IRQF_SHARED, "Crystal CS4281", s)) {
+ (s->irq, cs4281_interrupt, SA_SHIRQ, "Crystal CS4281", s)) {
CS_DBGOUT(CS_INIT | CS_ERROR, 1,
printk(KERN_ERR "cs4281: irq %u in use\n", s->irq));
goto err_irq;
diff --git a/trunk/sound/oss/cs46xx.c b/trunk/sound/oss/cs46xx.c
index 5195bf933cb8..994c71e986e4 100644
--- a/trunk/sound/oss/cs46xx.c
+++ b/trunk/sound/oss/cs46xx.c
@@ -5177,7 +5177,7 @@ static int __devinit cs46xx_probe(struct pci_dev *pci_dev,
card->ba1.name.reg == 0)
goto fail2;
- if (request_irq(card->irq, &cs_interrupt, IRQF_SHARED, "cs46xx", card)) {
+ if (request_irq(card->irq, &cs_interrupt, SA_SHIRQ, "cs46xx", card)) {
printk(KERN_ERR "cs46xx: unable to allocate irq %d\n", card->irq);
goto fail2;
}
diff --git a/trunk/sound/oss/emu10k1/main.c b/trunk/sound/oss/emu10k1/main.c
index c4ce94d6e10c..3721c5857b90 100644
--- a/trunk/sound/oss/emu10k1/main.c
+++ b/trunk/sound/oss/emu10k1/main.c
@@ -1301,7 +1301,7 @@ static int __devinit emu10k1_probe(struct pci_dev *pci_dev, const struct pci_dev
card->pci_dev = pci_dev;
/* Reserve IRQ Line */
- if (request_irq(card->irq, emu10k1_interrupt, IRQF_SHARED, card_names[pci_id->driver_data], card)) {
+ if (request_irq(card->irq, emu10k1_interrupt, SA_SHIRQ, card_names[pci_id->driver_data], card)) {
printk(KERN_ERR "emu10k1: IRQ in use\n");
ret = -EBUSY;
goto err_irq;
diff --git a/trunk/sound/oss/es1370.c b/trunk/sound/oss/es1370.c
index 13f483149737..094f569cc6e0 100644
--- a/trunk/sound/oss/es1370.c
+++ b/trunk/sound/oss/es1370.c
@@ -2650,7 +2650,7 @@ static int __devinit es1370_probe(struct pci_dev *pcidev, const struct pci_devic
ret = -EBUSY;
goto err_region;
}
- if ((ret=request_irq(s->irq, es1370_interrupt, IRQF_SHARED, "es1370",s))) {
+ if ((ret=request_irq(s->irq, es1370_interrupt, SA_SHIRQ, "es1370",s))) {
printk(KERN_ERR "es1370: irq %u in use\n", s->irq);
goto err_irq;
}
diff --git a/trunk/sound/oss/es1371.c b/trunk/sound/oss/es1371.c
index a2ffe723dad5..4400c8538686 100644
--- a/trunk/sound/oss/es1371.c
+++ b/trunk/sound/oss/es1371.c
@@ -2905,7 +2905,7 @@ static int __devinit es1371_probe(struct pci_dev *pcidev, const struct pci_devic
res = -EBUSY;
goto err_region;
}
- if ((res=request_irq(s->irq, es1371_interrupt, IRQF_SHARED, "es1371",s))) {
+ if ((res=request_irq(s->irq, es1371_interrupt, SA_SHIRQ, "es1371",s))) {
printk(KERN_ERR PFX "irq %u in use\n", s->irq);
goto err_irq;
}
diff --git a/trunk/sound/oss/esssolo1.c b/trunk/sound/oss/esssolo1.c
index 82f40a0a5c9c..6861563d7525 100644
--- a/trunk/sound/oss/esssolo1.c
+++ b/trunk/sound/oss/esssolo1.c
@@ -2392,7 +2392,7 @@ static int __devinit solo1_probe(struct pci_dev *pcidev, const struct pci_device
printk(KERN_ERR "solo1: io ports in use\n");
goto err_region4;
}
- if ((ret=request_irq(s->irq,solo1_interrupt,IRQF_SHARED,"ESS Solo1",s))) {
+ if ((ret=request_irq(s->irq,solo1_interrupt,SA_SHIRQ,"ESS Solo1",s))) {
printk(KERN_ERR "solo1: irq %u in use\n", s->irq);
goto err_irq;
}
diff --git a/trunk/sound/oss/forte.c b/trunk/sound/oss/forte.c
index ea1c0207aef2..44e578098d76 100644
--- a/trunk/sound/oss/forte.c
+++ b/trunk/sound/oss/forte.c
@@ -2026,7 +2026,7 @@ forte_probe (struct pci_dev *pci_dev, const struct pci_device_id *pci_id)
chip->iobase = pci_resource_start (pci_dev, 0);
chip->irq = pci_dev->irq;
- if (request_irq (chip->irq, forte_interrupt, IRQF_SHARED, DRIVER_NAME,
+ if (request_irq (chip->irq, forte_interrupt, SA_SHIRQ, DRIVER_NAME,
chip)) {
printk (KERN_WARNING PFX "Unable to reserve IRQ");
ret = -EIO;
diff --git a/trunk/sound/oss/hal2.c b/trunk/sound/oss/hal2.c
index 80ab402dae9a..dd4f59d30a3a 100644
--- a/trunk/sound/oss/hal2.c
+++ b/trunk/sound/oss/hal2.c
@@ -1479,7 +1479,7 @@ static int hal2_init_card(struct hal2_card **phal2, struct hpc3_regs *hpc3)
hpc3->pbus_dmacfg[hal2->dac.pbus.pbusnr][0] = 0x8208844;
hpc3->pbus_dmacfg[hal2->adc.pbus.pbusnr][0] = 0x8208844;
- if (request_irq(SGI_HPCDMA_IRQ, hal2_interrupt, IRQF_SHARED,
+ if (request_irq(SGI_HPCDMA_IRQ, hal2_interrupt, SA_SHIRQ,
hal2str, hal2)) {
printk(KERN_ERR "HAL2: Can't get irq %d\n", SGI_HPCDMA_IRQ);
ret = -EAGAIN;
diff --git a/trunk/sound/oss/i810_audio.c b/trunk/sound/oss/i810_audio.c
index ddcddc2347f7..dd2b871cdac5 100644
--- a/trunk/sound/oss/i810_audio.c
+++ b/trunk/sound/oss/i810_audio.c
@@ -3413,7 +3413,7 @@ static int __devinit i810_probe(struct pci_dev *pci_dev, const struct pci_device
goto out_iospace;
}
- if (request_irq(card->irq, &i810_interrupt, IRQF_SHARED,
+ if (request_irq(card->irq, &i810_interrupt, SA_SHIRQ,
card_names[pci_id->driver_data], card)) {
printk(KERN_ERR "i810_audio: unable to allocate irq %d\n", card->irq);
goto out_iospace;
diff --git a/trunk/sound/oss/ite8172.c b/trunk/sound/oss/ite8172.c
index 68aab3605d74..00ac1c95a429 100644
--- a/trunk/sound/oss/ite8172.c
+++ b/trunk/sound/oss/ite8172.c
@@ -2019,7 +2019,7 @@ static int __devinit it8172_probe(struct pci_dev *pcidev,
s->io, s->io + pci_resource_len(pcidev,0)-1);
goto err_region;
}
- if (request_irq(s->irq, it8172_interrupt, IRQF_DISABLED,
+ if (request_irq(s->irq, it8172_interrupt, SA_INTERRUPT,
IT8172_MODULE_NAME, s)) {
err("irq %u in use", s->irq);
goto err_irq;
diff --git a/trunk/sound/oss/maestro.c b/trunk/sound/oss/maestro.c
index 1d98d100d739..e647f2f86279 100644
--- a/trunk/sound/oss/maestro.c
+++ b/trunk/sound/oss/maestro.c
@@ -3545,7 +3545,7 @@ maestro_probe(struct pci_dev *pcidev,const struct pci_device_id *pdid)
mixer_push_state(card);
}
- if((ret=request_irq(card->irq, ess_interrupt, IRQF_SHARED, card_names[card_type], card)))
+ if((ret=request_irq(card->irq, ess_interrupt, SA_SHIRQ, card_names[card_type], card)))
{
printk(KERN_ERR "maestro: unable to allocate irq %d,\n", card->irq);
unregister_sound_mixer(card->dev_mixer);
diff --git a/trunk/sound/oss/maestro3.c b/trunk/sound/oss/maestro3.c
index 5548e3cff7ce..4a5e4237a110 100644
--- a/trunk/sound/oss/maestro3.c
+++ b/trunk/sound/oss/maestro3.c
@@ -2694,7 +2694,7 @@ static int __devinit m3_probe(struct pci_dev *pci_dev, const struct pci_device_i
}
}
- if(request_irq(card->irq, m3_interrupt, IRQF_SHARED, card_names[card->card_type], card)) {
+ if(request_irq(card->irq, m3_interrupt, SA_SHIRQ, card_names[card->card_type], card)) {
printk(KERN_ERR PFX "unable to allocate irq %d,\n", card->irq);
diff --git a/trunk/sound/oss/nec_vrc5477.c b/trunk/sound/oss/nec_vrc5477.c
index 6f7f2f0423e4..21c1954d9108 100644
--- a/trunk/sound/oss/nec_vrc5477.c
+++ b/trunk/sound/oss/nec_vrc5477.c
@@ -1909,7 +1909,7 @@ static int __devinit vrc5477_ac97_probe(struct pci_dev *pcidev,
s->io, s->io + pci_resource_len(pcidev,0)-1);
goto err_region;
}
- if (request_irq(s->irq, vrc5477_ac97_interrupt, IRQF_DISABLED,
+ if (request_irq(s->irq, vrc5477_ac97_interrupt, SA_INTERRUPT,
VRC5477_AC97_MODULE_NAME, s)) {
printk(KERN_ERR PFX "irq %u in use\n", s->irq);
goto err_irq;
diff --git a/trunk/sound/oss/nm256_audio.c b/trunk/sound/oss/nm256_audio.c
index 7760dddf2b32..6e662ac009ae 100644
--- a/trunk/sound/oss/nm256_audio.c
+++ b/trunk/sound/oss/nm256_audio.c
@@ -733,7 +733,7 @@ static int
nm256_grabInterrupt (struct nm256_info *card)
{
if (card->has_irq++ == 0) {
- if (request_irq (card->irq, card->introutine, IRQF_SHARED,
+ if (request_irq (card->irq, card->introutine, SA_SHIRQ,
"NM256_audio", card) < 0) {
printk (KERN_ERR "NM256: can't obtain IRQ %d\n", card->irq);
return -1;
diff --git a/trunk/sound/oss/rme96xx.c b/trunk/sound/oss/rme96xx.c
index f17d25b6f836..a1ec9d131ab3 100644
--- a/trunk/sound/oss/rme96xx.c
+++ b/trunk/sound/oss/rme96xx.c
@@ -994,7 +994,7 @@ static int __devinit rme96xx_probe(struct pci_dev *pcidev, const struct pci_devi
if (pci_enable_device(pcidev))
goto err_irq;
- if (request_irq(s->irq, rme96xx_interrupt, IRQF_SHARED, "rme96xx", s)) {
+ if (request_irq(s->irq, rme96xx_interrupt, SA_SHIRQ, "rme96xx", s)) {
printk(KERN_ERR RME_MESS" irq %u in use\n", s->irq);
goto err_irq;
}
diff --git a/trunk/sound/oss/sb_common.c b/trunk/sound/oss/sb_common.c
index 35bab6e2f998..3e8ecac86a89 100644
--- a/trunk/sound/oss/sb_common.c
+++ b/trunk/sound/oss/sb_common.c
@@ -677,7 +677,7 @@ int sb_dsp_init(struct address_info *hw_config, struct module *owner)
* will get shared PCI irq lines we must cope.
*/
- int i=(devc->caps&SB_PCI_IRQ)?IRQF_SHARED:0;
+ int i=(devc->caps&SB_PCI_IRQ)?SA_SHIRQ:0;
if (request_irq(hw_config->irq, sbintr, i, "soundblaster", devc) < 0)
{
diff --git a/trunk/sound/oss/sh_dac_audio.c b/trunk/sound/oss/sh_dac_audio.c
index 7b168d85f4ab..cbf745db4b10 100644
--- a/trunk/sound/oss/sh_dac_audio.c
+++ b/trunk/sound/oss/sh_dac_audio.c
@@ -297,7 +297,7 @@ static int __init dac_audio_init(void)
dac_audio_set_rate();
retval =
- request_irq(TIMER1_IRQ, timer1_interrupt, IRQF_DISABLED, MODNAME, 0);
+ request_irq(TIMER1_IRQ, timer1_interrupt, SA_INTERRUPT, MODNAME, 0);
if (retval < 0) {
printk(KERN_ERR "sh_dac_audio: IRQ %d request failed\n",
TIMER1_IRQ);
diff --git a/trunk/sound/oss/sonicvibes.c b/trunk/sound/oss/sonicvibes.c
index 8ea532d40198..42bd276cfc39 100644
--- a/trunk/sound/oss/sonicvibes.c
+++ b/trunk/sound/oss/sonicvibes.c
@@ -2632,7 +2632,7 @@ static int __devinit sv_probe(struct pci_dev *pcidev, const struct pci_device_id
wrindir(s, SV_CIPCMSR1, ((8000 * 65536 / FULLRATE) >> 8) & 0xff);
wrindir(s, SV_CIADCOUTPUT, 0);
/* request irq */
- if ((ret=request_irq(s->irq,sv_interrupt,IRQF_SHARED,"S3 SonicVibes",s))) {
+ if ((ret=request_irq(s->irq,sv_interrupt,SA_SHIRQ,"S3 SonicVibes",s))) {
printk(KERN_ERR "sv: irq %u in use\n", s->irq);
goto err_irq;
}
diff --git a/trunk/sound/oss/trident.c b/trunk/sound/oss/trident.c
index 2813e4c8e365..420a866fb933 100644
--- a/trunk/sound/oss/trident.c
+++ b/trunk/sound/oss/trident.c
@@ -4472,7 +4472,7 @@ trident_probe(struct pci_dev *pci_dev, const struct pci_device_id *pci_id)
/* claim our irq */
rc = -ENODEV;
- if (request_irq(card->irq, &trident_interrupt, IRQF_SHARED,
+ if (request_irq(card->irq, &trident_interrupt, SA_SHIRQ,
card_names[pci_id->driver_data], card)) {
printk(KERN_ERR "trident: unable to allocate irq %d\n",
card->irq);
diff --git a/trunk/sound/oss/via82cxxx_audio.c b/trunk/sound/oss/via82cxxx_audio.c
index 08d8c94d01b2..3ada26b3fc7e 100644
--- a/trunk/sound/oss/via82cxxx_audio.c
+++ b/trunk/sound/oss/via82cxxx_audio.c
@@ -2013,7 +2013,7 @@ static int via_interrupt_init (struct via_info *card)
tmp8 |= VIA_CR48_FM_TRAP_TO_NMI;
pci_write_config_byte (card->pdev, VIA_FM_NMI_CTRL, tmp8);
}
- if (request_irq (card->pdev->irq, via_interrupt, IRQF_SHARED, VIA_MODULE_NAME, card)) {
+ if (request_irq (card->pdev->irq, via_interrupt, SA_SHIRQ, VIA_MODULE_NAME, card)) {
printk (KERN_ERR PFX "unable to obtain IRQ %d, aborting\n",
card->pdev->irq);
DPRINTK ("EXIT, returning -EBUSY\n");
@@ -2022,7 +2022,7 @@ static int via_interrupt_init (struct via_info *card)
}
else
{
- if (request_irq (card->pdev->irq, via_new_interrupt, IRQF_SHARED, VIA_MODULE_NAME, card)) {
+ if (request_irq (card->pdev->irq, via_new_interrupt, SA_SHIRQ, VIA_MODULE_NAME, card)) {
printk (KERN_ERR PFX "unable to obtain IRQ %d, aborting\n",
card->pdev->irq);
DPRINTK ("EXIT, returning -EBUSY\n");
diff --git a/trunk/sound/oss/wavfront.c b/trunk/sound/oss/wavfront.c
index 1dec3958cc7b..b1a4eeb9dc08 100644
--- a/trunk/sound/oss/wavfront.c
+++ b/trunk/sound/oss/wavfront.c
@@ -2268,7 +2268,7 @@ static int __init wavefront_hw_reset (void)
}
if (request_irq (dev.irq, wavefrontintr,
- IRQF_DISABLED|IRQF_SHARED,
+ SA_INTERRUPT|SA_SHIRQ,
"wavefront synth", &dev) < 0) {
printk (KERN_WARNING LOGNAME "IRQ %d not available!\n",
dev.irq);
diff --git a/trunk/sound/oss/wf_midi.c b/trunk/sound/oss/wf_midi.c
index 3f3a390014ca..7b167b74375b 100644
--- a/trunk/sound/oss/wf_midi.c
+++ b/trunk/sound/oss/wf_midi.c
@@ -820,7 +820,7 @@ int __init install_wf_mpu (void)
/* OK, now we're configured to handle an interrupt ... */
- if (request_irq (phys_dev->irq, wf_mpuintr, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq (phys_dev->irq, wf_mpuintr, SA_INTERRUPT|SA_SHIRQ,
"wavefront midi", phys_dev) < 0) {
printk (KERN_ERR "WF-MPU: Failed to allocate IRQ%d\n",
diff --git a/trunk/sound/oss/ymfpci.c b/trunk/sound/oss/ymfpci.c
index 6e22472df952..bf90c124a7e6 100644
--- a/trunk/sound/oss/ymfpci.c
+++ b/trunk/sound/oss/ymfpci.c
@@ -2573,7 +2573,7 @@ static int __devinit ymf_probe_one(struct pci_dev *pcidev, const struct pci_devi
goto out_disable_dsp;
ymf_memload(codec);
- if (request_irq(pcidev->irq, ymf_interrupt, IRQF_SHARED, "ymfpci", codec) != 0) {
+ if (request_irq(pcidev->irq, ymf_interrupt, SA_SHIRQ, "ymfpci", codec) != 0) {
printk(KERN_ERR "ymfpci: unable to request IRQ %d\n",
pcidev->irq);
goto out_memfree;
diff --git a/trunk/sound/pci/ad1889.c b/trunk/sound/pci/ad1889.c
index f7aef8c9cf43..d42bf4570367 100644
--- a/trunk/sound/pci/ad1889.c
+++ b/trunk/sound/pci/ad1889.c
@@ -947,7 +947,7 @@ snd_ad1889_create(struct snd_card *card,
spin_lock_init(&chip->lock); /* only now can we call ad1889_free */
if (request_irq(pci->irq, snd_ad1889_interrupt,
- IRQF_DISABLED|IRQF_SHARED, card->driver, (void*)chip)) {
+ SA_INTERRUPT|SA_SHIRQ, card->driver, (void*)chip)) {
printk(KERN_ERR PFX "cannot obtain IRQ %d\n", pci->irq);
snd_ad1889_free(chip);
return -EBUSY;
diff --git a/trunk/sound/pci/ali5451/ali5451.c b/trunk/sound/pci/ali5451/ali5451.c
index e0a815e53d1c..5dfdbf6657f2 100644
--- a/trunk/sound/pci/ali5451/ali5451.c
+++ b/trunk/sound/pci/ali5451/ali5451.c
@@ -2185,7 +2185,7 @@ static int __devinit snd_ali_resources(struct snd_ali *codec)
return err;
codec->port = pci_resource_start(codec->pci, 0);
- if (request_irq(codec->pci->irq, snd_ali_card_interrupt, IRQF_DISABLED|IRQF_SHARED, "ALI 5451", (void *)codec)) {
+ if (request_irq(codec->pci->irq, snd_ali_card_interrupt, SA_INTERRUPT|SA_SHIRQ, "ALI 5451", (void *)codec)) {
snd_printk(KERN_ERR "Unable to request irq.\n");
return -EBUSY;
}
diff --git a/trunk/sound/pci/als300.c b/trunk/sound/pci/als300.c
index a9c38963188a..901b08ae9174 100644
--- a/trunk/sound/pci/als300.c
+++ b/trunk/sound/pci/als300.c
@@ -724,7 +724,7 @@ static int __devinit snd_als300_create(snd_card_t *card,
else
irq_handler = snd_als300_interrupt;
- if (request_irq(pci->irq, irq_handler, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, irq_handler, SA_INTERRUPT|SA_SHIRQ,
card->shortname, (void *)chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_als300_free(chip);
diff --git a/trunk/sound/pci/atiixp.c b/trunk/sound/pci/atiixp.c
index 9fbb065a810b..f18a8c0e4688 100644
--- a/trunk/sound/pci/atiixp.c
+++ b/trunk/sound/pci/atiixp.c
@@ -1578,7 +1578,7 @@ static int __devinit snd_atiixp_create(struct snd_card *card,
return -EIO;
}
- if (request_irq(pci->irq, snd_atiixp_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_atiixp_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->shortname, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_atiixp_free(chip);
diff --git a/trunk/sound/pci/atiixp_modem.c b/trunk/sound/pci/atiixp_modem.c
index 7dcf4941dce2..40739057076b 100644
--- a/trunk/sound/pci/atiixp_modem.c
+++ b/trunk/sound/pci/atiixp_modem.c
@@ -1251,7 +1251,7 @@ static int __devinit snd_atiixp_create(struct snd_card *card,
return -EIO;
}
- if (request_irq(pci->irq, snd_atiixp_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_atiixp_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->shortname, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_atiixp_free(chip);
diff --git a/trunk/sound/pci/au88x0/au88x0.c b/trunk/sound/pci/au88x0/au88x0.c
index ef189d7f09d3..8a3b118989bf 100644
--- a/trunk/sound/pci/au88x0/au88x0.c
+++ b/trunk/sound/pci/au88x0/au88x0.c
@@ -197,7 +197,7 @@ snd_vortex_create(struct snd_card *card, struct pci_dev *pci, vortex_t ** rchip)
}
if ((err = request_irq(pci->irq, vortex_interrupt,
- IRQF_DISABLED | IRQF_SHARED, CARD_NAME_SHORT,
+ SA_INTERRUPT | SA_SHIRQ, CARD_NAME_SHORT,
chip)) != 0) {
printk(KERN_ERR "cannot grab irq\n");
goto irq_out;
diff --git a/trunk/sound/pci/azt3328.c b/trunk/sound/pci/azt3328.c
index 15447a3216dd..6e62dafb66cd 100644
--- a/trunk/sound/pci/azt3328.c
+++ b/trunk/sound/pci/azt3328.c
@@ -1724,7 +1724,7 @@ snd_azf3328_create(struct snd_card *card,
chip->synth_port = pci_resource_start(pci, 3);
chip->mixer_port = pci_resource_start(pci, 4);
- if (request_irq(pci->irq, snd_azf3328_interrupt, IRQF_DISABLED|IRQF_SHARED, card->shortname, (void *)chip)) {
+ if (request_irq(pci->irq, snd_azf3328_interrupt, SA_INTERRUPT|SA_SHIRQ, card->shortname, (void *)chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
err = -EBUSY;
goto out_err;
diff --git a/trunk/sound/pci/bt87x.c b/trunk/sound/pci/bt87x.c
index 4d4277d045aa..497ed6b20060 100644
--- a/trunk/sound/pci/bt87x.c
+++ b/trunk/sound/pci/bt87x.c
@@ -747,7 +747,7 @@ static int __devinit snd_bt87x_create(struct snd_card *card,
snd_bt87x_writel(chip, REG_INT_MASK, 0);
snd_bt87x_writel(chip, REG_INT_STAT, MY_INTERRUPTS);
- if (request_irq(pci->irq, snd_bt87x_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ if (request_irq(pci->irq, snd_bt87x_interrupt, SA_INTERRUPT | SA_SHIRQ,
"Bt87x audio", chip)) {
snd_bt87x_free(chip);
snd_printk(KERN_ERR "cannot grab irq\n");
diff --git a/trunk/sound/pci/ca0106/ca0106_main.c b/trunk/sound/pci/ca0106/ca0106_main.c
index a30c019bab64..59bf9bd02534 100644
--- a/trunk/sound/pci/ca0106/ca0106_main.c
+++ b/trunk/sound/pci/ca0106/ca0106_main.c
@@ -1268,7 +1268,7 @@ static int __devinit snd_ca0106_create(struct snd_card *card,
}
if (request_irq(pci->irq, snd_ca0106_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "snd_ca0106",
+ SA_INTERRUPT|SA_SHIRQ, "snd_ca0106",
(void *)chip)) {
snd_ca0106_free(chip);
printk(KERN_ERR "cannot grab irq\n");
diff --git a/trunk/sound/pci/cmipci.c b/trunk/sound/pci/cmipci.c
index 03766ad74998..0938c158b5c9 100644
--- a/trunk/sound/pci/cmipci.c
+++ b/trunk/sound/pci/cmipci.c
@@ -2862,7 +2862,7 @@ static int __devinit snd_cmipci_create(struct snd_card *card, struct pci_dev *pc
cm->iobase = pci_resource_start(pci, 0);
if (request_irq(pci->irq, snd_cmipci_interrupt,
- IRQF_DISABLED|IRQF_SHARED, card->driver, cm)) {
+ SA_INTERRUPT|SA_SHIRQ, card->driver, cm)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_cmipci_free(cm);
return -EBUSY;
diff --git a/trunk/sound/pci/cs4281.c b/trunk/sound/pci/cs4281.c
index d1802487f5be..e77a4ce314b7 100644
--- a/trunk/sound/pci/cs4281.c
+++ b/trunk/sound/pci/cs4281.c
@@ -1386,7 +1386,7 @@ static int __devinit snd_cs4281_create(struct snd_card *card,
return -ENOMEM;
}
- if (request_irq(pci->irq, snd_cs4281_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_cs4281_interrupt, SA_INTERRUPT|SA_SHIRQ,
"CS4281", chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_cs4281_free(chip);
diff --git a/trunk/sound/pci/cs46xx/cs46xx_lib.c b/trunk/sound/pci/cs46xx/cs46xx_lib.c
index 894545ea41fd..5c2114439204 100644
--- a/trunk/sound/pci/cs46xx/cs46xx_lib.c
+++ b/trunk/sound/pci/cs46xx/cs46xx_lib.c
@@ -3853,7 +3853,7 @@ int __devinit snd_cs46xx_create(struct snd_card *card,
}
}
- if (request_irq(pci->irq, snd_cs46xx_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_cs46xx_interrupt, SA_INTERRUPT|SA_SHIRQ,
"CS46XX", chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_cs46xx_free(chip);
diff --git a/trunk/sound/pci/cs5535audio/cs5535audio.c b/trunk/sound/pci/cs5535audio/cs5535audio.c
index c12b24c679f2..91c18a11fe87 100644
--- a/trunk/sound/pci/cs5535audio/cs5535audio.c
+++ b/trunk/sound/pci/cs5535audio/cs5535audio.c
@@ -321,7 +321,7 @@ static int __devinit snd_cs5535audio_create(struct snd_card *card,
cs5535au->port = pci_resource_start(pci, 0);
if (request_irq(pci->irq, snd_cs5535audio_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "CS5535 Audio", cs5535au)) {
+ SA_INTERRUPT|SA_SHIRQ, "CS5535 Audio", cs5535au)) {
snd_printk("unable to grab IRQ %d\n", pci->irq);
err = -EBUSY;
goto sndfail;
diff --git a/trunk/sound/pci/echoaudio/echoaudio.c b/trunk/sound/pci/echoaudio/echoaudio.c
index 27a8dbe6f6a8..43b408ada1da 100644
--- a/trunk/sound/pci/echoaudio/echoaudio.c
+++ b/trunk/sound/pci/echoaudio/echoaudio.c
@@ -1951,7 +1951,7 @@ static __devinit int snd_echo_create(struct snd_card *card,
chip->dsp_registers = (volatile u32 __iomem *)
ioremap_nocache(chip->dsp_registers_phys, sz);
- if (request_irq(pci->irq, snd_echo_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ if (request_irq(pci->irq, snd_echo_interrupt, SA_INTERRUPT | SA_SHIRQ,
ECHOCARD_NAME, (void *)chip)) {
snd_echo_free(chip);
snd_printk(KERN_ERR "cannot grab irq\n");
diff --git a/trunk/sound/pci/emu10k1/emu10k1_main.c b/trunk/sound/pci/emu10k1/emu10k1_main.c
index d6f135fe2958..42a358f989c3 100644
--- a/trunk/sound/pci/emu10k1/emu10k1_main.c
+++ b/trunk/sound/pci/emu10k1/emu10k1_main.c
@@ -1233,7 +1233,7 @@ int __devinit snd_emu10k1_create(struct snd_card *card,
}
emu->port = pci_resource_start(pci, 0);
- if (request_irq(pci->irq, snd_emu10k1_interrupt, IRQF_DISABLED|IRQF_SHARED, "EMU10K1", (void *)emu)) {
+ if (request_irq(pci->irq, snd_emu10k1_interrupt, SA_INTERRUPT|SA_SHIRQ, "EMU10K1", (void *)emu)) {
err = -EBUSY;
goto error;
}
diff --git a/trunk/sound/pci/emu10k1/emu10k1x.c b/trunk/sound/pci/emu10k1/emu10k1x.c
index 2167279429b8..0fb27e4be07b 100644
--- a/trunk/sound/pci/emu10k1/emu10k1x.c
+++ b/trunk/sound/pci/emu10k1/emu10k1x.c
@@ -928,7 +928,7 @@ static int __devinit snd_emu10k1x_create(struct snd_card *card,
}
if (request_irq(pci->irq, snd_emu10k1x_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "EMU10K1X",
+ SA_INTERRUPT|SA_SHIRQ, "EMU10K1X",
(void *)chip)) {
snd_printk(KERN_ERR "emu10k1x: cannot grab irq %d\n", pci->irq);
snd_emu10k1x_free(chip);
diff --git a/trunk/sound/pci/ens1370.c b/trunk/sound/pci/ens1370.c
index 7a985c868007..9d46bbee2a40 100644
--- a/trunk/sound/pci/ens1370.c
+++ b/trunk/sound/pci/ens1370.c
@@ -2135,7 +2135,7 @@ static int __devinit snd_ensoniq_create(struct snd_card *card,
return err;
}
ensoniq->port = pci_resource_start(pci, 0);
- if (request_irq(pci->irq, snd_audiopci_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_audiopci_interrupt, SA_INTERRUPT|SA_SHIRQ,
"Ensoniq AudioPCI", ensoniq)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_ensoniq_free(ensoniq);
diff --git a/trunk/sound/pci/es1938.c b/trunk/sound/pci/es1938.c
index 1113b10259cf..ca6603fe0b11 100644
--- a/trunk/sound/pci/es1938.c
+++ b/trunk/sound/pci/es1938.c
@@ -1429,7 +1429,7 @@ static int es1938_resume(struct pci_dev *pci)
pci_restore_state(pci);
pci_enable_device(pci);
request_irq(pci->irq, snd_es1938_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "ES1938", chip);
+ SA_INTERRUPT|SA_SHIRQ, "ES1938", chip);
chip->irq = pci->irq;
snd_es1938_chip_init(chip);
@@ -1544,7 +1544,7 @@ static int __devinit snd_es1938_create(struct snd_card *card,
chip->vc_port = pci_resource_start(pci, 2);
chip->mpu_port = pci_resource_start(pci, 3);
chip->game_port = pci_resource_start(pci, 4);
- if (request_irq(pci->irq, snd_es1938_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_es1938_interrupt, SA_INTERRUPT|SA_SHIRQ,
"ES1938", chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_es1938_free(chip);
diff --git a/trunk/sound/pci/es1968.c b/trunk/sound/pci/es1968.c
index a491c8f8a6a8..bfa0876e715e 100644
--- a/trunk/sound/pci/es1968.c
+++ b/trunk/sound/pci/es1968.c
@@ -2597,7 +2597,7 @@ static int __devinit snd_es1968_create(struct snd_card *card,
return err;
}
chip->io_port = pci_resource_start(pci, 0);
- if (request_irq(pci->irq, snd_es1968_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_es1968_interrupt, SA_INTERRUPT|SA_SHIRQ,
"ESS Maestro", (void*)chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_es1968_free(chip);
diff --git a/trunk/sound/pci/fm801.c b/trunk/sound/pci/fm801.c
index 3aed27eace2c..0afa573dd244 100644
--- a/trunk/sound/pci/fm801.c
+++ b/trunk/sound/pci/fm801.c
@@ -1371,7 +1371,7 @@ static int __devinit snd_fm801_create(struct snd_card *card,
return err;
}
chip->port = pci_resource_start(pci, 0);
- if (request_irq(pci->irq, snd_fm801_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_fm801_interrupt, SA_INTERRUPT|SA_SHIRQ,
"FM801", chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", chip->irq);
snd_fm801_free(chip);
diff --git a/trunk/sound/pci/hda/hda_intel.c b/trunk/sound/pci/hda/hda_intel.c
index 025af7c0c6e1..4070b5cd9b6b 100644
--- a/trunk/sound/pci/hda/hda_intel.c
+++ b/trunk/sound/pci/hda/hda_intel.c
@@ -1486,7 +1486,7 @@ static int __devinit azx_create(struct snd_card *card, struct pci_dev *pci,
goto errout;
}
- if (request_irq(pci->irq, azx_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, azx_interrupt, SA_INTERRUPT|SA_SHIRQ,
"HDA Intel", (void*)chip)) {
snd_printk(KERN_ERR SFX "unable to grab IRQ %d\n", pci->irq);
err = -EBUSY;
diff --git a/trunk/sound/pci/ice1712/ice1712.c b/trunk/sound/pci/ice1712/ice1712.c
index 89a06dec4365..845907159b74 100644
--- a/trunk/sound/pci/ice1712/ice1712.c
+++ b/trunk/sound/pci/ice1712/ice1712.c
@@ -2606,7 +2606,7 @@ static int __devinit snd_ice1712_create(struct snd_card *card,
ice->dmapath_port = pci_resource_start(pci, 2);
ice->profi_port = pci_resource_start(pci, 3);
- if (request_irq(pci->irq, snd_ice1712_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_ice1712_interrupt, SA_INTERRUPT|SA_SHIRQ,
"ICE1712", ice)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_ice1712_free(ice);
diff --git a/trunk/sound/pci/ice1712/ice1724.c b/trunk/sound/pci/ice1712/ice1724.c
index ad69ed7c1b81..34a58c629f47 100644
--- a/trunk/sound/pci/ice1712/ice1724.c
+++ b/trunk/sound/pci/ice1712/ice1724.c
@@ -2253,7 +2253,7 @@ static int __devinit snd_vt1724_create(struct snd_card *card,
ice->profi_port = pci_resource_start(pci, 1);
if (request_irq(pci->irq, snd_vt1724_interrupt,
- IRQF_DISABLED|IRQF_SHARED, "ICE1724", ice)) {
+ SA_INTERRUPT|SA_SHIRQ, "ICE1724", ice)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_vt1724_free(ice);
return -EIO;
diff --git a/trunk/sound/pci/intel8x0.c b/trunk/sound/pci/intel8x0.c
index 5634bc349257..edc14475ef82 100644
--- a/trunk/sound/pci/intel8x0.c
+++ b/trunk/sound/pci/intel8x0.c
@@ -2475,7 +2475,7 @@ static int intel8x0_resume(struct pci_dev *pci)
pci_restore_state(pci);
pci_enable_device(pci);
pci_set_master(pci);
- request_irq(pci->irq, snd_intel8x0_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ request_irq(pci->irq, snd_intel8x0_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->shortname, chip);
chip->irq = pci->irq;
synchronize_irq(chip->irq);
@@ -2848,7 +2848,7 @@ static int __devinit snd_intel8x0_create(struct snd_card *card,
/* request irq after initializaing int_sta_mask, etc */
if (request_irq(pci->irq, snd_intel8x0_interrupt,
- IRQF_DISABLED|IRQF_SHARED, card->shortname, chip)) {
+ SA_INTERRUPT|SA_SHIRQ, card->shortname, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_intel8x0_free(chip);
return -EBUSY;
diff --git a/trunk/sound/pci/intel8x0m.c b/trunk/sound/pci/intel8x0m.c
index f28e273ae276..24703d75b65a 100644
--- a/trunk/sound/pci/intel8x0m.c
+++ b/trunk/sound/pci/intel8x0m.c
@@ -1185,7 +1185,7 @@ static int __devinit snd_intel8x0m_create(struct snd_card *card,
}
port_inited:
- if (request_irq(pci->irq, snd_intel8x0_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_intel8x0_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->shortname, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_intel8x0_free(chip);
diff --git a/trunk/sound/pci/korg1212/korg1212.c b/trunk/sound/pci/korg1212/korg1212.c
index 2b4ce002794a..6e97932de34f 100644
--- a/trunk/sound/pci/korg1212/korg1212.c
+++ b/trunk/sound/pci/korg1212/korg1212.c
@@ -2237,7 +2237,7 @@ static int __devinit snd_korg1212_create(struct snd_card *card, struct pci_dev *
}
err = request_irq(pci->irq, snd_korg1212_interrupt,
- IRQF_DISABLED|IRQF_SHARED,
+ SA_INTERRUPT|SA_SHIRQ,
"korg1212", korg1212);
if (err) {
diff --git a/trunk/sound/pci/maestro3.c b/trunk/sound/pci/maestro3.c
index 828eab59253a..1c344fbd964d 100644
--- a/trunk/sound/pci/maestro3.c
+++ b/trunk/sound/pci/maestro3.c
@@ -2760,7 +2760,7 @@ snd_m3_create(struct snd_card *card, struct pci_dev *pci,
tasklet_init(&chip->hwvol_tq, snd_m3_update_hw_volume, (unsigned long)chip);
- if (request_irq(pci->irq, snd_m3_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_m3_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->driver, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_m3_free(chip);
diff --git a/trunk/sound/pci/mixart/mixart.c b/trunk/sound/pci/mixart/mixart.c
index a4aaa7b9a231..366c4a7e65c6 100644
--- a/trunk/sound/pci/mixart/mixart.c
+++ b/trunk/sound/pci/mixart/mixart.c
@@ -1319,7 +1319,7 @@ static int __devinit snd_mixart_probe(struct pci_dev *pci,
pci_resource_len(pci, i));
}
- if (request_irq(pci->irq, snd_mixart_interrupt, IRQF_DISABLED|IRQF_SHARED, CARD_NAME, (void *)mgr)) {
+ if (request_irq(pci->irq, snd_mixart_interrupt, SA_INTERRUPT|SA_SHIRQ, CARD_NAME, (void *)mgr)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_mixart_free(mgr);
return -EBUSY;
diff --git a/trunk/sound/pci/nm256/nm256.c b/trunk/sound/pci/nm256/nm256.c
index 56d7282e6651..b92d6600deb9 100644
--- a/trunk/sound/pci/nm256/nm256.c
+++ b/trunk/sound/pci/nm256/nm256.c
@@ -465,7 +465,7 @@ static int snd_nm256_acquire_irq(struct nm256 *chip)
{
mutex_lock(&chip->irq_mutex);
if (chip->irq < 0) {
- if (request_irq(chip->pci->irq, chip->interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(chip->pci->irq, chip->interrupt, SA_INTERRUPT|SA_SHIRQ,
chip->card->driver, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", chip->pci->irq);
mutex_unlock(&chip->irq_mutex);
diff --git a/trunk/sound/pci/pcxhr/pcxhr.c b/trunk/sound/pci/pcxhr/pcxhr.c
index ae980e11827f..8198884b51ee 100644
--- a/trunk/sound/pci/pcxhr/pcxhr.c
+++ b/trunk/sound/pci/pcxhr/pcxhr.c
@@ -1250,7 +1250,7 @@ static int __devinit pcxhr_probe(struct pci_dev *pci, const struct pci_device_id
mgr->pci = pci;
mgr->irq = -1;
- if (request_irq(pci->irq, pcxhr_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, pcxhr_interrupt, SA_INTERRUPT|SA_SHIRQ,
card_name, mgr)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
pcxhr_free(mgr);
diff --git a/trunk/sound/pci/riptide/riptide.c b/trunk/sound/pci/riptide/riptide.c
index 5501a08ca23a..5618ec9740bd 100644
--- a/trunk/sound/pci/riptide/riptide.c
+++ b/trunk/sound/pci/riptide/riptide.c
@@ -1892,7 +1892,7 @@ snd_riptide_create(struct snd_card *card, struct pci_dev *pci,
UNSET_AIE(hwport);
if (request_irq
- (pci->irq, snd_riptide_interrupt, IRQF_DISABLED | IRQF_SHARED,
+ (pci->irq, snd_riptide_interrupt, SA_INTERRUPT | SA_SHIRQ,
"RIPTIDE", chip)) {
snd_printk(KERN_ERR "Riptide: unable to grab IRQ %d\n",
pci->irq);
diff --git a/trunk/sound/pci/rme32.c b/trunk/sound/pci/rme32.c
index 2e24b68d07aa..2cb9fe98db2f 100644
--- a/trunk/sound/pci/rme32.c
+++ b/trunk/sound/pci/rme32.c
@@ -1374,7 +1374,7 @@ static int __devinit snd_rme32_create(struct rme32 * rme32)
return -ENOMEM;
}
- if (request_irq(pci->irq, snd_rme32_interrupt, IRQF_DISABLED | IRQF_SHARED, "RME32", (void *) rme32)) {
+ if (request_irq(pci->irq, snd_rme32_interrupt, SA_INTERRUPT | SA_SHIRQ, "RME32", (void *) rme32)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
return -EBUSY;
}
diff --git a/trunk/sound/pci/rme96.c b/trunk/sound/pci/rme96.c
index fde0f3e20530..991cb18c14f3 100644
--- a/trunk/sound/pci/rme96.c
+++ b/trunk/sound/pci/rme96.c
@@ -1588,7 +1588,7 @@ snd_rme96_create(struct rme96 *rme96)
return -ENOMEM;
}
- if (request_irq(pci->irq, snd_rme96_interrupt, IRQF_DISABLED|IRQF_SHARED, "RME96", (void *)rme96)) {
+ if (request_irq(pci->irq, snd_rme96_interrupt, SA_INTERRUPT|SA_SHIRQ, "RME96", (void *)rme96)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
return -EBUSY;
}
diff --git a/trunk/sound/pci/rme9652/hdsp.c b/trunk/sound/pci/rme9652/hdsp.c
index 99cf86244acb..eaf3c22449ad 100644
--- a/trunk/sound/pci/rme9652/hdsp.c
+++ b/trunk/sound/pci/rme9652/hdsp.c
@@ -4912,7 +4912,7 @@ static int __devinit snd_hdsp_create(struct snd_card *card,
return -EBUSY;
}
- if (request_irq(pci->irq, snd_hdsp_interrupt, IRQF_DISABLED|IRQF_SHARED, "hdsp", (void *)hdsp)) {
+ if (request_irq(pci->irq, snd_hdsp_interrupt, SA_INTERRUPT|SA_SHIRQ, "hdsp", (void *)hdsp)) {
snd_printk(KERN_ERR "Hammerfall-DSP: unable to use IRQ %d\n", pci->irq);
return -EBUSY;
}
diff --git a/trunk/sound/pci/rme9652/hdspm.c b/trunk/sound/pci/rme9652/hdspm.c
index 7d03ae066d53..bba1615504d3 100644
--- a/trunk/sound/pci/rme9652/hdspm.c
+++ b/trunk/sound/pci/rme9652/hdspm.c
@@ -3497,7 +3497,7 @@ static int __devinit snd_hdspm_create(struct snd_card *card, struct hdspm * hdsp
hdspm->port + io_extent - 1);
if (request_irq(pci->irq, snd_hdspm_interrupt,
- IRQF_DISABLED | IRQF_SHARED, "hdspm",
+ SA_INTERRUPT | SA_SHIRQ, "hdspm",
(void *) hdspm)) {
snd_printk(KERN_ERR "HDSPM: unable to use IRQ %d\n", pci->irq);
return -EBUSY;
diff --git a/trunk/sound/pci/rme9652/rme9652.c b/trunk/sound/pci/rme9652/rme9652.c
index 9534e1834138..3b945e8c1b15 100644
--- a/trunk/sound/pci/rme9652/rme9652.c
+++ b/trunk/sound/pci/rme9652/rme9652.c
@@ -2500,7 +2500,7 @@ static int __devinit snd_rme9652_create(struct snd_card *card,
return -EBUSY;
}
- if (request_irq(pci->irq, snd_rme9652_interrupt, IRQF_DISABLED|IRQF_SHARED, "rme9652", (void *)rme9652)) {
+ if (request_irq(pci->irq, snd_rme9652_interrupt, SA_INTERRUPT|SA_SHIRQ, "rme9652", (void *)rme9652)) {
snd_printk(KERN_ERR "unable to request IRQ %d\n", pci->irq);
return -EBUSY;
}
diff --git a/trunk/sound/pci/sonicvibes.c b/trunk/sound/pci/sonicvibes.c
index c4303418668b..e5511606af04 100644
--- a/trunk/sound/pci/sonicvibes.c
+++ b/trunk/sound/pci/sonicvibes.c
@@ -1257,7 +1257,7 @@ static int __devinit snd_sonicvibes_create(struct snd_card *card,
sonic->midi_port = pci_resource_start(pci, 3);
sonic->game_port = pci_resource_start(pci, 4);
- if (request_irq(pci->irq, snd_sonicvibes_interrupt, IRQF_DISABLED|IRQF_SHARED, "S3 SonicVibes", (void *)sonic)) {
+ if (request_irq(pci->irq, snd_sonicvibes_interrupt, SA_INTERRUPT|SA_SHIRQ, "S3 SonicVibes", (void *)sonic)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_sonicvibes_free(sonic);
return -EBUSY;
diff --git a/trunk/sound/pci/trident/trident_main.c b/trunk/sound/pci/trident/trident_main.c
index 4930cc6b054d..d99ed7237750 100644
--- a/trunk/sound/pci/trident/trident_main.c
+++ b/trunk/sound/pci/trident/trident_main.c
@@ -3599,7 +3599,7 @@ int __devinit snd_trident_create(struct snd_card *card,
}
trident->port = pci_resource_start(pci, 0);
- if (request_irq(pci->irq, snd_trident_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_trident_interrupt, SA_INTERRUPT|SA_SHIRQ,
"Trident Audio", trident)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_trident_free(trident);
diff --git a/trunk/sound/pci/via82xx.c b/trunk/sound/pci/via82xx.c
index 37bd5eb7a380..2527bbd958c5 100644
--- a/trunk/sound/pci/via82xx.c
+++ b/trunk/sound/pci/via82xx.c
@@ -2281,7 +2281,7 @@ static int __devinit snd_via82xx_create(struct snd_card *card,
if (request_irq(pci->irq,
chip_type == TYPE_VIA8233 ?
snd_via8233_interrupt : snd_via686_interrupt,
- IRQF_DISABLED|IRQF_SHARED,
+ SA_INTERRUPT|SA_SHIRQ,
card->driver, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_via82xx_free(chip);
diff --git a/trunk/sound/pci/via82xx_modem.c b/trunk/sound/pci/via82xx_modem.c
index c1ede6c2a6d4..577a2b03759f 100644
--- a/trunk/sound/pci/via82xx_modem.c
+++ b/trunk/sound/pci/via82xx_modem.c
@@ -1118,7 +1118,7 @@ static int __devinit snd_via82xx_create(struct snd_card *card,
return err;
}
chip->port = pci_resource_start(pci, 0);
- if (request_irq(pci->irq, snd_via82xx_interrupt, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_via82xx_interrupt, SA_INTERRUPT|SA_SHIRQ,
card->driver, chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_via82xx_free(chip);
diff --git a/trunk/sound/pci/vx222/vx222.c b/trunk/sound/pci/vx222/vx222.c
index 7deda25f7adc..0f1ebb010a5e 100644
--- a/trunk/sound/pci/vx222/vx222.c
+++ b/trunk/sound/pci/vx222/vx222.c
@@ -162,7 +162,7 @@ static int __devinit snd_vx222_create(struct snd_card *card, struct pci_dev *pci
for (i = 0; i < 2; i++)
vx->port[i] = pci_resource_start(pci, i + 1);
- if (request_irq(pci->irq, snd_vx_irq_handler, IRQF_DISABLED|IRQF_SHARED,
+ if (request_irq(pci->irq, snd_vx_irq_handler, SA_INTERRUPT|SA_SHIRQ,
CARD_NAME, (void *) chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_vx222_free(chip);
diff --git a/trunk/sound/pci/ymfpci/ymfpci_main.c b/trunk/sound/pci/ymfpci/ymfpci_main.c
index a55b5fd7da64..f894752523bb 100644
--- a/trunk/sound/pci/ymfpci/ymfpci_main.c
+++ b/trunk/sound/pci/ymfpci/ymfpci_main.c
@@ -2288,7 +2288,7 @@ int __devinit snd_ymfpci_create(struct snd_card *card,
snd_ymfpci_free(chip);
return -EBUSY;
}
- if (request_irq(pci->irq, snd_ymfpci_interrupt, IRQF_DISABLED|IRQF_SHARED, "YMFPCI", (void *) chip)) {
+ if (request_irq(pci->irq, snd_ymfpci_interrupt, SA_INTERRUPT|SA_SHIRQ, "YMFPCI", (void *) chip)) {
snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
snd_ymfpci_free(chip);
return -EBUSY;
diff --git a/trunk/sound/sparc/amd7930.c b/trunk/sound/sparc/amd7930.c
index db3e22efd02e..ba1b2a3443d3 100644
--- a/trunk/sound/sparc/amd7930.c
+++ b/trunk/sound/sparc/amd7930.c
@@ -973,7 +973,7 @@ static int __init snd_amd7930_create(struct snd_card *card,
amd7930_idle(amd);
if (request_irq(irq, snd_amd7930_interrupt,
- IRQF_DISABLED | IRQF_SHARED, "amd7930", amd)) {
+ SA_INTERRUPT | SA_SHIRQ, "amd7930", amd)) {
snd_printk("amd7930-%d: Unable to grab IRQ %d\n",
dev, irq);
snd_amd7930_free(amd);
diff --git a/trunk/sound/sparc/cs4231.c b/trunk/sound/sparc/cs4231.c
index 5018fcf41df5..44ad9616bf63 100644
--- a/trunk/sound/sparc/cs4231.c
+++ b/trunk/sound/sparc/cs4231.c
@@ -2001,7 +2001,7 @@ static int __init snd_cs4231_sbus_create(struct snd_card *card,
chip->c_dma.preallocate = sbus_dma_preallocate;
if (request_irq(sdev->irqs[0], snd_cs4231_sbus_interrupt,
- IRQF_SHARED, "cs4231", chip)) {
+ SA_SHIRQ, "cs4231", chip)) {
snd_printdd("cs4231-%d: Unable to grab SBUS IRQ %d\n",
dev, sdev->irqs[0]);
snd_cs4231_sbus_free(chip);
diff --git a/trunk/sound/sparc/dbri.c b/trunk/sound/sparc/dbri.c
index 59a02a0d9afc..63bef0aadf1e 100644
--- a/trunk/sound/sparc/dbri.c
+++ b/trunk/sound/sparc/dbri.c
@@ -2569,7 +2569,7 @@ static int __init snd_dbri_create(struct snd_card *card,
return -EIO;
}
- err = request_irq(dbri->irq, snd_dbri_interrupt, IRQF_SHARED,
+ err = request_irq(dbri->irq, snd_dbri_interrupt, SA_SHIRQ,
"DBRI audio", dbri);
if (err) {
printk(KERN_ERR "DBRI: Can't get irq %d\n", dbri->irq);