linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC][patch 00/44] Consolidate irq_action flags
@ 2006-07-01 14:54 Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 01/44] Consolidate flags for request_irq Thomas Gleixner
                   ` (44 more replies)
  0 siblings, 45 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

The recent interrupt rework introduced bit value conflicts with sparc.
Instead of introducing new architecture flags mess, move the interrupt
SA_ flags out of the signal namespace and replace them by interrupt
related flags.

This allows to remove the obsolete SA_INTERRUPT flag and clean up
the bit field values.

The patch was mostly created by a script, manually fixed up and reviewed.
Compile tested on various platforms. Boot tested on i386/x86_64

	tglx
--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 01/44] Consolidate flags for request_irq
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-02  0:49   ` Andrew Morton
  2006-07-01 14:54 ` [RFC][patch 02/44] ALPHA: Use the new IRQF_ constansts Thomas Gleixner
                   ` (43 subsequent siblings)
  44 siblings, 1 reply; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-base.patch --]
[-- Type: text/plain, Size: 8580 bytes --]


Move the interrupt related SA_ flags out of linux/signal.h and rename
them to IRQF_ . This moves the interrupt related flags out of the signal
namespace and allows to remove the architecture dependencies.

SA_INTERRUPT is not needed by userspace and glibc so it can be removed
safely. The existing SA_ constants are kept for easy transition and will
be removed after a 6 month grace period.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 Documentation/feature-removal-schedule.txt |    9 ++++
 include/linux/interrupt.h                  |   47 ++++++++++++++++++++++++
 include/linux/irq.h                        |   55 ++++++++++++++---------------
 include/linux/signal.h                     |   26 -------------
 4 files changed, 83 insertions(+), 54 deletions(-)

Index: linux-2.6.git/include/linux/interrupt.h
===================================================================
--- linux-2.6.git.orig/include/linux/interrupt.h	2006-07-01 16:51:30.000000000 +0200
+++ linux-2.6.git/include/linux/interrupt.h	2006-07-01 16:51:30.000000000 +0200
@@ -14,6 +14,53 @@
 #include <asm/ptrace.h>
 #include <asm/system.h>
 
+/*
+ * 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;
Index: linux-2.6.git/include/linux/signal.h
===================================================================
--- linux-2.6.git.orig/include/linux/signal.h	2006-07-01 16:51:30.000000000 +0200
+++ linux-2.6.git/include/linux/signal.h	2006-07-01 16:51:30.000000000 +0200
@@ -9,32 +9,6 @@
 #include <linux/spinlock.h>
 
 /*
- * 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.
  */
 
Index: linux-2.6.git/Documentation/feature-removal-schedule.txt
===================================================================
--- linux-2.6.git.orig/Documentation/feature-removal-schedule.txt	2006-07-01 16:51:30.000000000 +0200
+++ linux-2.6.git/Documentation/feature-removal-schedule.txt	2006-07-01 16:51:30.000000000 +0200
@@ -257,3 +257,12 @@ Why:	Code does no longer build since at 
 Who:	Ralf Baechle <ralf@linux-mips.org>
 
 ---------------------------
+
+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 <tglx@linutronix.de>
+
+---------------------------
Index: linux-2.6.git/include/linux/irq.h
===================================================================
--- linux-2.6.git.orig/include/linux/irq.h	2006-07-01 16:51:30.000000000 +0200
+++ linux-2.6.git/include/linux/irq.h	2006-07-01 16:51:30.000000000 +0200
@@ -24,41 +24,40 @@
 
 /*
  * IRQ line status.
+ *
+ * Bits 0-16 are reserved for the IRQF_* bits in linux/interrupt.h
+ *
+ * IRQ types
  */
-#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 */
+#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 */
 #ifdef CONFIG_IRQ_PER_CPU
-# define IRQ_PER_CPU	256	/* IRQ is per CPU */
+# define IRQ_PER_CPU		0x01000000	/* 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	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 */
+#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. */
 
 struct proc_dir_entry;
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 02/44] ALPHA: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 01/44] Consolidate flags for request_irq Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 03/44] ARM26: " Thomas Gleixner
                   ` (42 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, rth

[-- Attachment #1: irqflags-alpha.patch --]
[-- Type: text/plain, Size: 5387 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/alpha/kernel/irq.c        |    4 ++--
 arch/alpha/kernel/irq_alpha.c  |    2 +-
 arch/alpha/kernel/sys_jensen.c |    2 +-
 arch/alpha/kernel/sys_titan.c  |   14 +++++++-------
 include/asm-alpha/floppy.h     |    2 +-
 include/asm-alpha/signal.h     |    2 --
 6 files changed, 12 insertions(+), 14 deletions(-)

Index: linux-2.6.git/include/asm-alpha/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-alpha/floppy.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-alpha/floppy.h	2006-07-01 16:51:30.000000000 +0200
@@ -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,\
-					    SA_INTERRUPT, "floppy", NULL)
+					    IRQF_DISABLED, "floppy", NULL)
 #define fd_free_irq()           free_irq(FLOPPY_IRQ, NULL);
 
 #ifdef CONFIG_PCI
Index: linux-2.6.git/include/asm-alpha/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-alpha/signal.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-alpha/signal.h	2006-07-01 16:51:30.000000000 +0200
@@ -77,7 +77,6 @@ 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.
@@ -98,7 +97,6 @@ typedef unsigned long sigset_t;
 
 #define SA_ONESHOT	SA_RESETHAND
 #define SA_NOMASK	SA_NODEFER
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 /* 
  * sigaltstack controls
Index: linux-2.6.git/arch/alpha/kernel/irq_alpha.c
===================================================================
--- linux-2.6.git.orig/arch/alpha/kernel/irq_alpha.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/alpha/kernel/irq_alpha.c	2006-07-01 16:51:30.000000000 +0200
@@ -214,7 +214,7 @@ static unsigned int rtc_startup(unsigned
 
 struct irqaction timer_irqaction = {
 	.handler	= timer_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "timer",
 };
 
Index: linux-2.6.git/arch/alpha/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/alpha/kernel/irq.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/alpha/kernel/irq.c	2006-07-01 16:51:30.000000000 +0200
@@ -94,12 +94,12 @@ show_interrupts(struct seq_file *p, void
 #endif
 		seq_printf(p, " %14s", irq_desc[irq].chip->typename);
 		seq_printf(p, "  %c%s",
-			(action->flags & SA_INTERRUPT)?'+':' ',
+			(action->flags & IRQF_DISABLED)?'+':' ',
 			action->name);
 
 		for (action=action->next; action; action = action->next) {
 			seq_printf(p, ", %c%s",
-				  (action->flags & SA_INTERRUPT)?'+':' ',
+				  (action->flags & IRQF_DISABLED)?'+':' ',
 				   action->name);
 		}
 
Index: linux-2.6.git/arch/alpha/kernel/sys_jensen.c
===================================================================
--- linux-2.6.git.orig/arch/alpha/kernel/sys_jensen.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/alpha/kernel/sys_jensen.c	2006-07-01 16:51:30.000000000 +0200
@@ -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 |= SA_INTERRUPT;
+			irq_desc[irq].action->flags |= IRQF_DISABLED;
 	return 0;
 }
 
Index: linux-2.6.git/arch/alpha/kernel/sys_titan.c
===================================================================
--- linux-2.6.git.orig/arch/alpha/kernel/sys_titan.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/alpha/kernel/sys_titan.c	2006-07-01 16:51:30.000000000 +0200
@@ -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, SA_INTERRUPT, 
+	request_irq(63+16, titan_intr_nop, IRQF_DISABLED, 
 		    "CChip Error", NULL);
-	request_irq(62+16, titan_intr_nop, SA_INTERRUPT, 
+	request_irq(62+16, titan_intr_nop, IRQF_DISABLED, 
 		    "PChip 0 H_Error", NULL);
-	request_irq(61+16, titan_intr_nop, SA_INTERRUPT, 
+	request_irq(61+16, titan_intr_nop, IRQF_DISABLED, 
 		    "PChip 1 H_Error", NULL);
-	request_irq(60+16, titan_intr_nop, SA_INTERRUPT, 
+	request_irq(60+16, titan_intr_nop, IRQF_DISABLED, 
 		    "PChip 0 C_Error", NULL);
-	request_irq(59+16, titan_intr_nop, SA_INTERRUPT, 
+	request_irq(59+16, titan_intr_nop, IRQF_DISABLED, 
 		    "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, SA_INTERRUPT, 
+	request_irq(53+16, titan_intr_nop, IRQF_DISABLED, 
 		    "NMI", NULL);
-	request_irq(50+16, titan_intr_nop, SA_INTERRUPT, 
+	request_irq(50+16, titan_intr_nop, IRQF_DISABLED, 
 		    "Temperature Warning", NULL);
 
 	/*

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 03/44] ARM26: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 01/44] Consolidate flags for request_irq Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 02/44] ALPHA: Use the new IRQF_ constansts Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 04/44] ARM: " Thomas Gleixner
                   ` (41 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, spyro

[-- Attachment #1: irqflags-arm26.patch --]
[-- Type: text/plain, Size: 4549 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/arm26/kernel/irq.c    |   16 ++++++++--------
 arch/arm26/kernel/time.c   |    2 +-
 include/asm-arm26/floppy.h |    2 +-
 include/asm-arm26/signal.h |    2 --
 4 files changed, 10 insertions(+), 12 deletions(-)

Index: linux-2.6.git/include/asm-arm26/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-arm26/floppy.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-arm26/floppy.h	2006-07-01 16:51:30.000000000 +0200
@@ -22,7 +22,7 @@
 
 #define fd_inb(port)		inb((port))
 #define fd_request_irq()	request_irq(IRQ_FLOPPYDISK,floppy_interrupt,\
-					SA_INTERRUPT,"floppy",NULL)
+					IRQF_DISABLED,"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)
Index: linux-2.6.git/include/asm-arm26/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-arm26/signal.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-arm26/signal.h	2006-07-01 16:51:30.000000000 +0200
@@ -82,7 +82,6 @@ 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.
  *
@@ -101,7 +100,6 @@ typedef unsigned long sigset_t;
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 
 /* 
Index: linux-2.6.git/arch/arm26/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/arm26/kernel/irq.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm26/kernel/irq.c	2006-07-01 16:51:30.000000000 +0200
@@ -190,7 +190,7 @@ __do_irq(unsigned int irq, struct irqact
 	int ret;
 
 	spin_unlock(&irq_controller_lock);
-	if (!(action->flags & SA_INTERRUPT))
+	if (!(action->flags & IRQF_DISABLED))
 		local_irq_enable();
 
 	status = 0;
@@ -201,7 +201,7 @@ __do_irq(unsigned int irq, struct irqact
 		action = action->next;
 	} while (action);
 
-	if (status & SA_SAMPLE_RANDOM)
+	if (status & IRQF_SAMPLE_RANDOM)
 		add_interrupt_randomness(irq);
 
 	spin_lock_irq(&irq_controller_lock);
@@ -451,7 +451,7 @@ int setup_irq(unsigned int irq, struct i
 	 * so we have to be careful not to interfere with a
 	 * running system.
 	 */
-	if (new->flags & SA_SAMPLE_RANDOM) {
+	if (new->flags & IRQF_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 i
 	p = &desc->action;
 	if ((old = *p) != NULL) {
 		/* Can't share interrupts unless both agree to */
-		if (!(old->flags & new->flags & SA_SHIRQ)) {
+		if (!(old->flags & new->flags & IRQF_SHARED)) {
 			spin_unlock_irqrestore(&irq_controller_lock, flags);
 			return -EBUSY;
 		}
@@ -526,11 +526,11 @@ int setup_irq(unsigned int irq, struct i
  *
  *	Flags:
  *
- *	SA_SHIRQ		Interrupt is shared
+ *	IRQF_SHARED		Interrupt is shared
  *
- *	SA_INTERRUPT		Disable local interrupts while processing
+ *	IRQF_DISABLED	Disable local interrupts while processing
  *
- *	SA_SAMPLE_RANDOM	The interrupt can be used for entropy
+ *	IRQF_SAMPLE_RANDOM	The interrupt can be used for entropy
  *
  */
 
@@ -542,7 +542,7 @@ int request_irq(unsigned int irq, irqret
 	struct irqaction *action;
 
 	if (irq >= NR_IRQS || !irq_desc[irq].valid || !handler ||
-	    (irq_flags & SA_SHIRQ && !dev_id))
+	    (irq_flags & IRQF_SHARED && !dev_id))
 		return -EINVAL;
 
 	action = (struct irqaction *)kmalloc(sizeof(struct irqaction), GFP_KERNEL);
Index: linux-2.6.git/arch/arm26/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm26/kernel/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm26/kernel/time.c	2006-07-01 16:51:30.000000000 +0200
@@ -205,7 +205,7 @@ static irqreturn_t timer_interrupt(int i
 
 static struct irqaction timer_irq = {
 	.name	= "timer",
-	.flags	= SA_INTERRUPT,
+	.flags	= IRQF_DISABLED,
 	.handler = timer_interrupt,
 };
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 04/44] ARM: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (2 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 03/44] ARM26: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 05/44] CHRIS: " Thomas Gleixner
                   ` (40 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, linux

[-- Attachment #1: irqflags-arm.patch --]
[-- Type: text/plain, Size: 45409 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/arm/common/time-acorn.c             |    2 +-
 arch/arm/kernel/irq.c                    |   24 ++++++++++++------------
 arch/arm/mach-aaec2000/core.c            |    2 +-
 arch/arm/mach-at91rm9200/time.c          |    2 +-
 arch/arm/mach-clps711x/time.c            |    2 +-
 arch/arm/mach-clps7500/core.c            |    2 +-
 arch/arm/mach-ebsa110/core.c             |    2 +-
 arch/arm/mach-ep93xx/core.c              |    2 +-
 arch/arm/mach-footbridge/dc21285-timer.c |    2 +-
 arch/arm/mach-footbridge/dc21285.c       |   10 +++++-----
 arch/arm/mach-footbridge/isa-timer.c     |    4 ++--
 arch/arm/mach-h720x/cpu-h7201.c          |    2 +-
 arch/arm/mach-h720x/cpu-h7202.c          |    2 +-
 arch/arm/mach-imx/time.c                 |    2 +-
 arch/arm/mach-integrator/core.c          |    2 +-
 arch/arm/mach-integrator/time.c          |    2 +-
 arch/arm/mach-iop3xx/iop321-time.c       |    2 +-
 arch/arm/mach-iop3xx/iop331-time.c       |    2 +-
 arch/arm/mach-ixp2000/core.c             |    2 +-
 arch/arm/mach-ixp23xx/core.c             |    2 +-
 arch/arm/mach-ixp4xx/common.c            |    2 +-
 arch/arm/mach-ixp4xx/nas100d-power.c     |    2 +-
 arch/arm/mach-ixp4xx/nslu2-power.c       |    4 ++--
 arch/arm/mach-lh7a40x/time.c             |    2 +-
 arch/arm/mach-netx/time.c                |    2 +-
 arch/arm/mach-omap1/board-osk.c          |    2 +-
 arch/arm/mach-omap1/fpga.c               |    2 +-
 arch/arm/mach-omap1/pm.c                 |    2 +-
 arch/arm/mach-omap1/serial.c             |    2 +-
 arch/arm/mach-omap1/time.c               |    4 ++--
 arch/arm/mach-omap2/board-apollon.c      |    6 +++---
 arch/arm/mach-omap2/timer-gp.c           |    2 +-
 arch/arm/mach-pnx4008/time.c             |    2 +-
 arch/arm/mach-pxa/corgi.c                |    2 +-
 arch/arm/mach-pxa/lubbock.c              |    2 +-
 arch/arm/mach-pxa/mainstone.c            |    2 +-
 arch/arm/mach-pxa/poodle.c               |    2 +-
 arch/arm/mach-pxa/sharpsl_pm.c           |    8 ++++----
 arch/arm/mach-pxa/spitz.c                |    2 +-
 arch/arm/mach-pxa/time.c                 |    2 +-
 arch/arm/mach-pxa/tosa.c                 |    2 +-
 arch/arm/mach-realview/core.c            |    2 +-
 arch/arm/mach-rpc/dma.c                  |    2 +-
 arch/arm/mach-s3c2410/dma.c              |    2 +-
 arch/arm/mach-s3c2410/time.c             |    2 +-
 arch/arm/mach-s3c2410/usb-simtec.c       |    4 ++--
 arch/arm/mach-sa1100/collie_pm.c         |    4 ++--
 arch/arm/mach-sa1100/dma.c               |    2 +-
 arch/arm/mach-sa1100/h3600.c             |    2 +-
 arch/arm/mach-sa1100/time.c              |    2 +-
 arch/arm/mach-shark/core.c               |    2 +-
 arch/arm/mach-versatile/core.c           |    2 +-
 arch/arm/oprofile/op_model_xscale.c      |    2 +-
 arch/arm/plat-omap/dma.c                 |    2 +-
 arch/arm/plat-omap/pm.c                  |    2 +-
 arch/arm/plat-omap/timer32k.c            |    2 +-
 include/asm-arm/floppy.h                 |    2 +-
 include/asm-arm/irq.h                    |    2 +-
 include/asm-arm/signal.h                 |    6 ------
 59 files changed, 83 insertions(+), 89 deletions(-)

Index: linux-2.6.git/include/asm-arm/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-arm/floppy.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-arm/floppy.h	2006-07-01 16:51:31.000000000 +0200
@@ -25,7 +25,7 @@
 
 #define fd_inb(port)		inb((port))
 #define fd_request_irq()	request_irq(IRQ_FLOPPYDISK,floppy_interrupt,\
-					    SA_INTERRUPT,"floppy",NULL)
+					    IRQF_DISABLED,"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)
Index: linux-2.6.git/include/asm-arm/irq.h
===================================================================
--- linux-2.6.git.orig/include/asm-arm/irq.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-arm/irq.h	2006-07-01 16:51:31.000000000 +0200
@@ -26,7 +26,7 @@ extern void disable_irq(unsigned int);
 extern void enable_irq(unsigned int);
 
 /*
- * These correspond with the SA_TRIGGER_* defines, and therefore the
+ * These correspond with the IRQF_TRIGGER_* defines, and therefore the
  * IORESOURCE_IRQ_* defines.
  */
 #define __IRQT_RISEDGE	(1 << 0)
Index: linux-2.6.git/include/asm-arm/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-arm/signal.h	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/include/asm-arm/signal.h	2006-07-01 16:51:31.000000000 +0200
@@ -82,7 +82,6 @@ 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.
  *
@@ -101,7 +100,6 @@ typedef unsigned long sigset_t;
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 
 /* 
@@ -113,10 +111,6 @@ typedef unsigned long sigset_t;
 #define MINSIGSTKSZ	2048
 #define SIGSTKSZ	8192
 
-#ifdef __KERNEL__
-#define SA_TIMER		0x40000000
-#endif
-
 #include <asm-generic/signal.h>
 
 #ifdef __KERNEL__
Index: linux-2.6.git/arch/arm/common/time-acorn.c
===================================================================
--- linux-2.6.git.orig/arch/arm/common/time-acorn.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/common/time-acorn.c	2006-07-01 16:51:31.000000000 +0200
@@ -76,7 +76,7 @@ ioc_timer_interrupt(int irq, void *dev_i
 
 static struct irqaction ioc_timer_irq = {
 	.name		= "timer",
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.handler	= ioc_timer_interrupt
 };
 
Index: linux-2.6.git/arch/arm/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/arm/kernel/irq.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/kernel/irq.c	2006-07-01 16:51:31.000000000 +0200
@@ -340,7 +340,7 @@ __do_irq(unsigned int irq, struct irqact
 	spin_unlock(&irq_controller_lock);
 
 #ifdef CONFIG_NO_IDLE_HZ
-	if (!(action->flags & SA_TIMER) && system_timer->dyn_tick != NULL) {
+	if (!(action->flags & IRQF_TIMER) && system_timer->dyn_tick != NULL) {
 		spin_lock(&system_timer->dyn_tick->lock);
 		if (system_timer->dyn_tick->state & DYN_TICK_ENABLED)
 			system_timer->dyn_tick->handler(irq, 0, regs);
@@ -348,7 +348,7 @@ __do_irq(unsigned int irq, struct irqact
 	}
 #endif
 
-	if (!(action->flags & SA_INTERRUPT))
+	if (!(action->flags & IRQF_DISABLED))
 		local_irq_enable();
 
 	status = 0;
@@ -360,7 +360,7 @@ __do_irq(unsigned int irq, struct irqact
 		action = action->next;
 	} while (action);
 
-	if (status & SA_SAMPLE_RANDOM)
+	if (status & IRQF_SAMPLE_RANDOM)
 		add_interrupt_randomness(irq);
 
 	spin_lock_irq(&irq_controller_lock);
@@ -669,7 +669,7 @@ int setup_irq(unsigned int irq, struct i
 	 * so we have to be careful not to interfere with a
 	 * running system.
 	 */
-	if (new->flags & SA_SAMPLE_RANDOM) {
+	if (new->flags & IRQF_SAMPLE_RANDOM) {
 		/*
 		 * This function might sleep, we want to call it first,
 		 * outside of the atomic block.
@@ -692,8 +692,8 @@ int setup_irq(unsigned int irq, struct i
 		 * Can't share interrupts unless both agree to and are
 		 * the same type.
 		 */
-		if (!(old->flags & new->flags & SA_SHIRQ) ||
-		    (~old->flags & new->flags) & SA_TRIGGER_MASK) {
+		if (!(old->flags & new->flags & IRQF_SHARED) ||
+		    (~old->flags & new->flags) & IRQF_TRIGGER_MASK) {
 			spin_unlock_irqrestore(&irq_controller_lock, flags);
 			return -EBUSY;
 		}
@@ -714,9 +714,9 @@ int setup_irq(unsigned int irq, struct i
 		desc->pending = 0;
 		desc->disable_depth = 1;
 
-		if (new->flags & SA_TRIGGER_MASK &&
+		if (new->flags & IRQF_TRIGGER_MASK &&
 		    desc->chip->set_type) {
-			unsigned int type = new->flags & SA_TRIGGER_MASK;
+			unsigned int type = new->flags & IRQF_TRIGGER_MASK;
 			desc->chip->set_type(irq, type);
 		}
 
@@ -754,11 +754,11 @@ int setup_irq(unsigned int irq, struct i
  *
  *	Flags:
  *
- *	SA_SHIRQ		Interrupt is shared
+ *	IRQF_SHARED		Interrupt is shared
  *
- *	SA_INTERRUPT		Disable local interrupts while processing
+ *	IRQF_DISABLED	Disable local interrupts while processing
  *
- *	SA_SAMPLE_RANDOM	The interrupt can be used for entropy
+ *	IRQF_SAMPLE_RANDOM	The interrupt can be used for entropy
  *
  */
 int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_regs *),
@@ -768,7 +768,7 @@ int request_irq(unsigned int irq, irqret
 	struct irqaction *action;
 
 	if (irq >= NR_IRQS || !irq_desc[irq].valid || !handler ||
-	    (irq_flags & SA_SHIRQ && !dev_id))
+	    (irq_flags & IRQF_SHARED && !dev_id))
 		return -EINVAL;
 
 	action = (struct irqaction *)kmalloc(sizeof(struct irqaction), GFP_KERNEL);
Index: linux-2.6.git/arch/arm/mach-aaec2000/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-aaec2000/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-aaec2000/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -142,7 +142,7 @@ aaec2000_timer_interrupt(int irq, void *
 
 static struct irqaction aaec2000_timer_irq = {
 	.name		= "AAEC-2000 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= aaec2000_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-at91rm9200/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-at91rm9200/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-at91rm9200/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -85,7 +85,7 @@ static irqreturn_t at91rm9200_timer_inte
 
 static struct irqaction at91rm9200_timer_irq = {
 	.name		= "at91_tick",
-	.flags		= SA_SHIRQ | SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_SHARED | IRQF_DISABLED | IRQF_TIMER,
 	.handler	= at91rm9200_timer_interrupt
 };
 
Index: linux-2.6.git/arch/arm/mach-clps711x/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-clps711x/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-clps711x/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -57,7 +57,7 @@ p720t_timer_interrupt(int irq, void *dev
 
 static struct irqaction clps711x_timer_irq = {
 	.name		= "CLPS711x Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= p720t_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-clps7500/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-clps7500/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-clps7500/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -315,7 +315,7 @@ clps7500_timer_interrupt(int irq, void *
 
 static struct irqaction clps7500_timer_irq = {
 	.name		= "CLPS7500 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= clps7500_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-ebsa110/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ebsa110/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ebsa110/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -199,7 +199,7 @@ ebsa110_timer_interrupt(int irq, void *d
 
 static struct irqaction ebsa110_timer_irq = {
 	.name		= "EBSA110 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= ebsa110_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-ep93xx/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ep93xx/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ep93xx/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -116,7 +116,7 @@ static int ep93xx_timer_interrupt(int ir
 
 static struct irqaction ep93xx_timer_irq = {
 	.name		= "ep93xx timer",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= ep93xx_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-footbridge/dc21285.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-footbridge/dc21285.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-footbridge/dc21285.c	2006-07-01 16:51:31.000000000 +0200
@@ -332,15 +332,15 @@ void __init dc21285_preinit(void)
 	/*
 	 * We don't care if these fail.
 	 */
-	request_irq(IRQ_PCI_SERR, dc21285_serr_irq, SA_INTERRUPT,
+	request_irq(IRQ_PCI_SERR, dc21285_serr_irq, IRQF_DISABLED,
 		    "PCI system error", &serr_timer);
-	request_irq(IRQ_PCI_PERR, dc21285_parity_irq, SA_INTERRUPT,
+	request_irq(IRQ_PCI_PERR, dc21285_parity_irq, IRQF_DISABLED,
 		    "PCI parity error", &perr_timer);
-	request_irq(IRQ_PCI_ABORT, dc21285_abort_irq, SA_INTERRUPT,
+	request_irq(IRQ_PCI_ABORT, dc21285_abort_irq, IRQF_DISABLED,
 		    "PCI abort", NULL);
-	request_irq(IRQ_DISCARD_TIMER, dc21285_discard_irq, SA_INTERRUPT,
+	request_irq(IRQ_DISCARD_TIMER, dc21285_discard_irq, IRQF_DISABLED,
 		    "Discard timer", NULL);
-	request_irq(IRQ_PCI_DPERR, dc21285_dparity_irq, SA_INTERRUPT,
+	request_irq(IRQ_PCI_DPERR, dc21285_dparity_irq, IRQF_DISABLED,
 		    "PCI data parity", NULL);
 
 	if (cfn_mode) {
Index: linux-2.6.git/arch/arm/mach-footbridge/dc21285-timer.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-footbridge/dc21285-timer.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-footbridge/dc21285-timer.c	2006-07-01 16:51:31.000000000 +0200
@@ -43,7 +43,7 @@ timer1_interrupt(int irq, void *dev_id, 
 static struct irqaction footbridge_timer_irq = {
 	.name		= "Timer1 timer tick",
 	.handler	= timer1_interrupt,
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 };
 
 /*
Index: linux-2.6.git/arch/arm/mach-footbridge/isa-timer.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-footbridge/isa-timer.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-footbridge/isa-timer.c	2006-07-01 16:51:31.000000000 +0200
@@ -72,7 +72,7 @@ isa_timer_interrupt(int irq, void *dev_i
 static struct irqaction isa_timer_irq = {
 	.name		= "ISA timer tick",
 	.handler	= isa_timer_interrupt,
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 };
 
 static void __init isa_timer_init(void)
@@ -85,7 +85,7 @@ static void __init isa_timer_init(void)
 	outb((mSEC_10_from_14/6) & 0xFF, 0x40);
 	outb((mSEC_10_from_14/6) >> 8, 0x40);
 
-	setup_irq(IRQ_ISA_TIMER, &isa_timer_irq);
+	setup_irq(IRQ_IIRQF_TIMER, &isa_timer_irq);
 }
 
 struct sys_timer isa_timer = {
Index: linux-2.6.git/arch/arm/mach-h720x/cpu-h7201.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-h720x/cpu-h7201.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-h720x/cpu-h7201.c	2006-07-01 16:51:31.000000000 +0200
@@ -41,7 +41,7 @@ h7201_timer_interrupt(int irq, void *dev
 
 static struct irqaction h7201_timer_irq = {
 	.name		= "h7201 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= h7201_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-h720x/cpu-h7202.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-h720x/cpu-h7202.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-h720x/cpu-h7202.c	2006-07-01 16:51:31.000000000 +0200
@@ -171,7 +171,7 @@ static struct irqchip h7202_timerx_chip 
 
 static struct irqaction h7202_timer_irq = {
 	.name		= "h7202 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= h7202_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-imx/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-imx/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-imx/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -71,7 +71,7 @@ imx_timer_interrupt(int irq, void *dev_i
 
 static struct irqaction imx_timer_irq = {
 	.name		= "i.MX Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= imx_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-integrator/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-integrator/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-integrator/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -281,7 +281,7 @@ integrator_timer_interrupt(int irq, void
 
 static struct irqaction integrator_timer_irq = {
 	.name		= "Integrator Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= integrator_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-integrator/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-integrator/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-integrator/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -125,7 +125,7 @@ static int rtc_probe(struct amba_device 
 
 	xtime.tv_sec = __raw_readl(rtc_base + RTC_DR);
 
-	ret = request_irq(dev->irq[0], arm_rtc_interrupt, SA_INTERRUPT,
+	ret = request_irq(dev->irq[0], arm_rtc_interrupt, IRQF_DISABLED,
 			  "rtc-pl030", dev);
 	if (ret)
 		goto map_out;
Index: linux-2.6.git/arch/arm/mach-iop3xx/iop321-time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-iop3xx/iop321-time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-iop3xx/iop321-time.c	2006-07-01 16:51:31.000000000 +0200
@@ -85,7 +85,7 @@ iop321_timer_interrupt(int irq, void *de
 static struct irqaction iop321_timer_irq = {
 	.name		= "IOP321 Timer Tick",
 	.handler	= iop321_timer_interrupt,
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 };
 
 static void __init iop321_timer_init(void)
Index: linux-2.6.git/arch/arm/mach-iop3xx/iop331-time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-iop3xx/iop331-time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-iop3xx/iop331-time.c	2006-07-01 16:51:31.000000000 +0200
@@ -82,7 +82,7 @@ iop331_timer_interrupt(int irq, void *de
 static struct irqaction iop331_timer_irq = {
 	.name		= "IOP331 Timer Tick",
 	.handler	= iop331_timer_interrupt,
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 };
 
 static void __init iop331_timer_init(void)
Index: linux-2.6.git/arch/arm/mach-ixp2000/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ixp2000/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ixp2000/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -223,7 +223,7 @@ static int ixp2000_timer_interrupt(int i
 
 static struct irqaction ixp2000_timer_irq = {
 	.name		= "IXP2000 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= ixp2000_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-ixp23xx/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ixp23xx/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ixp23xx/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -363,7 +363,7 @@ ixp23xx_timer_interrupt(int irq, void *d
 static struct irqaction ixp23xx_timer_irq = {
 	.name		= "IXP23xx Timer Tick",
 	.handler	= ixp23xx_timer_interrupt,
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 };
 
 void __init ixp23xx_init_timer(void)
Index: linux-2.6.git/arch/arm/mach-ixp4xx/common.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ixp4xx/common.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ixp4xx/common.c	2006-07-01 16:51:31.000000000 +0200
@@ -287,7 +287,7 @@ static irqreturn_t ixp4xx_timer_interrup
 
 static struct irqaction ixp4xx_timer_irq = {
 	.name		= "IXP4xx Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= ixp4xx_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-ixp4xx/nas100d-power.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ixp4xx/nas100d-power.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ixp4xx/nas100d-power.c	2006-07-01 16:51:31.000000000 +0200
@@ -42,7 +42,7 @@ static int __init nas100d_power_init(voi
 	set_irq_type(NAS100D_RB_IRQ, IRQT_LOW);
 
 	if (request_irq(NAS100D_RB_IRQ, &nas100d_reset_handler,
-		SA_INTERRUPT, "NAS100D reset button", NULL) < 0) {
+		IRQF_DISABLED, "NAS100D reset button", NULL) < 0) {
 
 		printk(KERN_DEBUG "Reset Button IRQ %d not available\n",
 			NAS100D_RB_IRQ);
Index: linux-2.6.git/arch/arm/mach-ixp4xx/nslu2-power.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-ixp4xx/nslu2-power.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-ixp4xx/nslu2-power.c	2006-07-01 16:51:31.000000000 +0200
@@ -54,7 +54,7 @@ static int __init nslu2_power_init(void)
 	set_irq_type(NSLU2_PB_IRQ, IRQT_HIGH);
 
 	if (request_irq(NSLU2_RB_IRQ, &nslu2_reset_handler,
-		SA_INTERRUPT, "NSLU2 reset button", NULL) < 0) {
+		IRQF_DISABLED, "NSLU2 reset button", NULL) < 0) {
 
 		printk(KERN_DEBUG "Reset Button IRQ %d not available\n",
 			NSLU2_RB_IRQ);
@@ -63,7 +63,7 @@ static int __init nslu2_power_init(void)
 	}
 
 	if (request_irq(NSLU2_PB_IRQ, &nslu2_power_handler,
-		SA_INTERRUPT, "NSLU2 power button", NULL) < 0) {
+		IRQF_DISABLED, "NSLU2 power button", NULL) < 0) {
 
 		printk(KERN_DEBUG "Power Button IRQ %d not available\n",
 			NSLU2_PB_IRQ);
Index: linux-2.6.git/arch/arm/mach-lh7a40x/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-lh7a40x/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-lh7a40x/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -52,7 +52,7 @@ lh7a40x_timer_interrupt(int irq, void *d
 
 static struct irqaction lh7a40x_timer_irq = {
 	.name		= "LHA740x Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= lh7a40x_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-netx/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-netx/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-netx/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -54,7 +54,7 @@ netx_timer_interrupt(int irq, void *dev_
 
 static struct irqaction netx_timer_irq = {
 	.name           = "NetX Timer Tick",
-	.flags          = SA_INTERRUPT | SA_TIMER,
+	.flags          = IRQF_DISABLED | IRQF_TIMER,
 	.handler        = netx_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-omap1/board-osk.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap1/board-osk.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap1/board-osk.c	2006-07-01 16:51:31.000000000 +0200
@@ -318,7 +318,7 @@ static void __init osk_mistral_init(void
 		 */
 		ret = request_irq(OMAP_GPIO_IRQ(OMAP_MPUIO(2)),
 				&osk_mistral_wake_interrupt,
-				SA_SHIRQ, "mistral_wakeup",
+				IRQF_SHARED, "mistral_wakeup",
 				&osk_mistral_wake_interrupt);
 		if (ret != 0) {
 			omap_free_gpio(OMAP_MPUIO(2));
Index: linux-2.6.git/arch/arm/mach-omap1/fpga.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap1/fpga.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap1/fpga.c	2006-07-01 16:51:31.000000000 +0200
@@ -133,7 +133,7 @@ static struct irqchip omap_fpga_irq = {
  * mask_ack routine for all of the FPGA interrupts has been changed from
  * fpga_mask_ack_irq() to fpga_ack_irq() so that the specific FPGA interrupt
  * being serviced is left unmasked.  We can do this because the FPGA cascade
- * interrupt is installed with the SA_INTERRUPT flag, which leaves all
+ * interrupt is installed with the IRQF_DISABLED flag, which leaves all
  * interrupts masked at the CPU while an FPGA interrupt handler executes.
  *
  * Limited testing indicates that this workaround appears to be effective
Index: linux-2.6.git/arch/arm/mach-omap1/pm.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap1/pm.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap1/pm.c	2006-07-01 16:51:31.000000000 +0200
@@ -687,7 +687,7 @@ static irqreturn_t  omap_wakeup_interrup
 
 static struct irqaction omap_wakeup_irq = {
 	.name		= "peripheral wakeup",
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.handler	= omap_wakeup_interrupt
 };
 
Index: linux-2.6.git/arch/arm/mach-omap1/serial.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap1/serial.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap1/serial.c	2006-07-01 16:51:31.000000000 +0200
@@ -252,7 +252,7 @@ static void __init omap_serial_set_port_
 	}
 	omap_set_gpio_direction(gpio_nr, 1);
 	ret = request_irq(OMAP_GPIO_IRQ(gpio_nr), &omap_serial_wake_interrupt,
-			  SA_TRIGGER_RISING, "serial wakeup", NULL);
+			  IRQF_TRIGGER_RISING, "serial wakeup", NULL);
 	if (ret) {
 		omap_free_gpio(gpio_nr);
 		printk(KERN_ERR "No interrupt for UART wake GPIO: %i\n",
Index: linux-2.6.git/arch/arm/mach-omap1/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap1/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap1/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -177,7 +177,7 @@ static irqreturn_t omap_mpu_timer_interr
 
 static struct irqaction omap_mpu_timer_irq = {
 	.name		= "mpu timer",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= omap_mpu_timer_interrupt,
 };
 
@@ -191,7 +191,7 @@ static irqreturn_t omap_mpu_timer1_inter
 
 static struct irqaction omap_mpu_timer1_irq = {
 	.name		= "mpu timer1 overflow",
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.handler	= omap_mpu_timer1_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-omap2/board-apollon.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap2/board-apollon.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap2/board-apollon.c	2006-07-01 16:51:31.000000000 +0200
@@ -234,17 +234,17 @@ static void __init apollon_sw_init(void)
 
 	set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQT_RISING);
 	if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
-				SA_SHIRQ, "enter sw",
+				IRQF_SHARED, "enter sw",
 				&apollon_sw_interrupt))
 		return;
 	set_irq_type(OMAP_GPIO_IRQ(SW_UP_GPIO17), IRQT_RISING);
 	if (request_irq(OMAP_GPIO_IRQ(SW_UP_GPIO17), &apollon_sw_interrupt,
-				SA_SHIRQ, "up sw",
+				IRQF_SHARED, "up sw",
 				&apollon_sw_interrupt))
 		return;
 	set_irq_type(OMAP_GPIO_IRQ(SW_DOWN_GPIO58), IRQT_RISING);
 	if (request_irq(OMAP_GPIO_IRQ(SW_DOWN_GPIO58), &apollon_sw_interrupt,
-				SA_SHIRQ, "down sw",
+				IRQF_SHARED, "down sw",
 				&apollon_sw_interrupt))
 		return;
 }
Index: linux-2.6.git/arch/arm/mach-omap2/timer-gp.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-omap2/timer-gp.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-omap2/timer-gp.c	2006-07-01 16:51:31.000000000 +0200
@@ -87,7 +87,7 @@ static irqreturn_t omap2_gp_timer_interr
 
 static struct irqaction omap2_gp_timer_irq = {
 	.name		= "gp timer",
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.handler	= omap2_gp_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-pnx4008/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pnx4008/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pnx4008/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -86,7 +86,7 @@ static irqreturn_t pnx4008_timer_interru
 
 static struct irqaction pnx4008_timer_irq = {
 	.name = "PNX4008 Tick Timer",
-	.flags = SA_INTERRUPT | SA_TIMER,
+	.flags = IRQF_DISABLED | IRQF_TIMER,
 	.handler = pnx4008_timer_interrupt
 };
 
Index: linux-2.6.git/arch/arm/mach-pxa/corgi.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/corgi.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/corgi.c	2006-07-01 16:51:31.000000000 +0200
@@ -225,7 +225,7 @@ static int corgi_mci_init(struct device 
 	corgi_mci_platform_data.detect_delay = msecs_to_jiffies(250);
 
 	err = request_irq(CORGI_IRQ_GPIO_nSD_DETECT, corgi_detect_int,
-			  SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+			  IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 			  "MMC card detect", data);
 	if (err) {
 		printk(KERN_ERR "corgi_mci_init: MMC/SD: can't request MMC card detect IRQ\n");
Index: linux-2.6.git/arch/arm/mach-pxa/lubbock.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/lubbock.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/lubbock.c	2006-07-01 16:51:31.000000000 +0200
@@ -419,7 +419,7 @@ static int lubbock_mci_init(struct devic
 	init_timer(&mmc_timer);
 	mmc_timer.data = (unsigned long) data;
 	return request_irq(LUBBOCK_SD_IRQ, lubbock_detect_int,
-			SA_SAMPLE_RANDOM, "lubbock-sd-detect", data);
+			IRQF_SAMPLE_RANDOM, "lubbock-sd-detect", data);
 }
 
 static int lubbock_mci_get_ro(struct device *dev)
Index: linux-2.6.git/arch/arm/mach-pxa/mainstone.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/mainstone.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/mainstone.c	2006-07-01 16:51:31.000000000 +0200
@@ -331,7 +331,7 @@ static int mainstone_mci_init(struct dev
 	 */
 	MST_MSCWR1 &= ~MST_MSCWR1_MS_SEL;
 
-	err = request_irq(MAINSTONE_MMC_IRQ, mstone_detect_int, SA_INTERRUPT,
+	err = request_irq(MAINSTONE_MMC_IRQ, mstone_detect_int, IRQF_DISABLED,
 			     "MMC card detect", data);
 	if (err) {
 		printk(KERN_ERR "mainstone_mci_init: MMC/SD: can't request MMC card detect IRQ\n");
Index: linux-2.6.git/arch/arm/mach-pxa/poodle.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/poodle.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/poodle.c	2006-07-01 16:51:31.000000000 +0200
@@ -212,7 +212,7 @@ static int poodle_mci_init(struct device
 	poodle_mci_platform_data.detect_delay = msecs_to_jiffies(250);
 
 	err = request_irq(POODLE_IRQ_GPIO_nSD_DETECT, poodle_detect_int,
-			  SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+			  IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 			  "MMC card detect", data);
 	if (err) {
 		printk(KERN_ERR "poodle_mci_init: MMC/SD: can't request MMC card detect IRQ\n");
Index: linux-2.6.git/arch/arm/mach-pxa/sharpsl_pm.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/sharpsl_pm.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/sharpsl_pm.c	2006-07-01 16:51:31.000000000 +0200
@@ -142,18 +142,18 @@ void sharpsl_pm_pxa_init(void)
 	pxa_gpio_mode(sharpsl_pm.machinfo->gpio_batlock | GPIO_IN);
 
 	/* Register interrupt handlers */
-	if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_acin), sharpsl_ac_isr, SA_INTERRUPT, "AC Input Detect", sharpsl_ac_isr)) {
+	if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_acin), sharpsl_ac_isr, IRQF_DISABLED, "AC Input Detect", sharpsl_ac_isr)) {
 		dev_err(sharpsl_pm.dev, "Could not get irq %d.\n", IRQ_GPIO(sharpsl_pm.machinfo->gpio_acin));
 	}
 	else set_irq_type(IRQ_GPIO(sharpsl_pm.machinfo->gpio_acin),IRQT_BOTHEDGE);
 
-	if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_batlock), sharpsl_fatal_isr, SA_INTERRUPT, "Battery Cover", sharpsl_fatal_isr)) {
+	if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_batlock), sharpsl_fatal_isr, IRQF_DISABLED, "Battery Cover", sharpsl_fatal_isr)) {
 		dev_err(sharpsl_pm.dev, "Could not get irq %d.\n", IRQ_GPIO(sharpsl_pm.machinfo->gpio_batlock));
 	}
 	else set_irq_type(IRQ_GPIO(sharpsl_pm.machinfo->gpio_batlock),IRQT_FALLING);
 
 	if (sharpsl_pm.machinfo->gpio_fatal) {
-		if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_fatal), sharpsl_fatal_isr, SA_INTERRUPT, "Fatal Battery", sharpsl_fatal_isr)) {
+		if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_fatal), sharpsl_fatal_isr, IRQF_DISABLED, "Fatal Battery", sharpsl_fatal_isr)) {
 			dev_err(sharpsl_pm.dev, "Could not get irq %d.\n", IRQ_GPIO(sharpsl_pm.machinfo->gpio_fatal));
 		}
 		else set_irq_type(IRQ_GPIO(sharpsl_pm.machinfo->gpio_fatal),IRQT_FALLING);
@@ -162,7 +162,7 @@ void sharpsl_pm_pxa_init(void)
 	if (sharpsl_pm.machinfo->batfull_irq)
 	{
 		/* Register interrupt handler. */
-		if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_batfull), sharpsl_chrg_full_isr, SA_INTERRUPT, "CO", sharpsl_chrg_full_isr)) {
+		if (request_irq(IRQ_GPIO(sharpsl_pm.machinfo->gpio_batfull), sharpsl_chrg_full_isr, IRQF_DISABLED, "CO", sharpsl_chrg_full_isr)) {
 			dev_err(sharpsl_pm.dev, "Could not get irq %d.\n", IRQ_GPIO(sharpsl_pm.machinfo->gpio_batfull));
 		}
 		else set_irq_type(IRQ_GPIO(sharpsl_pm.machinfo->gpio_batfull),IRQT_RISING);
Index: linux-2.6.git/arch/arm/mach-pxa/spitz.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/spitz.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/spitz.c	2006-07-01 16:51:31.000000000 +0200
@@ -308,7 +308,7 @@ static int spitz_mci_init(struct device 
 	spitz_mci_platform_data.detect_delay = msecs_to_jiffies(250);
 
 	err = request_irq(SPITZ_IRQ_GPIO_nSD_DETECT, spitz_detect_int,
-			  SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+			  IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 			  "MMC card detect", data);
 	if (err) {
 		printk(KERN_ERR "spitz_mci_init: MMC/SD: can't request MMC card detect IRQ\n");
Index: linux-2.6.git/arch/arm/mach-pxa/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -117,7 +117,7 @@ pxa_timer_interrupt(int irq, void *dev_i
 
 static struct irqaction pxa_timer_irq = {
 	.name		= "PXA Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= pxa_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-pxa/tosa.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-pxa/tosa.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-pxa/tosa.c	2006-07-01 16:51:31.000000000 +0200
@@ -185,7 +185,7 @@ static int tosa_mci_init(struct device *
 
 	tosa_mci_platform_data.detect_delay = msecs_to_jiffies(250);
 
-	err = request_irq(TOSA_IRQ_GPIO_nSD_DETECT, tosa_detect_int, SA_INTERRUPT,
+	err = request_irq(TOSA_IRQ_GPIO_nSD_DETECT, tosa_detect_int, IRQF_DISABLED,
 				"MMC/SD card detect", data);
 	if (err) {
 		printk(KERN_ERR "tosa_mci_init: MMC/SD: can't request MMC card detect IRQ\n");
Index: linux-2.6.git/arch/arm/mach-realview/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-realview/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-realview/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -536,7 +536,7 @@ static irqreturn_t realview_timer_interr
 
 static struct irqaction realview_timer_irq = {
 	.name		= "RealView Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= realview_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-rpc/dma.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-rpc/dma.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-rpc/dma.c	2006-07-01 16:51:31.000000000 +0200
@@ -128,7 +128,7 @@ static irqreturn_t iomd_dma_handle(int i
 static int iomd_request_dma(dmach_t channel, dma_t *dma)
 {
 	return request_irq(dma->dma_irq, iomd_dma_handle,
-			   SA_INTERRUPT, dma->device_id, dma);
+			   IRQF_DISABLED, dma->device_id, dma);
 }
 
 static void iomd_free_dma(dmach_t channel, dma_t *dma)
Index: linux-2.6.git/arch/arm/mach-s3c2410/dma.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-s3c2410/dma.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-s3c2410/dma.c	2006-07-01 16:51:31.000000000 +0200
@@ -718,7 +718,7 @@ int s3c2410_dma_request(unsigned int cha
 		pr_debug("dma%d: %s : requesting irq %d\n",
 			 channel, __FUNCTION__, chan->irq);
 
-		err = request_irq(chan->irq, s3c2410_dma_irq, SA_INTERRUPT,
+		err = request_irq(chan->irq, s3c2410_dma_irq, IRQF_DISABLED,
 				  client->name, (void *)chan);
 
 		if (err) {
Index: linux-2.6.git/arch/arm/mach-s3c2410/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-s3c2410/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-s3c2410/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -137,7 +137,7 @@ s3c2410_timer_interrupt(int irq, void *d
 
 static struct irqaction s3c2410_timer_irq = {
 	.name		= "S3C2410 Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= s3c2410_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-s3c2410/usb-simtec.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-s3c2410/usb-simtec.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-s3c2410/usb-simtec.c	2006-07-01 16:51:31.000000000 +0200
@@ -85,8 +85,8 @@ static void usb_simtec_enableoc(struct s
 
 	if (on) {
 		ret = request_irq(IRQ_USBOC, usb_simtec_ocirq,
-				  SA_INTERRUPT | SA_TRIGGER_RISING |
-				   SA_TRIGGER_FALLING,
+				  IRQF_DISABLED | IRQF_TRIGGER_RISING |
+				   IRQF_TRIGGER_FALLING,
 				  "USB Over-current", info);
 		if (ret != 0) {
 			printk(KERN_ERR "failed to request usb oc irq\n");
Index: linux-2.6.git/arch/arm/mach-sa1100/collie_pm.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-sa1100/collie_pm.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-sa1100/collie_pm.c	2006-07-01 16:51:31.000000000 +0200
@@ -45,12 +45,12 @@ static void collie_charger_init(void)
 	}
 
 	/* Register interrupt handler. */
-	if ((err = request_irq(COLLIE_IRQ_GPIO_AC_IN, sharpsl_ac_isr, SA_INTERRUPT,
+	if ((err = request_irq(COLLIE_IRQ_GPIO_AC_IN, sharpsl_ac_isr, IRQF_DISABLED,
 			       "ACIN", sharpsl_ac_isr))) {
 		printk("Could not get irq %d.\n", COLLIE_IRQ_GPIO_AC_IN);
 		return;
 	}
-	if ((err = request_irq(COLLIE_IRQ_GPIO_CO, sharpsl_chrg_full_isr, SA_INTERRUPT,
+	if ((err = request_irq(COLLIE_IRQ_GPIO_CO, sharpsl_chrg_full_isr, IRQF_DISABLED,
 			       "CO", sharpsl_chrg_full_isr))) {
 		free_irq(COLLIE_IRQ_GPIO_AC_IN, sharpsl_ac_isr);
 		printk("Could not get irq %d.\n", COLLIE_IRQ_GPIO_CO);
Index: linux-2.6.git/arch/arm/mach-sa1100/dma.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-sa1100/dma.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-sa1100/dma.c	2006-07-01 16:51:31.000000000 +0200
@@ -124,7 +124,7 @@ int sa1100_request_dma (dma_device_t dev
 
 	i = dma - dma_chan;
 	regs = (dma_regs_t *)&DDAR(i);
-	err = request_irq(IRQ_DMA0 + i, dma_irq_handler, SA_INTERRUPT,
+	err = request_irq(IRQ_DMA0 + i, dma_irq_handler, IRQF_DISABLED,
 			  device_id, regs);
 	if (err) {
 		printk(KERN_ERR
Index: linux-2.6.git/arch/arm/mach-sa1100/h3600.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-sa1100/h3600.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-sa1100/h3600.c	2006-07-01 16:51:31.000000000 +0200
@@ -740,7 +740,7 @@ static void h3800_IRQ_demux(unsigned int
 static struct irqaction h3800_irq = {
 	.name		= "h3800_asic",
 	.handler	= h3800_IRQ_demux,
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 };
 
 u32 kpio_int_shadow = 0;
Index: linux-2.6.git/arch/arm/mach-sa1100/time.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-sa1100/time.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-sa1100/time.c	2006-07-01 16:51:31.000000000 +0200
@@ -110,7 +110,7 @@ sa1100_timer_interrupt(int irq, void *de
 
 static struct irqaction sa1100_timer_irq = {
 	.name		= "SA11xx Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= sa1100_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-shark/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-shark/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-shark/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -89,7 +89,7 @@ shark_timer_interrupt(int irq, void *dev
 
 static struct irqaction shark_timer_irq = {
 	.name		= "Shark Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= shark_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/mach-versatile/core.c
===================================================================
--- linux-2.6.git.orig/arch/arm/mach-versatile/core.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/mach-versatile/core.c	2006-07-01 16:51:31.000000000 +0200
@@ -869,7 +869,7 @@ static irqreturn_t versatile_timer_inter
 
 static struct irqaction versatile_timer_irq = {
 	.name		= "Versatile Timer Tick",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= versatile_timer_interrupt,
 };
 
Index: linux-2.6.git/arch/arm/oprofile/op_model_xscale.c
===================================================================
--- linux-2.6.git.orig/arch/arm/oprofile/op_model_xscale.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/oprofile/op_model_xscale.c	2006-07-01 16:51:31.000000000 +0200
@@ -384,7 +384,7 @@ static int xscale_pmu_start(void)
 	int ret;
 	u32 pmnc = read_pmnc();
 
-	ret = request_irq(XSCALE_PMU_IRQ, xscale_pmu_interrupt, SA_INTERRUPT,
+	ret = request_irq(XSCALE_PMU_IRQ, xscale_pmu_interrupt, IRQF_DISABLED,
 			"XScale PMU", (void *)results);
 
 	if (ret < 0) {
Index: linux-2.6.git/arch/arm/plat-omap/dma.c
===================================================================
--- linux-2.6.git.orig/arch/arm/plat-omap/dma.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/plat-omap/dma.c	2006-07-01 16:51:31.000000000 +0200
@@ -893,7 +893,7 @@ static irqreturn_t omap2_dma_irq_handler
 static struct irqaction omap24xx_dma_irq = {
 	.name = "DMA",
 	.handler = omap2_dma_irq_handler,
-	.flags = SA_INTERRUPT
+	.flags = IRQF_DISABLED
 };
 
 #else
Index: linux-2.6.git/arch/arm/plat-omap/pm.c
===================================================================
--- linux-2.6.git.orig/arch/arm/plat-omap/pm.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/plat-omap/pm.c	2006-07-01 16:51:31.000000000 +0200
@@ -580,7 +580,7 @@ static irqreturn_t  omap_wakeup_interrup
 
 static struct irqaction omap_wakeup_irq = {
 	.name		= "peripheral wakeup",
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.handler	= omap_wakeup_interrupt
 };
 
Index: linux-2.6.git/arch/arm/plat-omap/timer32k.c
===================================================================
--- linux-2.6.git.orig/arch/arm/plat-omap/timer32k.c	2006-07-01 16:51:29.000000000 +0200
+++ linux-2.6.git/arch/arm/plat-omap/timer32k.c	2006-07-01 16:51:31.000000000 +0200
@@ -264,7 +264,7 @@ static struct dyn_tick_timer omap_dyn_ti
 
 static struct irqaction omap_32k_timer_irq = {
 	.name		= "32KHz timer",
-	.flags		= SA_INTERRUPT | SA_TIMER,
+	.flags		= IRQF_DISABLED | IRQF_TIMER,
 	.handler	= omap_32k_timer_interrupt,
 };
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 05/44] CHRIS: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (3 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 04/44] ARM: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 06/44] FRV: " Thomas Gleixner
                   ` (39 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, bjorn

[-- Attachment #1: irqflags-cris.patch --]
[-- Type: text/plain, Size: 10289 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/cris/arch-v10/drivers/gpio.c     |    4 ++--
 arch/cris/arch-v10/kernel/time.c      |    6 +++---
 arch/cris/arch-v32/drivers/gpio.c     |    4 ++--
 arch/cris/arch-v32/kernel/arbiter.c   |    2 +-
 arch/cris/arch-v32/kernel/fasttimer.c |    2 +-
 arch/cris/arch-v32/kernel/irq.c       |    2 +-
 arch/cris/arch-v32/kernel/smp.c       |    2 +-
 arch/cris/arch-v32/kernel/time.c      |   12 ++++++++----
 arch/cris/kernel/irq.c                |    2 +-
 include/asm-cris/arch-v10/irq.h       |    2 +-
 include/asm-cris/arch-v32/irq.h       |    2 +-
 include/asm-cris/signal.h             |    2 --
 12 files changed, 22 insertions(+), 20 deletions(-)

Index: linux-2.6.git/include/asm-cris/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-cris/signal.h	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/include/asm-cris/signal.h	2006-07-01 16:51:32.000000000 +0200
@@ -74,7 +74,6 @@ 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.
@@ -95,7 +94,6 @@ 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
 
Index: linux-2.6.git/include/asm-cris/arch-v10/irq.h
===================================================================
--- linux-2.6.git.orig/include/asm-cris/arch-v10/irq.h	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/include/asm-cris/arch-v10/irq.h	2006-07-01 16:51:32.000000000 +0200
@@ -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 (SA_INTERRUPT) so that we _know_ there will not
+ * registred as a fast interrupt (IRQF_DISABLED) so that we _know_ there will not
  * be an sti() before the timer irq handler is run to acknowledge the interrupt.
  */
 
Index: linux-2.6.git/include/asm-cris/arch-v32/irq.h
===================================================================
--- linux-2.6.git.orig/include/asm-cris/arch-v32/irq.h	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/include/asm-cris/arch-v32/irq.h	2006-07-01 16:51:32.000000000 +0200
@@ -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 (SA_INTERRUPT) so that we _know_ there will not
+ * registred as a fast interrupt (IRQF_DISABLED) 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) 	\
Index: linux-2.6.git/arch/cris/arch-v10/drivers/gpio.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v10/drivers/gpio.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v10/drivers/gpio.c	2006-07-01 16:51:32.000000000 +0200
@@ -937,11 +937,11 @@ gpio_init(void)
 	 * in some tests.
 	 */  
 	if (request_irq(TIMER0_IRQ_NBR, gpio_poll_timer_interrupt,
-			SA_SHIRQ | SA_INTERRUPT,"gpio poll", NULL)) {
+			IRQF_SHARED | IRQF_DISABLED,"gpio poll", NULL)) {
 		printk(KERN_CRIT "err: timer0 irq for gpio\n");
 	}
 	if (request_irq(PA_IRQ_NBR, gpio_pa_interrupt,
-			SA_SHIRQ | SA_INTERRUPT,"gpio PA", NULL)) {
+			IRQF_SHARED | IRQF_DISABLED,"gpio PA", NULL)) {
 		printk(KERN_CRIT "err: PA irq for gpio\n");
 	}
 	
Index: linux-2.6.git/arch/cris/arch-v10/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v10/kernel/time.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v10/kernel/time.c	2006-07-01 16:51:32.000000000 +0200
@@ -251,11 +251,11 @@ timer_interrupt(int irq, void *dev_id, s
         return IRQ_HANDLED;
 }
 
-/* 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
+/* 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
  */
 
-static struct irqaction irq2  = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
+static struct irqaction irq2  = { timer_interrupt, IRQF_SHARED | IRQF_DISABLED,
 				  CPU_MASK_NONE, "timer", NULL, NULL};
 
 void __init
Index: linux-2.6.git/arch/cris/arch-v32/drivers/gpio.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v32/drivers/gpio.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v32/drivers/gpio.c	2006-07-01 16:51:32.000000000 +0200
@@ -744,11 +744,11 @@ gpio_init(void)
 	 * in some tests.
 	 */
 	if (request_irq(TIMER_INTR_VECT, gpio_poll_timer_interrupt,
-			SA_SHIRQ | SA_INTERRUPT,"gpio poll", &alarmlist)) {
+			IRQF_SHARED | IRQF_DISABLED,"gpio poll", &alarmlist)) {
 		printk("err: timer0 irq for gpio\n");
 	}
 	if (request_irq(GEN_IO_INTR_VECT, gpio_pa_interrupt,
-			SA_SHIRQ | SA_INTERRUPT,"gpio PA", &alarmlist)) {
+			IRQF_SHARED | IRQF_DISABLED,"gpio PA", &alarmlist)) {
 		printk("err: PA irq for gpio\n");
 	}
 	/* enable the gio and timer irq in global config */
Index: linux-2.6.git/arch/cris/arch-v32/kernel/arbiter.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v32/kernel/arbiter.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v32/kernel/arbiter.c	2006-07-01 16:51:32.000000000 +0200
@@ -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, SA_INTERRUPT,
+	if (request_irq(MEMARB_INTR_VECT, crisv32_arbiter_irq, IRQF_DISABLED,
                         "arbiter", NULL))
 		printk(KERN_ERR "Couldn't allocate arbiter IRQ\n");
 
Index: linux-2.6.git/arch/cris/arch-v32/kernel/fasttimer.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v32/kernel/fasttimer.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v32/kernel/fasttimer.c	2006-07-01 16:51:32.000000000 +0200
@@ -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, SA_INTERRUPT,
+    if(request_irq(TIMER_INTR_VECT, timer_trig_interrupt, IRQF_DISABLED,
                    "fast timer int", NULL))
     {
       printk("err: timer1 irq\n");
Index: linux-2.6.git/arch/cris/arch-v32/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v32/kernel/irq.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v32/kernel/irq.c	2006-07-01 16:51:32.000000000 +0200
@@ -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 SA_INTERRUPT may skip blocking. This is currently
+         * are IRQF_DISABLED 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.
          */
Index: linux-2.6.git/arch/cris/arch-v32/kernel/smp.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v32/kernel/smp.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v32/kernel/smp.c	2006-07-01 16:51:32.000000000 +0200
@@ -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, SA_INTERRUPT,
+static struct irqaction irq_ipi  = { crisv32_ipi_interrupt, IRQF_DISABLED,
                                      CPU_MASK_NONE, "ipi", NULL, NULL};
 
 extern void cris_mmu_init(void);
Index: linux-2.6.git/arch/cris/arch-v32/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/cris/arch-v32/kernel/time.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/arch-v32/kernel/time.c	2006-07-01 16:51:32.000000000 +0200
@@ -241,12 +241,16 @@ timer_interrupt(int irq, void *dev_id, s
         return IRQ_HANDLED;
 }
 
-/* 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
+/* 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
  */
 
-static struct irqaction irq_timer  = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
-				  CPU_MASK_NONE, "timer", NULL, NULL};
+static struct irqaction irq_timer  = { 
+	.mask = timer_interrupt, 
+	.flags = IRQF_SHARED | IRQF_DISABLED,
+	.mask = CPU_MASK_NONE, 
+	.name = "timer"
+};
 
 void __init
 cris_timer_init(void)
Index: linux-2.6.git/arch/cris/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/cris/kernel/irq.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/cris/kernel/irq.c	2006-07-01 16:51:32.000000000 +0200
@@ -85,7 +85,7 @@ skip:
 /* 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 SA_INTERRUPT or not, interrupts
+ * interrupt was registred with IRQF_DISABLED or not, interrupts
  * are re-enabled or not.
  */
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 06/44] FRV: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (4 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 05/44] CHRIS: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 07/44] H8300: " Thomas Gleixner
                   ` (38 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	dhowells

[-- Attachment #1: irqflags-frv.patch --]
[-- Type: text/plain, Size: 4994 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/frv/kernel/irq-routing.c |    4 ++--
 arch/frv/kernel/irq.c         |   12 ++++++------
 arch/frv/kernel/time.c        |    2 +-
 include/asm-frv/irq-routing.h |    2 +-
 include/asm-frv/signal.h      |    2 --
 5 files changed, 10 insertions(+), 12 deletions(-)

Index: linux-2.6.git/include/asm-frv/irq-routing.h
===================================================================
--- linux-2.6.git.orig/include/asm-frv/irq-routing.h	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/include/asm-frv/irq-routing.h	2006-07-01 16:51:32.000000000 +0200
@@ -51,7 +51,7 @@ struct irq_source {
 struct irq_level {
 	int			usage;
 	int			disable_count;
-	unsigned long		flags;		/* current SA_INTERRUPT and SA_SHIRQ settings */
+	unsigned long		flags;		/* current IRQF_DISABLED and IRQF_SHARED settings */
 	spinlock_t		lock;
 	struct irq_source	*sources;
 };
Index: linux-2.6.git/include/asm-frv/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-frv/signal.h	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/include/asm-frv/signal.h	2006-07-01 16:51:32.000000000 +0200
@@ -74,7 +74,6 @@ 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,7 +93,6 @@ 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
 
Index: linux-2.6.git/arch/frv/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/frv/kernel/irq.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/frv/kernel/irq.c	2006-07-01 16:51:32.000000000 +0200
@@ -341,11 +341,11 @@ asmlinkage void do_NMI(void)
  *
  *	Flags:
  *
- *	SA_SHIRQ		Interrupt is shared
+ *	IRQF_SHARED		Interrupt is shared
  *
- *	SA_INTERRUPT		Disable local interrupts while processing
+ *	IRQF_DISABLED	Disable local interrupts while processing
  *
- *	SA_SAMPLE_RANDOM	The interrupt can be used for entropy
+ *	IRQF_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 & SA_SHIRQ) {
+	if (irqflags & IRQF_SHARED) {
 		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 i
 	 * so we have to be careful not to interfere with a
 	 * running system.
 	 */
-	if (new->flags & SA_SAMPLE_RANDOM) {
+	if (new->flags & IRQF_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 i
 	spin_lock_irqsave(&level->lock, flags);
 
 	/* can't share interrupts unless all parties agree to */
-	if (level->usage != 0 && !(level->flags & new->flags & SA_SHIRQ)) {
+	if (level->usage != 0 && !(level->flags & new->flags & IRQF_SHARED)) {
 		spin_unlock_irqrestore(&level->lock,flags);
 		return -EBUSY;
 	}
Index: linux-2.6.git/arch/frv/kernel/irq-routing.c
===================================================================
--- linux-2.6.git.orig/arch/frv/kernel/irq-routing.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/frv/kernel/irq-routing.c	2006-07-01 16:51:32.000000000 +0200
@@ -81,7 +81,7 @@ void distribute_irqs(struct irq_group *g
 		if (action) {
 			int status = 0;
 
-//			if (!(action->flags & SA_INTERRUPT))
+//			if (!(action->flags & IRQF_DISABLED))
 //				local_irq_enable();
 
 			do {
@@ -90,7 +90,7 @@ void distribute_irqs(struct irq_group *g
 				action = action->next;
 			} while (action);
 
-			if (status & SA_SAMPLE_RANDOM)
+			if (status & IRQF_SAMPLE_RANDOM)
 				add_interrupt_randomness(irq);
 			local_irq_disable();
 		}
Index: linux-2.6.git/arch/frv/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/frv/kernel/time.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/frv/kernel/time.c	2006-07-01 16:51:32.000000000 +0200
@@ -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, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL
+	timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL
 };
 
 static inline int set_rtc_mmss(unsigned long nowtime)

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 07/44] H8300: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (5 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 06/44] FRV: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 08/44] I386: " Thomas Gleixner
                   ` (37 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, ysato

[-- Attachment #1: irqflags-h8300.patch --]
[-- Type: text/plain, Size: 2992 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/h8300/kernel/ints.c       |    4 ++--
 arch/h8300/platform/h8s/ints.c |    4 ++--
 include/asm-h8300/signal.h     |    2 --
 3 files changed, 4 insertions(+), 6 deletions(-)

Index: linux-2.6.git/include/asm-h8300/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-h8300/signal.h	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/include/asm-h8300/signal.h	2006-07-01 16:51:32.000000000 +0200
@@ -74,7 +74,6 @@ 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,7 +93,6 @@ 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
 
Index: linux-2.6.git/arch/h8300/kernel/ints.c
===================================================================
--- linux-2.6.git.orig/arch/h8300/kernel/ints.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/h8300/kernel/ints.c	2006-07-01 16:51:32.000000000 +0200
@@ -158,7 +158,7 @@ int request_irq(unsigned int irq, 
 	irq_handle->devname = devname;
 	irq_list[irq] = irq_handle;
 
-	if (irq_handle->flags & SA_SAMPLE_RANDOM)
+	if (irq_handle->flags & IRQF_SAMPLE_RANDOM)
 		rand_initialize_irq(irq);
 
 	enable_irq(irq);
@@ -222,7 +222,7 @@ asmlinkage void process_int(int irq, str
 		if (irq_list[irq]) {
 			irq_list[irq]->handler(irq, irq_list[irq]->dev_id, fp);
 			irq_list[irq]->count++;
-			if (irq_list[irq]->flags & SA_SAMPLE_RANDOM)
+			if (irq_list[irq]->flags & IRQF_SAMPLE_RANDOM)
 				add_interrupt_randomness(irq);
 		}
 	} else {
Index: linux-2.6.git/arch/h8300/platform/h8s/ints.c
===================================================================
--- linux-2.6.git.orig/arch/h8300/platform/h8s/ints.c	2006-07-01 16:51:27.000000000 +0200
+++ linux-2.6.git/arch/h8300/platform/h8s/ints.c	2006-07-01 16:51:32.000000000 +0200
@@ -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 & SA_SAMPLE_RANDOM)
+	if (irq_handle->flags & IRQF_SAMPLE_RANDOM)
 		rand_initialize_irq(irq);
 	
 	/* enable interrupt */
@@ -270,7 +270,7 @@ asmlinkage void process_int(unsigned lon
 		if (irq_list[vec]) {
 			irq_list[vec]->handler(vec, irq_list[vec]->dev_id, fp);
 			irq_list[vec]->count++;
-			if (irq_list[vec]->flags & SA_SAMPLE_RANDOM)
+			if (irq_list[vec]->flags & IRQF_SAMPLE_RANDOM)
 				add_interrupt_randomness(vec);
 		}
 	} else {

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 08/44] I386: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (6 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 07/44] H8300: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 09/44] IA64: " Thomas Gleixner
                   ` (36 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-i386.patch --]
[-- Type: text/plain, Size: 4436 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/i386/mach-default/setup.c |    2 +-
 arch/i386/mach-visws/setup.c   |    2 +-
 arch/i386/mach-voyager/setup.c |    2 +-
 arch/i386/pci/irq.c            |    2 +-
 include/asm-i386/floppy.h      |    8 ++++----
 include/asm-i386/signal.h      |    2 --
 6 files changed, 8 insertions(+), 10 deletions(-)

Index: linux-2.6.git/include/asm-i386/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-i386/floppy.h	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/include/asm-i386/floppy.h	2006-07-01 16:51:33.000000000 +0200
@@ -144,11 +144,11 @@ static int vdma_get_dma_residue(unsigned
 static int fd_request_irq(void)
 {
 	if(can_use_virtual_dma)
-		return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
-						   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_hardint,
+				   IRQF_DISABLED, "floppy", NULL);
 	else
-		return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
-				   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_interrupt,
+				   IRQF_DISABLED, "floppy", NULL);
 
 }
 
Index: linux-2.6.git/include/asm-i386/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-i386/signal.h	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/include/asm-i386/signal.h	2006-07-01 16:51:33.000000000 +0200
@@ -77,7 +77,6 @@ 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,7 +96,6 @@ 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
 
Index: linux-2.6.git/arch/i386/mach-default/setup.c
===================================================================
--- linux-2.6.git.orig/arch/i386/mach-default/setup.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/i386/mach-default/setup.c	2006-07-01 16:51:33.000000000 +0200
@@ -79,7 +79,7 @@ void __init trap_init_hook(void)
 {
 }
 
-static struct irqaction irq0  = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL};
+static struct irqaction irq0  = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL};
 
 /**
  * time_init_hook - do any specific initialisations for the system timer.
Index: linux-2.6.git/arch/i386/mach-visws/setup.c
===================================================================
--- linux-2.6.git.orig/arch/i386/mach-visws/setup.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/i386/mach-visws/setup.c	2006-07-01 16:51:33.000000000 +0200
@@ -115,7 +115,7 @@ void __init pre_setup_arch_hook()
 
 static struct irqaction irq0 = {
 	.handler =	timer_interrupt,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"timer",
 };
 
Index: linux-2.6.git/arch/i386/mach-voyager/setup.c
===================================================================
--- linux-2.6.git.orig/arch/i386/mach-voyager/setup.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/i386/mach-voyager/setup.c	2006-07-01 16:51:33.000000000 +0200
@@ -40,7 +40,7 @@ void __init trap_init_hook(void)
 {
 }
 
-static struct irqaction irq0  = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL};
+static struct irqaction irq0  = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL};
 
 void __init time_init_hook(void)
 {
Index: linux-2.6.git/arch/i386/pci/irq.c
===================================================================
--- linux-2.6.git.orig/arch/i386/pci/irq.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/i386/pci/irq.c	2006-07-01 16:51:33.000000000 +0200
@@ -864,7 +864,7 @@ static int pcibios_lookup_irq(struct pci
 		for (i = 0; i < 16; i++) {
 			if (!(mask & (1 << i)))
 				continue;
-			if (pirq_penalty[i] < pirq_penalty[newirq] && can_request_irq(i, SA_SHIRQ))
+			if (pirq_penalty[i] < pirq_penalty[newirq] && can_request_irq(i, IRQF_SHARED))
 				newirq = i;
 		}
 	}

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 09/44] IA64: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (7 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 08/44] I386: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-03 11:36   ` Jes Sorensen
  2006-07-01 14:54 ` [RFC][patch 10/44] M32R: " Thomas Gleixner
                   ` (35 subsequent siblings)
  44 siblings, 1 reply; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	tony.luck

[-- Attachment #1: irqflags-ia64.patch --]
[-- Type: text/plain, Size: 9077 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/ia64/hp/sim/simserial.c            |    2 +-
 arch/ia64/kernel/irq_ia64.c             |    2 +-
 arch/ia64/kernel/mca.c                  |   12 ++++++------
 arch/ia64/kernel/perfmon.c              |    2 +-
 arch/ia64/kernel/time.c                 |    2 +-
 arch/ia64/sn/kernel/huberror.c          |    4 ++--
 arch/ia64/sn/kernel/xpc_channel.c       |    2 +-
 arch/ia64/sn/pci/pcibr/pcibr_provider.c |    2 +-
 arch/ia64/sn/pci/tioca_provider.c       |    2 +-
 arch/ia64/sn/pci/tioce_provider.c       |    2 +-
 include/asm-ia64/signal.h               |    4 ----
 11 files changed, 16 insertions(+), 20 deletions(-)

Index: linux-2.6.git/include/asm-ia64/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-ia64/signal.h	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/include/asm-ia64/signal.h	2006-07-01 16:51:33.000000000 +0200
@@ -56,7 +56,6 @@
  * 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.
@@ -76,7 +75,6 @@
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 #define SA_RESTORER	0x04000000
 
@@ -114,8 +112,6 @@
 #define _NSIG_BPW	64
 #define _NSIG_WORDS	(_NSIG / _NSIG_BPW)
 
-#define SA_PERCPU_IRQ		0x02000000
-
 #endif /* __KERNEL__ */
 
 #include <asm-generic/signal.h>
Index: linux-2.6.git/arch/ia64/hp/sim/simserial.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/hp/sim/simserial.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/hp/sim/simserial.c	2006-07-01 16:51:33.000000000 +0200
@@ -46,7 +46,7 @@
 
 #define NR_PORTS	1	/* only one port for now */
 
-#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? SA_SHIRQ : SA_INTERRUPT)
+#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? IRQF_SHARED : IRQF_DISABLED)
 
 #define SSC_GETCHAR	21
 
Index: linux-2.6.git/arch/ia64/kernel/irq_ia64.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/kernel/irq_ia64.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/kernel/irq_ia64.c	2006-07-01 16:51:33.000000000 +0200
@@ -235,7 +235,7 @@ extern irqreturn_t handle_IPI (int irq, 
 
 static struct irqaction ipi_irqaction = {
 	.handler =	handle_IPI,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"IPI"
 };
 #endif
Index: linux-2.6.git/arch/ia64/kernel/mca.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/kernel/mca.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/kernel/mca.c	2006-07-01 16:51:33.000000000 +0200
@@ -1457,38 +1457,38 @@ __setup("disable_cpe_poll", ia64_mca_dis
 
 static struct irqaction cmci_irqaction = {
 	.handler =	ia64_mca_cmc_int_handler,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"cmc_hndlr"
 };
 
 static struct irqaction cmcp_irqaction = {
 	.handler =	ia64_mca_cmc_int_caller,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"cmc_poll"
 };
 
 static struct irqaction mca_rdzv_irqaction = {
 	.handler =	ia64_mca_rendez_int_handler,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"mca_rdzv"
 };
 
 static struct irqaction mca_wkup_irqaction = {
 	.handler =	ia64_mca_wakeup_int_handler,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"mca_wkup"
 };
 
 #ifdef CONFIG_ACPI
 static struct irqaction mca_cpe_irqaction = {
 	.handler =	ia64_mca_cpe_int_handler,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"cpe_hndlr"
 };
 
 static struct irqaction mca_cpep_irqaction = {
 	.handler =	ia64_mca_cpe_int_caller,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"cpe_poll"
 };
 #endif /* CONFIG_ACPI */
Index: linux-2.6.git/arch/ia64/kernel/perfmon.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/kernel/perfmon.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/kernel/perfmon.c	2006-07-01 16:51:33.000000000 +0200
@@ -6439,7 +6439,7 @@ pfm_flush_pmds(struct task_struct *task,
 
 static struct irqaction perfmon_irqaction = {
 	.handler = pfm_interrupt_handler,
-	.flags   = SA_INTERRUPT,
+	.flags   = IRQF_DISABLED,
 	.name    = "perfmon"
 };
 
Index: linux-2.6.git/arch/ia64/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/kernel/time.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/kernel/time.c	2006-07-01 16:51:33.000000000 +0200
@@ -231,7 +231,7 @@ ia64_init_itm (void)
 
 static struct irqaction timer_irqaction = {
 	.handler =	timer_interrupt,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"timer"
 };
 
Index: linux-2.6.git/arch/ia64/sn/kernel/huberror.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/sn/kernel/huberror.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/sn/kernel/huberror.c	2006-07-01 16:51:33.000000000 +0200
@@ -178,7 +178,7 @@ void hubiio_crb_error_handler(struct hub
  */
 void hub_error_init(struct hubdev_info *hubdev_info)
 {
-	if (request_irq(SGI_II_ERROR, (void *)hub_eint_handler, SA_SHIRQ,
+	if (request_irq(SGI_II_ERROR, (void *)hub_eint_handler, IRQF_SHARED,
 			"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 *
 void ice_error_init(struct hubdev_info *hubdev_info)
 {
         if (request_irq
-            (SGI_TIO_ERROR, (void *)hub_eint_handler, SA_SHIRQ, "SN_TIO_error",
+            (SGI_TIO_ERROR, (void *)hub_eint_handler, IRQF_SHARED, "SN_TIO_error",
              (void *)hubdev_info))
                 printk("ice_error_init: request_irq() error hubdev_info 0x%p\n",
                        hubdev_info);
Index: linux-2.6.git/arch/ia64/sn/kernel/xpc_channel.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/sn/kernel/xpc_channel.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/sn/kernel/xpc_channel.c	2006-07-01 16:51:33.000000000 +0200
@@ -202,7 +202,7 @@ xpc_setup_infrastructure(struct xpc_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, SA_SHIRQ,
+	ret = request_irq(SGI_XPC_NOTIFY, xpc_notify_IRQ_handler, IRQF_SHARED,
 				part->IPI_owner, (void *) (u64) partid);
 	if (ret != 0) {
 		dev_err(xpc_chan, "can't register NOTIFY IRQ handler, "
Index: linux-2.6.git/arch/ia64/sn/pci/tioca_provider.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/sn/pci/tioca_provider.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/sn/pci/tioca_provider.c	2006-07-01 16:51:33.000000000 +0200
@@ -646,7 +646,7 @@ tioca_bus_fixup(struct pcibus_bussoft *p
 
 	if (request_irq(SGI_TIOCA_ERROR,
 			tioca_error_intr_handler,
-			SA_SHIRQ, "TIOCA error", (void *)tioca_common))
+			IRQF_SHARED, "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",
Index: linux-2.6.git/arch/ia64/sn/pci/tioce_provider.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/sn/pci/tioce_provider.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/sn/pci/tioce_provider.c	2006-07-01 16:51:33.000000000 +0200
@@ -1027,7 +1027,7 @@ tioce_bus_fixup(struct pcibus_bussoft *p
 
 	if (request_irq(SGI_PCIASIC_ERROR,
 			tioce_error_intr_handler,
-			SA_SHIRQ, "TIOCE error", (void *)tioce_common))
+			IRQF_SHARED, "TIOCE error", (void *)tioce_common))
 		printk(KERN_WARNING
 		       "%s:  Unable to get irq %d.  "
 		       "Error interrupts won't be routed for "
Index: linux-2.6.git/arch/ia64/sn/pci/pcibr/pcibr_provider.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/sn/pci/pcibr/pcibr_provider.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/ia64/sn/pci/pcibr/pcibr_provider.c	2006-07-01 16:51:33.000000000 +0200
@@ -139,7 +139,7 @@ pcibr_bus_fixup(struct pcibus_bussoft *p
 	 * register the bridge's error interrupt handler
 	 */
 	if (request_irq(SGI_PCIASIC_ERROR, (void *)pcibr_error_intr_handler,
-			SA_SHIRQ, "PCIBR error", (void *)(soft))) {
+			IRQF_SHARED, "PCIBR error", (void *)(soft))) {
 		printk(KERN_WARNING
 		       "pcibr cannot allocate interrupt for error handler\n");
 	}

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 10/44] M32R: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (8 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 09/44] IA64: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 11/44] M68KNOMMU: " Thomas Gleixner
                   ` (34 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-m32r.patch --]
[-- Type: text/plain, Size: 1724 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/m32r/kernel/time.c   |    2 +-
 include/asm-m32r/signal.h |    2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

Index: linux-2.6.git/include/asm-m32r/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-m32r/signal.h	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/include/asm-m32r/signal.h	2006-07-01 16:51:33.000000000 +0200
@@ -81,7 +81,6 @@ 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.
@@ -101,7 +100,6 @@ 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
 
Index: linux-2.6.git/arch/m32r/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/m32r/kernel/time.c	2006-07-01 16:51:26.000000000 +0200
+++ linux-2.6.git/arch/m32r/kernel/time.c	2006-07-01 16:51:33.000000000 +0200
@@ -237,7 +237,7 @@ irqreturn_t timer_interrupt(int irq, voi
 	return IRQ_HANDLED;
 }
 
-struct irqaction irq0 = { timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE,
+struct irqaction irq0 = { timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE,
 			  "MFT2", NULL, NULL };
 
 void __init time_init(void)

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 11/44] M68KNOMMU: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (9 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 10/44] M32R: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 12/44] M68K: " Thomas Gleixner
                   ` (33 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, greg

[-- Attachment #1: irqflags-m68knommu.patch --]
[-- Type: text/plain, Size: 3731 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/m68knommu/platform/5307/pit.c    |    2 +-
 arch/m68knommu/platform/5307/timers.c |    4 ++--
 include/asm-m68knommu/irq.h           |    4 ++--
 include/asm-m68knommu/signal.h        |    2 --
 4 files changed, 5 insertions(+), 7 deletions(-)

Index: linux-2.6.git/include/asm-m68knommu/irq.h
===================================================================
--- linux-2.6.git.orig/include/asm-m68knommu/irq.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-m68knommu/irq.h	2006-07-01 16:51:34.000000000 +0200
@@ -62,8 +62,8 @@ extern void (*mach_disable_irq)(unsigned
 
 /*
  * various flags for request_irq() - the Amiga now uses the standard
- * mechanism like all other architectures - SA_INTERRUPT and SA_SHIRQ
- * are your friends.
+ * mechanism like all other architectures - IRQF_DISABLED and
+ * IRQF_SHARED are your friends.
  */
 #define IRQ_FLG_LOCK	(0x0001)	/* handler is not replaceable	*/
 #define IRQ_FLG_REPLACE	(0x0002)	/* replace existing handler	*/
Index: linux-2.6.git/include/asm-m68knommu/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-m68knommu/signal.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-m68knommu/signal.h	2006-07-01 16:51:34.000000000 +0200
@@ -74,7 +74,6 @@ 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,7 +93,6 @@ typedef unsigned long sigset_t;
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 /* 
  * sigaltstack controls
Index: linux-2.6.git/arch/m68knommu/platform/5307/pit.c
===================================================================
--- linux-2.6.git.orig/arch/m68knommu/platform/5307/pit.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/m68knommu/platform/5307/pit.c	2006-07-01 16:51:34.000000000 +0200
@@ -48,7 +48,7 @@ void coldfire_pit_init(irqreturn_t (*han
 	volatile unsigned char *icrp;
 	volatile unsigned long *imrp;
 
-	request_irq(MCFINT_VECBASE + MCFINT_PIT1, handler, SA_INTERRUPT,
+	request_irq(MCFINT_VECBASE + MCFINT_PIT1, handler, IRQF_DISABLED,
 		"ColdFire Timer", NULL);
 
 	icrp = (volatile unsigned char *) (MCF_IPSBAR + MCFICM_INTC0 +
Index: linux-2.6.git/arch/m68knommu/platform/5307/timers.c
===================================================================
--- linux-2.6.git.orig/arch/m68knommu/platform/5307/timers.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/m68knommu/platform/5307/timers.c	2006-07-01 16:51:34.000000000 +0200
@@ -61,7 +61,7 @@ void coldfire_timer_init(irqreturn_t (*h
 	__raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 |
 		MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, TA(MCFTIMER_TMR));
 
-	request_irq(mcf_timervector, handler, SA_INTERRUPT, "timer", NULL);
+	request_irq(mcf_timervector, handler, IRQF_DISABLED, "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,
-		(SA_INTERRUPT | IRQ_FLG_FAST), "profile timer", NULL);
+		(IRQF_DISABLED | IRQ_FLG_FAST), "profile timer", NULL);
 	mcf_settimericr(2, 7);
 }
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 12/44] M68K: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (10 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 11/44] M68KNOMMU: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 13/44] MIPS: " Thomas Gleixner
                   ` (32 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, geert

[-- Attachment #1: irqflags-m68k.patch --]
[-- Type: text/plain, Size: 5368 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/m68k/amiga/amiints.c    |    2 +-
 arch/m68k/amiga/cia.c        |    2 +-
 arch/m68k/kernel/ints.c      |    2 +-
 include/asm-m68k/floppy.h    |    4 ++--
 include/asm-m68k/irq.h       |    4 ++--
 include/asm-m68k/signal.h    |    2 --
 include/asm-m68k/sun3xflop.h |    3 ++-
 7 files changed, 9 insertions(+), 10 deletions(-)

Index: linux-2.6.git/include/asm-m68k/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-m68k/floppy.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-m68k/floppy.h	2006-07-01 16:51:34.000000000 +0200
@@ -88,8 +88,8 @@ static __inline__ void fd_outb(unsigned 
 static int fd_request_irq(void)
 {
 	if(MACH_IS_Q40)
-		return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
-						   "floppy", floppy_hardint);
+		return request_irq(FLOPPY_IRQ, floppy_hardint,
+				   IRQF_DISABLED, "floppy", floppy_hardint);
 	else if(MACH_IS_SUN3X)
 		return sun3xflop_request_irq();
 	return -ENXIO;
Index: linux-2.6.git/include/asm-m68k/irq.h
===================================================================
--- linux-2.6.git.orig/include/asm-m68k/irq.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-m68k/irq.h	2006-07-01 16:51:34.000000000 +0200
@@ -67,8 +67,8 @@ struct pt_regs;
 
 /*
  * various flags for request_irq() - the Amiga now uses the standard
- * mechanism like all other architectures - SA_INTERRUPT and SA_SHIRQ
- * are your friends.
+ * mechanism like all other architectures - IRQF_DISABLED and 
+ * IRQF_SHARED are your friends.
  */
 #ifndef MACH_AMIGA_ONLY
 #define IRQ_FLG_LOCK	(0x0001)	/* handler is not replaceable	*/
Index: linux-2.6.git/include/asm-m68k/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-m68k/signal.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-m68k/signal.h	2006-07-01 16:51:34.000000000 +0200
@@ -74,7 +74,6 @@ 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,7 +93,6 @@ typedef unsigned long sigset_t;
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 /*
  * sigaltstack controls
Index: linux-2.6.git/include/asm-m68k/sun3xflop.h
===================================================================
--- linux-2.6.git.orig/include/asm-m68k/sun3xflop.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-m68k/sun3xflop.h	2006-07-01 16:51:34.000000000 +0200
@@ -208,7 +208,8 @@ static int sun3xflop_request_irq(void)
 
 	if(!once) {
 		once = 1;
-		error = request_irq(FLOPPY_IRQ, sun3xflop_hardint, SA_INTERRUPT, "floppy", NULL);
+		error = request_irq(FLOPPY_IRQ, sun3xflop_hardint,
+				    IRQF_DISABLED, "floppy", NULL);
 		return ((error == 0) ? 0 : -1);
 	} else return 0;
 }
Index: linux-2.6.git/arch/m68k/amiga/amiints.c
===================================================================
--- linux-2.6.git.orig/arch/m68k/amiga/amiints.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/m68k/amiga/amiints.c	2006-07-01 16:51:34.000000000 +0200
@@ -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 SA_INTERRUPT and runs with all other interrupts
+ *           marked with IRQF_DISABLED 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
Index: linux-2.6.git/arch/m68k/amiga/cia.c
===================================================================
--- linux-2.6.git.orig/arch/m68k/amiga/cia.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/m68k/amiga/cia.c	2006-07-01 16:51:34.000000000 +0200
@@ -176,5 +176,5 @@ void __init cia_init_IRQ(struct ciabase 
 	/* 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, SA_SHIRQ, base->name, base);
+	request_irq(base->handler_irq, cia_handler, IRQF_SHARED, base->name, base);
 }
Index: linux-2.6.git/arch/m68k/kernel/ints.c
===================================================================
--- linux-2.6.git.orig/arch/m68k/kernel/ints.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/m68k/kernel/ints.c	2006-07-01 16:51:34.000000000 +0200
@@ -192,7 +192,7 @@ int setup_irq(unsigned int irq, struct i
 	prev = irq_list + irq;
 	if (*prev) {
 		/* Can't share interrupts unless both agree to */
-		if (!((*prev)->flags & node->flags & SA_SHIRQ)) {
+		if (!((*prev)->flags & node->flags & IRQF_SHARED)) {
 			spin_unlock_irqrestore(&contr->lock, flags);
 			return -EBUSY;
 		}

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 13/44] MIPS: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (11 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 12/44] M68K: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 14/44] PARISC: " Thomas Gleixner
                   ` (31 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, ralf

[-- Attachment #1: irqflags-mips.patch --]
[-- Type: text/plain, Size: 19528 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/mips/au1000/common/dbdma.c                          |    2 +-
 arch/mips/au1000/common/irq.c                            |    2 +-
 arch/mips/au1000/common/usbdev.c                         |    8 ++++----
 arch/mips/basler/excite/excite_iodev.c                   |    2 +-
 arch/mips/dec/setup.c                                    |    4 ++--
 arch/mips/gt64120/common/time.c                          |    2 +-
 arch/mips/kernel/rtlx.c                                  |    2 +-
 arch/mips/kernel/smp-mt.c                                |    4 ++--
 arch/mips/kernel/smtc.c                                  |    2 +-
 arch/mips/kernel/time.c                                  |    2 +-
 arch/mips/momentum/jaguar_atx/irq.c                      |    2 +-
 arch/mips/momentum/ocelot_3/irq.c                        |    2 +-
 arch/mips/momentum/ocelot_c/irq.c                        |    4 ++--
 arch/mips/momentum/ocelot_g/gt-irq.c                     |    2 +-
 arch/mips/philips/pnx8550/common/int.c                   |    4 ++--
 arch/mips/sgi-ip22/ip22-int.c                            |   10 +++++-----
 arch/mips/sgi-ip27/ip27-irq.c                            |    2 +-
 arch/mips/sgi-ip27/ip27-timer.c                          |    2 +-
 arch/mips/sgi-ip32/ip32-irq.c                            |   12 ++++++------
 arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c |    2 +-
 include/asm-mips/mach-generic/floppy.h                   |    2 +-
 include/asm-mips/mach-jazz/floppy.h                      |    2 +-
 include/asm-mips/signal.h                                |   11 -----------
 23 files changed, 38 insertions(+), 49 deletions(-)

Index: linux-2.6.git/include/asm-mips/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-mips/signal.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-mips/signal.h	2006-07-01 16:51:34.000000000 +0200
@@ -64,7 +64,6 @@ typedef unsigned long old_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.
@@ -84,7 +83,6 @@ typedef unsigned long old_sigset_t;		/* 
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000	/* dummy -- ignored */
 
 #define SA_RESTORER	0x04000000	/* Only for o32 */
 
@@ -99,15 +97,6 @@ typedef unsigned long old_sigset_t;		/* 
 
 #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
Index: linux-2.6.git/include/asm-mips/mach-generic/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-mips/mach-generic/floppy.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-mips/mach-generic/floppy.h	2006-07-01 16:51:34.000000000 +0200
@@ -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,
-	                   SA_INTERRUPT, "floppy", NULL);
+	                   IRQF_DISABLED, "floppy", NULL);
 }
 
 static inline void fd_free_irq(void)
Index: linux-2.6.git/include/asm-mips/mach-jazz/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-mips/mach-jazz/floppy.h	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/include/asm-mips/mach-jazz/floppy.h	2006-07-01 16:51:34.000000000 +0200
@@ -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,
-	                   SA_INTERRUPT, "floppy", NULL);
+	                   IRQF_DISABLED, "floppy", NULL);
 }
 
 static inline void fd_free_irq(void)
Index: linux-2.6.git/arch/mips/au1000/common/dbdma.c
===================================================================
--- linux-2.6.git.orig/arch/mips/au1000/common/dbdma.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/au1000/common/dbdma.c	2006-07-01 16:51:34.000000000 +0200
@@ -892,7 +892,7 @@ static void au1xxx_dbdma_init(void)
 	#error Unknown Au1x00 SOC
 #endif
 
-	if (request_irq(irq_nr, dbdma_interrupt, SA_INTERRUPT,
+	if (request_irq(irq_nr, dbdma_interrupt, IRQF_DISABLED,
 			"Au1xxx dbdma", (void *)dbdma_gptr))
 		printk("Can't get 1550 dbdma irq");
 }
Index: linux-2.6.git/arch/mips/au1000/common/irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/au1000/common/irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/au1000/common/irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -309,7 +309,7 @@ void startup_match20_interrupt(irqreturn
 	 * can avoid it.  --cgray
 	*/
 	action.dev_id = handler;
-	action.flags = SA_INTERRUPT;
+	action.flags = IRQF_DISABLED;
 	cpus_clear(action.mask);
 	action.name = "Au1xxx TOY";
 	action.handler = handler;
Index: linux-2.6.git/arch/mips/au1000/common/usbdev.c
===================================================================
--- linux-2.6.git.orig/arch/mips/au1000/common/usbdev.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/au1000/common/usbdev.c	2006-07-01 16:51:34.000000000 +0200
@@ -1465,14 +1465,14 @@ usbdev_init(struct usb_device_descriptor
 	 */
 
 	/* request the USB device transfer complete interrupt */
-	if (request_irq(AU1000_USB_DEV_REQ_INT, req_sus_intr, SA_INTERRUPT,
+	if (request_irq(AU1000_USB_DEV_REQ_INT, req_sus_intr, IRQF_DISABLED,
 			"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, SA_INTERRUPT,
+	if (request_irq(AU1000_USB_DEV_SUS_INT, req_sus_intr, IRQF_DISABLED,
 			"USBdev sus", &usbdev)) {
 		err("Can't get device suspend intr");
 		ret = -ENXIO;
@@ -1483,7 +1483,7 @@ usbdev_init(struct usb_device_descriptor
 	if ((ep0->indma = request_au1000_dma(ep_dma_id[0].id,
 					     ep_dma_id[0].str,
 					     dma_done_ep0_intr,
-					     SA_INTERRUPT,
+					     IRQF_DISABLED,
 					     &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
 				request_au1000_dma(ep_dma_id[ep->address].id,
 						   ep_dma_id[ep->address].str,
 						   dma_done_ep_intr,
-						   SA_INTERRUPT,
+						   IRQF_DISABLED,
 						   &usbdev);
 			if (ep->indma < 0) {
 				err("Can't get %s DMA",
Index: linux-2.6.git/arch/mips/basler/excite/excite_iodev.c
===================================================================
--- linux-2.6.git.orig/arch/mips/basler/excite/excite_iodev.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/basler/excite/excite_iodev.c	2006-07-01 16:51:34.000000000 +0200
@@ -113,7 +113,7 @@ static int __exit iodev_remove(struct de
 
 static int iodev_open(struct inode *i, struct file *f)
 {
-	return request_irq(iodev_irq, iodev_irqhdl, SA_INTERRUPT,
+	return request_irq(iodev_irq, iodev_irqhdl, IRQF_DISABLED,
 			   iodev_name, &miscdev);
 }
 
Index: linux-2.6.git/arch/mips/dec/setup.c
===================================================================
--- linux-2.6.git.orig/arch/mips/dec/setup.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/dec/setup.c	2006-07-01 16:51:34.000000000 +0200
@@ -105,7 +105,7 @@ static struct irqaction fpuirq = {
 };
 
 static struct irqaction busirq = {
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.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 |= SA_SHIRQ;
+		busirq.flags |= IRQF_SHARED;
 		dec_kn01_be_init();
 		break;
 	case MACH_DS5000_1XX:	/* DS5000/1xx 3min */
Index: linux-2.6.git/arch/mips/gt64120/common/time.c
===================================================================
--- linux-2.6.git.orig/arch/mips/gt64120/common/time.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/gt64120/common/time.c	2006-07-01 16:51:34.000000000 +0200
@@ -77,7 +77,7 @@ void gt64120_time_init(void)
 	 * the values to the correct interrupt line.
 	 */
 	timer.handler = gt64120_irq;
-	timer.flags = SA_SHIRQ | SA_INTERRUPT;
+	timer.flags = IRQF_SHARED | IRQF_DISABLED;
 	timer.name = "timer";
 	timer.dev_id = NULL;
 	timer.next = NULL;
Index: linux-2.6.git/arch/mips/kernel/rtlx.c
===================================================================
--- linux-2.6.git.orig/arch/mips/kernel/rtlx.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/kernel/rtlx.c	2006-07-01 16:51:34.000000000 +0200
@@ -487,7 +487,7 @@ static struct file_operations rtlx_fops 
 
 static struct irqaction rtlx_irq = {
 	.handler	= rtlx_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "RTLX",
 };
 
Index: linux-2.6.git/arch/mips/kernel/smp-mt.c
===================================================================
--- linux-2.6.git.orig/arch/mips/kernel/smp-mt.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/kernel/smp-mt.c	2006-07-01 16:51:34.000000000 +0200
@@ -130,13 +130,13 @@ irqreturn_t ipi_call_interrupt(int irq, 
 
 static struct irqaction irq_resched = {
 	.handler	= ipi_resched_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "IPI_resched"
 };
 
 static struct irqaction irq_call = {
 	.handler	= ipi_call_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "IPI_call"
 };
 
Index: linux-2.6.git/arch/mips/kernel/smtc.c
===================================================================
--- linux-2.6.git.orig/arch/mips/kernel/smtc.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/kernel/smtc.c	2006-07-01 16:51:34.000000000 +0200
@@ -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 = SA_INTERRUPT;
+	irq_ipi.flags = IRQF_DISABLED;
 	irq_ipi.name = "SMTC_IPI";
 
 	setup_irq_smtc(cpu_ipi_irq, &irq_ipi, (0x100 << MIPS_CPU_IPI_IRQ));
Index: linux-2.6.git/arch/mips/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/mips/kernel/time.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/kernel/time.c	2006-07-01 16:51:34.000000000 +0200
@@ -579,7 +579,7 @@ unsigned int mips_hpt_frequency;
 
 static struct irqaction timer_irqaction = {
 	.handler = timer_interrupt,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.name = "timer",
 };
 
Index: linux-2.6.git/arch/mips/momentum/jaguar_atx/irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/momentum/jaguar_atx/irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/momentum/jaguar_atx/irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -71,7 +71,7 @@ asmlinkage void plat_irq_dispatch(struct
 }
 
 static struct irqaction cascade_mv64340 = {
-	no_action, SA_INTERRUPT, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
+	no_action, IRQF_DISABLED, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
 };
 
 void __init arch_init_irq(void)
Index: linux-2.6.git/arch/mips/momentum/ocelot_3/irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/momentum/ocelot_3/irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/momentum/ocelot_3/irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -54,7 +54,7 @@
 #include <asm/system.h>
 
 static struct irqaction cascade_mv64340 = {
-	no_action, SA_INTERRUPT, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
+	no_action, IRQF_DISABLED, CPU_MASK_NONE, "MV64340-Cascade", NULL, NULL
 };
 
 void __init arch_init_irq(void)
Index: linux-2.6.git/arch/mips/momentum/ocelot_c/irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/momentum/ocelot_c/irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/momentum/ocelot_c/irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -52,11 +52,11 @@ extern void uart_irq_init(void);
 extern void cpci_irq_init(void);
 
 static struct irqaction cascade_fpga = {
-	no_action, SA_INTERRUPT, CPU_MASK_NONE, "cascade via FPGA", NULL, NULL
+	no_action, IRQF_DISABLED, CPU_MASK_NONE, "cascade via FPGA", NULL, NULL
 };
 
 static struct irqaction cascade_mv64340 = {
-	no_action, SA_INTERRUPT, CPU_MASK_NONE, "cascade via MV64340", NULL, NULL
+	no_action, IRQF_DISABLED, CPU_MASK_NONE, "cascade via MV64340", NULL, NULL
 };
 
 extern void ll_uart_irq(struct pt_regs *regs);
Index: linux-2.6.git/arch/mips/momentum/ocelot_g/gt-irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/momentum/ocelot_g/gt-irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/momentum/ocelot_g/gt-irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -173,7 +173,7 @@ void gt64240_time_init(void)
 	 * the values to the correct interrupt line.
 	 */
 	timer.handler = &gt64240_p0int_irq;
-	timer.flags = SA_SHIRQ | SA_INTERRUPT;
+	timer.flags = IRQF_SHARED | IRQF_DISABLED;
 	timer.name = "timer";
 	timer.dev_id = NULL;
 	timer.next = NULL;
Index: linux-2.6.git/arch/mips/philips/pnx8550/common/int.c
===================================================================
--- linux-2.6.git.orig/arch/mips/philips/pnx8550/common/int.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/philips/pnx8550/common/int.c	2006-07-01 16:51:34.000000000 +0200
@@ -219,13 +219,13 @@ static struct hw_interrupt_type level_ir
 
 static struct irqaction gic_action = {
 	.handler =	no_action,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"GIC",
 };
 
 static struct irqaction timer_action = {
 	.handler =	no_action,
-	.flags =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"Timer",
 };
 
Index: linux-2.6.git/arch/mips/sgi-ip22/ip22-int.c
===================================================================
--- linux-2.6.git.orig/arch/mips/sgi-ip22/ip22-int.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/sgi-ip22/ip22-int.c	2006-07-01 16:51:34.000000000 +0200
@@ -272,32 +272,32 @@ static void indy_buserror_irq(struct pt_
 
 static struct irqaction local0_cascade = {
 	.handler	= no_action,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "local0 cascade",
 };
 
 static struct irqaction local1_cascade = {
 	.handler	= no_action,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "local1 cascade",
 };
 
 static struct irqaction buserr = {
 	.handler	= no_action,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "Bus Error",
 };
 
 static struct irqaction map0_cascade = {
 	.handler	= no_action,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "mapable0 cascade",
 };
 
 #ifdef USE_LIO3_IRQ
 static struct irqaction map1_cascade = {
 	.handler	= no_action,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "mapable1 cascade",
 };
 #define SGI_INTERRUPTS	SGINT_END
Index: linux-2.6.git/arch/mips/sgi-ip27/ip27-irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/sgi-ip27/ip27-irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/sgi-ip27/ip27-irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -118,7 +118,7 @@ static int ms1bit(unsigned long x)
 }
 
 /*
- * This code is unnecessarily complex, because we do SA_INTERRUPT
+ * This code is unnecessarily complex, because we do IRQF_DISABLED
  * 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
Index: linux-2.6.git/arch/mips/sgi-ip27/ip27-timer.c
===================================================================
--- linux-2.6.git.orig/arch/mips/sgi-ip27/ip27-timer.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/sgi-ip27/ip27-timer.c	2006-07-01 16:51:34.000000000 +0200
@@ -217,7 +217,7 @@ static struct hw_interrupt_type rt_irq_t
 
 static struct irqaction rt_irqaction = {
 	.handler	= ip27_rt_timer_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.mask		= CPU_MASK_NONE,
 	.name		= "timer"
 };
Index: linux-2.6.git/arch/mips/sgi-ip32/ip32-irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/sgi-ip32/ip32-irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/sgi-ip32/ip32-irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -125,9 +125,9 @@ extern irqreturn_t crime_memerr_intr (in
 extern irqreturn_t crime_cpuerr_intr (int irq, void *dev_id,
 				      struct pt_regs *regs);
 
-struct irqaction memerr_irq = { crime_memerr_intr, SA_INTERRUPT,
+struct irqaction memerr_irq = { crime_memerr_intr, IRQF_DISABLED,
 			CPU_MASK_NONE, "CRIME memory error", NULL, NULL };
-struct irqaction cpuerr_irq = { crime_cpuerr_intr, SA_INTERRUPT,
+struct irqaction cpuerr_irq = { crime_cpuerr_intr, IRQF_DISABLED,
 			CPU_MASK_NONE, "CRIME CPU error", NULL, NULL };
 
 /*
@@ -316,9 +316,9 @@ static struct hw_interrupt_type ip32_mac
 				 MACEISA_KEYB_POLL_INT |	\
 				 MACEISA_MOUSE_INT |		\
 				 MACEISA_MOUSE_POLL_INT |	\
-				 MACEISA_TIMER0_INT |		\
-				 MACEISA_TIMER1_INT |		\
-				 MACEISA_TIMER2_INT)
+				 MACEIIRQF_TIMER0_INT |		\
+				 MACEIIRQF_TIMER1_INT |		\
+				 MACEIIRQF_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
 	case MACEISA_AUDIO_SW_IRQ ... MACEISA_AUDIO3_MERR_IRQ:
 		crime_int = MACE_AUDIO_INT;
 		break;
-	case MACEISA_RTC_IRQ ... MACEISA_TIMER2_IRQ:
+	case MACEISA_RTC_IRQ ... MACEIIRQF_TIMER2_IRQ:
 		crime_int = MACE_MISC_INT;
 		break;
 	case MACEISA_PARALLEL_IRQ ... MACEISA_SERIAL2_RDMAOR_IRQ:
Index: linux-2.6.git/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c
===================================================================
--- linux-2.6.git.orig/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c	2006-07-01 16:51:25.000000000 +0200
+++ linux-2.6.git/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_irq.c	2006-07-01 16:51:34.000000000 +0200
@@ -337,7 +337,7 @@ int toshiba_rbtx4927_irq_nested(int sw_i
 }
 
 //#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, 0, CPU_MASK_NONE, s, NULL, NULL }
-#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, SA_SHIRQ, CPU_MASK_NONE, s, NULL, NULL }
+#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, IRQF_SHARED, 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

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 14/44] PARISC: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (12 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 13/44] MIPS: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 15/44] POWERPC: " Thomas Gleixner
                   ` (30 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	matthew

[-- Attachment #1: irqflags-parisc.patch --]
[-- Type: text/plain, Size: 2674 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/parisc/kernel/irq.c    |    4 ++--
 include/asm-parisc/floppy.h |    8 ++++----
 include/asm-parisc/signal.h |    2 --
 3 files changed, 6 insertions(+), 8 deletions(-)

Index: linux-2.6.git/include/asm-parisc/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-parisc/floppy.h	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/include/asm-parisc/floppy.h	2006-07-01 16:51:35.000000000 +0200
@@ -156,11 +156,11 @@ static int vdma_get_dma_residue(unsigned
 static int fd_request_irq(void)
 {
 	if(can_use_virtual_dma)
-		return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
-						   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_hardint,
+				   IRQF_DISABLED, "floppy", NULL);
 	else
-		return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
-				   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_interrupt, 
+				   IRQF_DISABLED, "floppy", NULL);
 }
 
 static unsigned long dma_mem_alloc(unsigned long size)
Index: linux-2.6.git/include/asm-parisc/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-parisc/signal.h	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/include/asm-parisc/signal.h	2006-07-01 16:51:35.000000000 +0200
@@ -48,7 +48,6 @@
  * 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.
@@ -69,7 +68,6 @@
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 #define SA_RESTORER	0x04000000 /* obsolete -- ignored */
 
Index: linux-2.6.git/arch/parisc/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/parisc/kernel/irq.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/parisc/kernel/irq.c	2006-07-01 16:51:35.000000000 +0200
@@ -366,14 +366,14 @@ void do_cpu_irq_mask(struct pt_regs *reg
 static struct irqaction timer_action = {
 	.handler = timer_interrupt,
 	.name = "timer",
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 };
 
 #ifdef CONFIG_SMP
 static struct irqaction ipi_action = {
 	.handler = ipi_interrupt,
 	.name = "IPI",
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 };
 #endif
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 15/44] POWERPC: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (13 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 14/44] PARISC: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 16/44] PPC: " Thomas Gleixner
                   ` (29 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, benh

[-- Attachment #1: irqflags-powerpc.patch --]
[-- Type: text/plain, Size: 12602 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/powerpc/platforms/cell/interrupt.c |    4 ++--
 arch/powerpc/platforms/cell/spu_base.c  |    6 +++---
 arch/powerpc/platforms/chrp/setup.c     |   10 +++++-----
 arch/powerpc/platforms/powermac/pic.c   |    2 +-
 arch/powerpc/platforms/powermac/smp.c   |    2 +-
 arch/powerpc/platforms/pseries/setup.c  |   10 +++++-----
 arch/powerpc/platforms/pseries/xics.c   |   11 +++++++----
 arch/powerpc/sysdev/i8259.c             |    4 ++--
 arch/powerpc/sysdev/mpic.c              |   15 +++++++++------
 include/asm-powerpc/floppy.h            |    2 +-
 include/asm-powerpc/signal.h            |    2 --
 11 files changed, 36 insertions(+), 32 deletions(-)

Index: linux-2.6.git/include/asm-powerpc/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-powerpc/floppy.h	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/include/asm-powerpc/floppy.h	2006-07-01 16:51:35.000000000 +0200
@@ -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, \
-					    SA_INTERRUPT, "floppy", NULL)
+					    IRQF_DISABLED, "floppy", NULL)
 #define fd_free_irq()           free_irq(FLOPPY_IRQ, NULL);
 
 #ifdef CONFIG_PCI
Index: linux-2.6.git/include/asm-powerpc/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-powerpc/signal.h	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/include/asm-powerpc/signal.h	2006-07-01 16:51:35.000000000 +0200
@@ -63,7 +63,6 @@ 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.
@@ -83,7 +82,6 @@ typedef struct {
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000u /* dummy -- ignored */
 
 #define SA_RESTORER	0x04000000U
 
Index: linux-2.6.git/arch/powerpc/platforms/cell/interrupt.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/cell/interrupt.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/cell/interrupt.c	2006-07-01 16:51:35.000000000 +0200
@@ -304,11 +304,11 @@ static void iic_request_ipi(int ipi, con
 	int irq;
 
 	irq = iic_ipi_to_irq(ipi);
-	/* IPIs are marked SA_INTERRUPT as they must run with irqs
+	/* IPIs are marked IRQF_DISABLED 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, SA_INTERRUPT, name, NULL);
+	request_irq(irq, iic_ipi_action, IRQF_DISABLED, name, NULL);
 }
 
 void iic_request_IPIs(void)
Index: linux-2.6.git/arch/powerpc/platforms/cell/spu_base.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/cell/spu_base.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/cell/spu_base.c	2006-07-01 16:51:35.000000000 +0200
@@ -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, SA_INTERRUPT, spu->irq_c0, spu);
+		 spu_irq_class_0, IRQF_DISABLED, 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, SA_INTERRUPT, spu->irq_c1, spu);
+		 spu_irq_class_1, IRQF_DISABLED, 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, SA_INTERRUPT, spu->irq_c2, spu);
+		 spu_irq_class_2, IRQF_DISABLED, spu->irq_c2, spu);
 	if (ret)
 		goto out2;
 	goto out;
Index: linux-2.6.git/arch/powerpc/platforms/chrp/setup.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/chrp/setup.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/chrp/setup.c	2006-07-01 16:51:35.000000000 +0200
@@ -351,8 +351,8 @@ static void __init chrp_find_openpic(voi
 
 	printk(KERN_INFO "OpenPIC at %lx\n", opaddr);
 
-	irq_count = NR_IRQS - NUM_ISA_INTERRUPTS - 4; /* leave room for IPIs */
-	prom_get_irq_senses(init_senses, NUM_ISA_INTERRUPTS, NR_IRQS - 4);
+	irq_count = NR_IRQS - NUM_IIRQF_DISABLEDS - 4; /* leave room for IPIs */
+	prom_get_irq_senses(init_senses, NUM_IIRQF_DISABLEDS, NR_IRQS - 4);
 	/* i8259 cascade is always positive level */
 	init_senses[0] = IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE;
 
@@ -383,7 +383,7 @@ static void __init chrp_find_openpic(voi
 		isu_size = iranges[3];
 
 	chrp_mpic = mpic_alloc(opaddr, MPIC_PRIMARY,
-			       isu_size, NUM_ISA_INTERRUPTS, irq_count,
+			       isu_size, NUM_IIRQF_DISABLEDS, irq_count,
 			       NR_IRQS - 4, init_senses, irq_count,
 			       " MPIC    ");
 	if (chrp_mpic == NULL) {
@@ -402,7 +402,7 @@ static void __init chrp_find_openpic(voi
 	}
 
 	mpic_init(chrp_mpic);
-	mpic_setup_cascade(NUM_ISA_INTERRUPTS, i8259_irq_cascade, NULL);
+	mpic_setup_cascade(NUM_IIRQF_DISABLEDS, i8259_irq_cascade, NULL);
 }
 
 #if defined(CONFIG_VT) && defined(CONFIG_INPUT_ADBHID) && defined(XMON)
@@ -523,7 +523,7 @@ static int __init chrp_probe(void)
 	ppc_do_canonicalize_irqs = 1;
 
 	/* Assume we have an 8259... */
-	__irq_offset_value = NUM_ISA_INTERRUPTS;
+	__irq_offset_value = NUM_IIRQF_DISABLEDS;
 
 	return 1;
 }
Index: linux-2.6.git/arch/powerpc/platforms/powermac/pic.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/powermac/pic.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/powermac/pic.c	2006-07-01 16:51:35.000000000 +0200
@@ -381,7 +381,7 @@ static struct irqaction xmon_action = {
 
 static struct irqaction gatwick_cascade_action = {
 	.handler	= gatwick_action,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.mask		= CPU_MASK_NONE,
 	.name		= "cascade",
 };
Index: linux-2.6.git/arch/powerpc/platforms/powermac/smp.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/powermac/smp.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/powermac/smp.c	2006-07-01 16:51:35.000000000 +0200
@@ -377,7 +377,7 @@ static void __init psurge_dual_sync_tb(i
 
 static struct irqaction psurge_irqaction = {
 	.handler = psurge_primary_intr,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 	.name = "primary IPI",
 };
Index: linux-2.6.git/arch/powerpc/platforms/pseries/setup.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/pseries/setup.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/pseries/setup.c	2006-07-01 16:51:35.000000000 +0200
@@ -140,14 +140,14 @@ static void __init pSeries_init_mpic(voi
 	i8259_init(intack, 0);
 
 	/* Hook cascade to mpic */
-	mpic_setup_cascade(NUM_ISA_INTERRUPTS, i8259_irq_cascade, NULL);
+	mpic_setup_cascade(NUM_IIRQF_DISABLEDS, i8259_irq_cascade, NULL);
 }
 
 static void __init pSeries_setup_mpic(void)
 {
 	unsigned int *opprop;
 	unsigned long openpic_addr = 0;
-        unsigned char senses[NR_IRQS - NUM_ISA_INTERRUPTS];
+        unsigned char senses[NR_IRQS - NUM_IIRQF_DISABLEDS];
         struct device_node *root;
 	int irq_count;
 
@@ -166,10 +166,10 @@ static void __init pSeries_setup_mpic(vo
 	BUG_ON(openpic_addr == 0);
 
 	/* Get the sense values from OF */
-	prom_get_irq_senses(senses, NUM_ISA_INTERRUPTS, NR_IRQS);
+	prom_get_irq_senses(senses, NUM_IIRQF_DISABLEDS, NR_IRQS);
 	
 	/* Setup the openpic driver */
-	irq_count = NR_IRQS - NUM_ISA_INTERRUPTS - 4; /* leave room for IPIs */
+	irq_count = NR_IRQS - NUM_IIRQF_DISABLEDS - 4; /* leave room for IPIs */
 	pSeries_mpic = mpic_alloc(openpic_addr, MPIC_PRIMARY,
 				  16, 16, irq_count, /* isu size, irq offset, irq count */ 
 				  NR_IRQS - 4, /* ipi offset */
@@ -269,7 +269,7 @@ static  void __init pSeries_discover_pic
 	 * Setup interrupt mapping options that are needed for finish_device_tree
 	 * to properly parse the OF interrupt tree & do the virtual irq mapping
 	 */
-	__irq_offset_value = NUM_ISA_INTERRUPTS;
+	__irq_offset_value = NUM_IIRQF_DISABLEDS;
 	ppc64_interrupt_controller = IC_INVALID;
 	for (np = NULL; (np = of_find_node_by_name(np, "interrupt-controller"));) {
 		typep = (char *)get_property(np, "compatible", NULL);
Index: linux-2.6.git/arch/powerpc/platforms/pseries/xics.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/platforms/pseries/xics.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/platforms/pseries/xics.c	2006-07-01 16:51:35.000000000 +0200
@@ -59,7 +59,7 @@ static struct radix_tree_root irq_map = 
 
 /*
  * Mark IPIs as higher priority so we can take them inside interrupts that
- * arent marked SA_INTERRUPT
+ * arent marked IRQF_DISABLED
  */
 #define IPI_PRIORITY		4
 
@@ -586,9 +586,12 @@ void xics_request_IPIs(void)
 {
 	virt_irq_to_real_map[XICS_IPI] = XICS_IPI;
 
-	/* 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);
+	/* 
+	 * 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);
 	get_irq_desc(irq_offset_up(XICS_IPI))->status |= IRQ_PER_CPU;
 }
 #endif
Index: linux-2.6.git/arch/powerpc/sysdev/i8259.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/sysdev/i8259.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/sysdev/i8259.c	2006-07-01 16:51:35.000000000 +0200
@@ -167,7 +167,7 @@ static struct resource pic_edgectrl_iore
 
 static struct irqaction i8259_irqaction = {
 	.handler = no_action,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 	.name = "82c59 secondary cascade",
 };
@@ -207,7 +207,7 @@ void __init i8259_init(unsigned long int
 
 	spin_unlock_irqrestore(&i8259_lock, flags);
 
-	for (i = 0; i < NUM_ISA_INTERRUPTS; ++i)
+	for (i = 0; i < NUM_IIRQF_DISABLEDS; ++i)
 		irq_desc[offset + i].chip = &i8259_pic;
 
 	/* reserve our resources */
Index: linux-2.6.git/arch/powerpc/sysdev/mpic.c
===================================================================
--- linux-2.6.git.orig/arch/powerpc/sysdev/mpic.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/powerpc/sysdev/mpic.c	2006-07-01 16:51:35.000000000 +0200
@@ -540,7 +540,7 @@ static void mpic_end_ipi(unsigned int ir
 	 * 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 SA_INTERRUPT as they must run with
+	 * We mark IPI's with IRQF_DISABLED as they must run with
 	 * irqs disabled.
 	 */
 	mpic_eoi(mpic);
@@ -1027,14 +1027,17 @@ void mpic_request_ipis(void)
 	
 	printk("requesting IPIs ... \n");
 
-	/* IPIs are marked SA_INTERRUPT as they must run with irqs disabled */
-	request_irq(mpic->ipi_offset+0, mpic_ipi_action, SA_INTERRUPT,
+	/* 
+	 * IPIs are marked IRQF_DISABLED as they must run with irqs 
+	 * disabled 
+	 */
+	request_irq(mpic->ipi_offset+0, mpic_ipi_action, IRQF_DISABLED,
 		    "IPI0 (call function)", mpic);
-	request_irq(mpic->ipi_offset+1, mpic_ipi_action, SA_INTERRUPT,
+	request_irq(mpic->ipi_offset+1, mpic_ipi_action, IRQF_DISABLED,
 		   "IPI1 (reschedule)", mpic);
-	request_irq(mpic->ipi_offset+2, mpic_ipi_action, SA_INTERRUPT,
+	request_irq(mpic->ipi_offset+2, mpic_ipi_action, IRQF_DISABLED,
 		   "IPI2 (unused)", mpic);
-	request_irq(mpic->ipi_offset+3, mpic_ipi_action, SA_INTERRUPT,
+	request_irq(mpic->ipi_offset+3, mpic_ipi_action, IRQF_DISABLED,
 		   "IPI3 (debugger break)", mpic);
 
 	printk("IPIs requested... \n");

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 16/44] PPC: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (14 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 15/44] POWERPC: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 17/44] S390: " Thomas Gleixner
                   ` (28 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, benh

[-- Attachment #1: irqflags-ppc.patch --]
[-- Type: text/plain, Size: 12885 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/ppc/8260_io/fcc_enet.c                  |    2 +-
 arch/ppc/platforms/85xx/mpc8560_ads.c        |    2 +-
 arch/ppc/platforms/85xx/mpc85xx_cds_common.c |    2 +-
 arch/ppc/platforms/85xx/stx_gp3.c            |    2 +-
 arch/ppc/platforms/85xx/tqm85xx.c            |    2 +-
 arch/ppc/platforms/hdpu.c                    |    4 ++--
 arch/ppc/platforms/radstone_ppc7d.c          |    2 +-
 arch/ppc/platforms/sbc82xx.c                 |    2 +-
 arch/ppc/syslib/gt64260_pic.c                |    6 +++---
 arch/ppc/syslib/ibm440gx_common.c            |    2 +-
 arch/ppc/syslib/m82xx_pci.c                  |    2 +-
 arch/ppc/syslib/mv64360_pic.c                |    8 ++++----
 arch/ppc/syslib/open_pic.c                   |   15 +++++++++------
 include/asm-ppc/floppy.h                     |    8 ++++----
 14 files changed, 31 insertions(+), 28 deletions(-)

Index: linux-2.6.git/include/asm-ppc/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-ppc/floppy.h	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/include/asm-ppc/floppy.h	2006-07-01 16:51:35.000000000 +0200
@@ -96,11 +96,11 @@ static int vdma_get_dma_residue(unsigned
 static int fd_request_irq(void)
 {
 	if (can_use_virtual_dma)
-		return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
-						   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_hardint,
+				   IRQF_DISABLED, "floppy", NULL);
 	else
-		return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
-				   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_interrupt,
+				   IRQF_DISABLED, "floppy", NULL);
 }
 
 static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
Index: linux-2.6.git/arch/ppc/8260_io/fcc_enet.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/8260_io/fcc_enet.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/8260_io/fcc_enet.c	2006-07-01 16:51:35.000000000 +0200
@@ -2116,7 +2116,7 @@ init_fcc_startup(fcc_info_t *fip, struct
 
 #ifdef	PHY_INTERRUPT
 #ifdef CONFIG_ADS8272
-	if (request_irq(PHY_INTERRUPT, mii_link_interrupt, SA_SHIRQ,
+	if (request_irq(PHY_INTERRUPT, mii_link_interrupt, IRQF_SHARED,
 				"mii", dev) < 0)
 		printk(KERN_CRIT "Can't get MII IRQ %d\n", PHY_INTERRUPT);
 #else
Index: linux-2.6.git/arch/ppc/platforms/hdpu.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/hdpu.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/hdpu.c	2006-07-01 16:51:35.000000000 +0200
@@ -837,7 +837,7 @@ static void smp_hdpu_setup_cpu(int cpu_n
 		mv64x60_write(&bh, MV64360_CPU0_DOORBELL_CLR, 0xff);
 		mv64x60_write(&bh, MV64360_CPU0_DOORBELL_MASK, 0xff);
 		request_irq(60, hdpu_smp_cpu0_int_handler,
-			    SA_INTERRUPT, hdpu_smp0, 0);
+			    IRQF_DISABLED, hdpu_smp0, 0);
 	}
 
 	if (cpu_nr == 1) {
@@ -857,7 +857,7 @@ static void smp_hdpu_setup_cpu(int cpu_n
 		mv64x60_write(&bh, MV64360_CPU1_DOORBELL_CLR, 0x0);
 		mv64x60_write(&bh, MV64360_CPU1_DOORBELL_MASK, 0xff);
 		request_irq(28, hdpu_smp_cpu1_int_handler,
-			    SA_INTERRUPT, hdpu_smp1, 0);
+			    IRQF_DISABLED, hdpu_smp1, 0);
 	}
 
 }
Index: linux-2.6.git/arch/ppc/platforms/radstone_ppc7d.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/radstone_ppc7d.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/radstone_ppc7d.c	2006-07-01 16:51:35.000000000 +0200
@@ -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,
-		    SA_INTERRUPT, "I8259 (GPP28) interrupt", (void *)0);
+		    IRQF_DISABLED, "I8259 (GPP28) interrupt", (void *)0);
 
 	/* Configure MPP16 as watchdog NMI, MPP17 as watchdog WDE */
 	spin_lock_irqsave(&mv64x60_lock, flags);
Index: linux-2.6.git/arch/ppc/platforms/sbc82xx.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/sbc82xx.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/sbc82xx.c	2006-07-01 16:51:35.000000000 +0200
@@ -145,7 +145,7 @@ static irqreturn_t sbc82xx_i8259_demux(i
 
 static struct irqaction sbc82xx_i8259_irqaction = {
 	.handler = sbc82xx_i8259_demux,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 	.name = "i8259 demux",
 };
Index: linux-2.6.git/arch/ppc/platforms/85xx/mpc8560_ads.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/85xx/mpc8560_ads.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/85xx/mpc8560_ads.c	2006-07-01 16:51:35.000000000 +0200
@@ -131,7 +131,7 @@ static irqreturn_t cpm2_cascade(int irq,
 
 static struct irqaction cpm2_irqaction = {
 	.handler = cpm2_cascade,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 	.name = "cpm2_cascade",
 };
Index: linux-2.6.git/arch/ppc/platforms/85xx/mpc85xx_cds_common.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/85xx/mpc85xx_cds_common.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/85xx/mpc85xx_cds_common.c	2006-07-01 16:51:35.000000000 +0200
@@ -136,7 +136,7 @@ static irqreturn_t cpm2_cascade(int irq,
 
 static struct irqaction cpm2_irqaction = {
 	.handler = cpm2_cascade,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 	.name = "cpm2_cascade",
 };
Index: linux-2.6.git/arch/ppc/platforms/85xx/stx_gp3.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/85xx/stx_gp3.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/85xx/stx_gp3.c	2006-07-01 16:51:35.000000000 +0200
@@ -166,7 +166,7 @@ static irqreturn_t cpm2_cascade(int irq,
 
 static struct irqaction cpm2_irqaction = {
 	.handler	= cpm2_cascade,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.mask		= CPU_MASK_NONE,
 	.name		= "cpm2_cascade",
 };
Index: linux-2.6.git/arch/ppc/platforms/85xx/tqm85xx.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/platforms/85xx/tqm85xx.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/platforms/85xx/tqm85xx.c	2006-07-01 16:51:35.000000000 +0200
@@ -190,7 +190,7 @@ static irqreturn_t cpm2_cascade(int irq,
 
 static struct irqaction cpm2_irqaction = {
 	.handler = cpm2_cascade,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 	.name = "cpm2_cascade",
 };
Index: linux-2.6.git/arch/ppc/syslib/gt64260_pic.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/syslib/gt64260_pic.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/syslib/gt64260_pic.c	2006-07-01 16:51:35.000000000 +0200
@@ -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, SA_INTERRUPT, CPU_INTR_STR, 0)))
+		gt64260_cpu_error_int_handler, IRQF_DISABLED, 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,
-		    SA_INTERRUPT, PCI0_INTR_STR, (void *)0)))
+		    IRQF_DISABLED, 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,
-		    SA_INTERRUPT, PCI1_INTR_STR, (void *)1)))
+		    IRQF_DISABLED, PCI1_INTR_STR, (void *)1)))
 		printk(KERN_WARNING "Can't register pci 1 error handler: %d",
 			rc);
 
Index: linux-2.6.git/arch/ppc/syslib/ibm440gx_common.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/syslib/ibm440gx_common.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/syslib/ibm440gx_common.c	2006-07-01 16:51:35.000000000 +0200
@@ -149,7 +149,7 @@ void __init ibm440gx_l2c_enable(void){
 	unsigned long flags;
 
 	/* Install error handler */
-	if (request_irq(87, l2c_error_handler, SA_INTERRUPT, "L2C", 0) < 0){
+	if (request_irq(87, l2c_error_handler, IRQF_DISABLED, "L2C", 0) < 0){
 		printk(KERN_ERR "Cannot install L2C error handler, cache is not enabled\n");
 		return;
 	}
Index: linux-2.6.git/arch/ppc/syslib/m82xx_pci.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/syslib/m82xx_pci.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/syslib/m82xx_pci.c	2006-07-01 16:51:35.000000000 +0200
@@ -139,7 +139,7 @@ pq2pci_irq_demux(int irq, void *dev_id, 
 
 static struct irqaction pq2pci_irqaction = {
 	.handler = pq2pci_irq_demux,
-	.flags 	 = SA_INTERRUPT,
+	.flags 	 = IRQF_DISABLED,
 	.mask	 = CPU_MASK_NONE,
 	.name	 = "PQ2 PCI cascade",
 };
Index: linux-2.6.git/arch/ppc/syslib/mv64360_pic.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/syslib/mv64360_pic.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/syslib/mv64360_pic.c	2006-07-01 16:51:35.000000000 +0200
@@ -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, SA_INTERRUPT, CPU_INTR_STR, 0)))
+		mv64360_cpu_error_int_handler, IRQF_DISABLED, 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,SA_INTERRUPT,SRAM_INTR_STR, 0)))
+		mv64360_sram_error_int_handler,IRQF_DISABLED,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,
-			SA_INTERRUPT, PCI0_INTR_STR, (void *)0)))
+			IRQF_DISABLED, 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,
-			SA_INTERRUPT, PCI1_INTR_STR, (void *)1)))
+			IRQF_DISABLED, PCI1_INTR_STR, (void *)1)))
 		printk(KERN_WARNING "Can't register pci 1 error handler: %d",
 			rc);
 
Index: linux-2.6.git/arch/ppc/syslib/open_pic.c
===================================================================
--- linux-2.6.git.orig/arch/ppc/syslib/open_pic.c	2006-07-01 16:51:24.000000000 +0200
+++ linux-2.6.git/arch/ppc/syslib/open_pic.c	2006-07-01 16:51:35.000000000 +0200
@@ -575,18 +575,21 @@ void openpic_request_IPIs(void)
 	if (OpenPIC == NULL)
 		return;
 
-	/* IPIs are marked SA_INTERRUPT as they must run with irqs disabled */
+	/*
+ 	 * IPIs are marked IRQF_DISABLED as they must run with irqs
+	 * disabled
+	 */
 	request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset,
-		    openpic_ipi_action, SA_INTERRUPT,
+		    openpic_ipi_action, IRQF_DISABLED,
 		    "IPI0 (call function)", NULL);
 	request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+1,
-		    openpic_ipi_action, SA_INTERRUPT,
+		    openpic_ipi_action, IRQF_DISABLED,
 		    "IPI1 (reschedule)", NULL);
 	request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+2,
-		    openpic_ipi_action, SA_INTERRUPT,
+		    openpic_ipi_action, IRQF_DISABLED,
 		    "IPI2 (invalidate tlb)", NULL);
 	request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+3,
-		    openpic_ipi_action, SA_INTERRUPT,
+		    openpic_ipi_action, IRQF_DISABLED,
 		    "IPI3 (xmon break)", NULL);
 
 	for ( i = 0; i < OPENPIC_NUM_IPI ; i++ )
@@ -691,7 +694,7 @@ openpic_init_nmi_irq(u_int irq)
 
 static struct irqaction openpic_cascade_irqaction = {
 	.handler = no_action,
-	.flags = SA_INTERRUPT,
+	.flags = IRQF_DISABLED,
 	.mask = CPU_MASK_NONE,
 };
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 17/44] S390: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (15 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 16/44] PPC: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 18/44] SH64: " Thomas Gleixner
                   ` (27 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	schwidefsky

[-- Attachment #1: irqflags-s390.patch --]
[-- Type: text/plain, Size: 1120 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 include/asm-s390/signal.h |    2 --
 1 file changed, 2 deletions(-)

Index: linux-2.6.git/include/asm-s390/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-s390/signal.h	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/include/asm-s390/signal.h	2006-07-01 16:51:36.000000000 +0200
@@ -84,7 +84,6 @@ 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.
@@ -104,7 +103,6 @@ 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
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 18/44] SH64: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (16 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 17/44] S390: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 19/44] SH: " Thomas Gleixner
                   ` (26 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, lethal

[-- Attachment #1: irqflags-sh64.patch --]
[-- Type: text/plain, Size: 5125 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/sh64/kernel/dma.c      |    4 ++--
 arch/sh64/kernel/pci_sh5.c  |    4 ++--
 arch/sh64/kernel/time.c     |    4 ++--
 arch/sh64/mach-cayman/irq.c |    4 ++--
 include/asm-sh64/keyboard.h |    2 +-
 include/asm-sh64/signal.h   |    2 --
 6 files changed, 9 insertions(+), 11 deletions(-)

Index: linux-2.6.git/include/asm-sh64/keyboard.h
===================================================================
--- linux-2.6.git.orig/include/asm-sh64/keyboard.h	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/include/asm-sh64/keyboard.h	2006-07-01 16:51:36.000000000 +0200
@@ -65,7 +65,7 @@ extern unsigned char pckbd_sysrq_xlate[1
 #endif
 
 #define aux_request_irq(hand, dev_id)					\
-	request_irq(AUX_IRQ, hand, SA_SHIRQ, "PS2 Mouse", dev_id)
+	request_irq(AUX_IRQ, hand, IRQF_SHARED, "PS2 Mouse", dev_id)
 
 #define aux_free_irq(dev_id) free_irq(AUX_IRQ, dev_id)
 
Index: linux-2.6.git/include/asm-sh64/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-sh64/signal.h	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/include/asm-sh64/signal.h	2006-07-01 16:51:36.000000000 +0200
@@ -74,7 +74,6 @@ 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,7 +93,6 @@ typedef struct {
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 #define SA_RESTORER	0x04000000
 
Index: linux-2.6.git/arch/sh64/kernel/dma.c
===================================================================
--- linux-2.6.git.orig/arch/sh64/kernel/dma.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh64/kernel/dma.c	2006-07-01 16:51:36.000000000 +0200
@@ -115,7 +115,7 @@ static irqreturn_t dma_mte(int irq, void
 
 static struct irqaction irq_dmte = {
 	.handler	= dma_mte,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "DMA MTE",
 };
 
@@ -152,7 +152,7 @@ static irqreturn_t dma_err(int irq, void
 
 static struct irqaction irq_derr = {
 	.handler	= dma_err,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.name		= "DMA Error",
 };
 
Index: linux-2.6.git/arch/sh64/kernel/pci_sh5.c
===================================================================
--- linux-2.6.git.orig/arch/sh64/kernel/pci_sh5.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh64/kernel/pci_sh5.c	2006-07-01 16:51:36.000000000 +0200
@@ -473,13 +473,13 @@ static void __init pcibios_size_bridges(
 static int __init pcibios_init(void)
 {
         if (request_irq(IRQ_ERR, pcish5_err_irq,
-                        SA_INTERRUPT, "PCI Error",NULL) < 0) {
+                        IRQF_DISABLED, "PCI Error",NULL) < 0) {
                 printk(KERN_ERR "PCISH5: Cannot hook PCI_PERR interrupt\n");
                 return -EINVAL;
         }
 
         if (request_irq(IRQ_SERR, pcish5_serr_irq,
-                        SA_INTERRUPT, "PCI SERR interrupt", NULL) < 0) {
+                        IRQF_DISABLED, "PCI SERR interrupt", NULL) < 0) {
                 printk(KERN_ERR "PCISH5: Cannot hook PCI_SERR interrupt\n");
                 return -EINVAL;
         }
Index: linux-2.6.git/arch/sh64/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/sh64/kernel/time.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh64/kernel/time.c	2006-07-01 16:51:36.000000000 +0200
@@ -484,8 +484,8 @@ static irqreturn_t sh64_rtc_interrupt(in
 	return IRQ_HANDLED;
 }
 
-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};
+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};
 
 void __init time_init(void)
 {
Index: linux-2.6.git/arch/sh64/mach-cayman/irq.c
===================================================================
--- linux-2.6.git.orig/arch/sh64/mach-cayman/irq.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh64/mach-cayman/irq.c	2006-07-01 16:51:36.000000000 +0200
@@ -44,13 +44,13 @@ static irqreturn_t cayman_interrupt_pci2
 static struct irqaction cayman_action_smsc = {
 	.name		= "Cayman SMSC Mux",
 	.handler	= cayman_interrupt_smsc,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 };
 
 static struct irqaction cayman_action_pci2 = {
 	.name		= "Cayman PCI2 Mux",
 	.handler	= cayman_interrupt_pci2,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 };
 
 static void enable_cayman_irq(unsigned int irq)

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 19/44] SH: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (17 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 18/44] SH64: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 20/44] SPARC64: " Thomas Gleixner
                   ` (25 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, lethal

[-- Attachment #1: irqflags-sh.patch --]
[-- Type: text/plain, Size: 9584 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/sh/boards/snapgear/setup.c        |    2 +-
 arch/sh/cchips/hd6446x/hd64461/setup.c |    2 +-
 arch/sh/cchips/hd6446x/hd64465/gpio.c  |    2 +-
 arch/sh/cchips/hd6446x/hd64465/setup.c |    2 +-
 arch/sh/cchips/voyagergx/irq.c         |    2 +-
 arch/sh/drivers/dma/dma-g2.c           |    2 +-
 arch/sh/drivers/dma/dma-pvr2.c         |    2 +-
 arch/sh/drivers/dma/dma-sh.c           |    4 ++--
 arch/sh/drivers/pci/pci-st40.c         |    2 +-
 arch/sh/kernel/timers/timer-tmu.c      |    2 +-
 include/asm-sh/floppy.h                |    9 ++++-----
 include/asm-sh/mpc1211/keyboard.h      |    2 +-
 include/asm-sh/signal.h                |    2 --
 13 files changed, 16 insertions(+), 19 deletions(-)

Index: linux-2.6.git/include/asm-sh/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-sh/floppy.h	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/include/asm-sh/floppy.h	2006-07-01 16:51:36.000000000 +0200
@@ -146,12 +146,11 @@ static int vdma_get_dma_residue(unsigned
 static int fd_request_irq(void)
 {
 	if(can_use_virtual_dma)
-		return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
-				   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_hardint,
+				   IRQF_DISABLED, "floppy", NULL);
 	else
-		return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
-				   "floppy", NULL);
-
+		return request_irq(FLOPPY_IRQ, floppy_interrupt,
+				   IRQF_DISABLED, "floppy", NULL);
 }
 
 static unsigned long dma_mem_alloc(unsigned long size)
Index: linux-2.6.git/include/asm-sh/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-sh/signal.h	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/include/asm-sh/signal.h	2006-07-01 16:51:36.000000000 +0200
@@ -75,7 +75,6 @@ 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.
@@ -95,7 +94,6 @@ 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
 
Index: linux-2.6.git/include/asm-sh/mpc1211/keyboard.h
===================================================================
--- linux-2.6.git.orig/include/asm-sh/mpc1211/keyboard.h	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/include/asm-sh/mpc1211/keyboard.h	2006-07-01 16:51:36.000000000 +0200
@@ -57,7 +57,7 @@ extern unsigned char pckbd_sysrq_xlate[1
 #define AUX_IRQ 12
 
 #define aux_request_irq(hand, dev_id)					\
-	request_irq(AUX_IRQ, hand, SA_SHIRQ, "PS2 Mouse", dev_id)
+	request_irq(AUX_IRQ, hand, IRQF_SHARED, "PS2 Mouse", dev_id)
 
 #define aux_free_irq(dev_id) free_irq(AUX_IRQ, dev_id)
 
Index: linux-2.6.git/arch/sh/boards/snapgear/setup.c
===================================================================
--- linux-2.6.git.orig/arch/sh/boards/snapgear/setup.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/boards/snapgear/setup.c	2006-07-01 16:51:36.000000000 +0200
@@ -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, SA_INTERRUPT,
+	if (request_irq(IRL0_IRQ, eraseconfig_interrupt, IRQF_DISABLED,
 				"Erase Config", NULL))
 		printk("SnapGear: failed to register IRQ%d for Reset witch\n",
 				IRL0_IRQ);
Index: linux-2.6.git/arch/sh/cchips/hd6446x/hd64461/setup.c
===================================================================
--- linux-2.6.git.orig/arch/sh/cchips/hd6446x/hd64461/setup.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/cchips/hd6446x/hd64461/setup.c	2006-07-01 16:51:36.000000000 +0200
@@ -133,7 +133,7 @@ int hd64461_irq_demux(int irq)
 	return __irq_demux(irq);
 }
 
-static struct irqaction irq0 = { hd64461_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "HD64461", NULL, NULL };
+static struct irqaction irq0 = { hd64461_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "HD64461", NULL, NULL };
 
 int __init setup_hd64461(void)
 {
Index: linux-2.6.git/arch/sh/cchips/hd6446x/hd64465/gpio.c
===================================================================
--- linux-2.6.git.orig/arch/sh/cchips/hd6446x/hd64465/gpio.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/cchips/hd6446x/hd64465/gpio.c	2006-07-01 16:51:36.000000000 +0200
@@ -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,
-	    		SA_INTERRUPT, MODNAME, 0))
+	    		IRQF_DISABLED, MODNAME, 0))
 		goto out_irqfailed;
 
     	printk("HD64465 GPIO layer on irq %d\n", HD64465_IRQ_GPIO);
Index: linux-2.6.git/arch/sh/cchips/hd6446x/hd64465/setup.c
===================================================================
--- linux-2.6.git.orig/arch/sh/cchips/hd6446x/hd64465/setup.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/cchips/hd6446x/hd64465/setup.c	2006-07-01 16:51:36.000000000 +0200
@@ -153,7 +153,7 @@ int hd64465_irq_demux(int irq)
 	return irq;
 }
 
-static struct irqaction irq0  = { hd64465_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "HD64465", NULL, NULL};
+static struct irqaction irq0  = { hd64465_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "HD64465", NULL, NULL};
 
 
 static int __init setup_hd64465(void)
Index: linux-2.6.git/arch/sh/cchips/voyagergx/irq.c
===================================================================
--- linux-2.6.git.orig/arch/sh/cchips/voyagergx/irq.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/cchips/voyagergx/irq.c	2006-07-01 16:51:36.000000000 +0200
@@ -165,7 +165,7 @@ int voyagergx_irq_demux(int irq)
 static struct irqaction irq0  = {
 	.name		= "voyagergx",
 	.handler	= voyagergx_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.mask		= CPU_MASK_NONE,
 };
 
Index: linux-2.6.git/arch/sh/drivers/dma/dma-g2.c
===================================================================
--- linux-2.6.git.orig/arch/sh/drivers/dma/dma-g2.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/drivers/dma/dma-g2.c	2006-07-01 16:51:36.000000000 +0200
@@ -56,7 +56,7 @@ static irqreturn_t g2_dma_interrupt(int 
 static struct irqaction g2_dma_irq = {
 	.name		= "g2 DMA handler",
 	.handler	= g2_dma_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 };
 
 static int g2_enable_dma(struct dma_channel *chan)
Index: linux-2.6.git/arch/sh/drivers/dma/dma-pvr2.c
===================================================================
--- linux-2.6.git.orig/arch/sh/drivers/dma/dma-pvr2.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/drivers/dma/dma-pvr2.c	2006-07-01 16:51:36.000000000 +0200
@@ -70,7 +70,7 @@ static int pvr2_xfer_dma(struct dma_chan
 static struct irqaction pvr2_dma_irq = {
 	.name		= "pvr2 DMA handler",
 	.handler	= pvr2_dma_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 };
 
 static struct dma_ops pvr2_dma_ops = {
Index: linux-2.6.git/arch/sh/drivers/dma/dma-sh.c
===================================================================
--- linux-2.6.git.orig/arch/sh/drivers/dma/dma-sh.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/drivers/dma/dma-sh.c	2006-07-01 16:51:36.000000000 +0200
@@ -90,7 +90,7 @@ static int sh_dmac_request_dma(struct dm
 		 chan->chan);
 
 	return request_irq(get_dmte_irq(chan->chan), dma_tei,
-			   SA_INTERRUPT, name, chan);
+			   IRQF_DISABLED, 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, SA_INTERRUPT, "DMAC Address Error", 0);
+	i = request_irq(DMAE_IRQ, dma_err, IRQF_DISABLED, "DMAC Address Error", 0);
 	if (i < 0)
 		return i;
 #endif
Index: linux-2.6.git/arch/sh/drivers/pci/pci-st40.c
===================================================================
--- linux-2.6.git.orig/arch/sh/drivers/pci/pci-st40.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/drivers/pci/pci-st40.c	2006-07-01 16:51:36.000000000 +0200
@@ -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, 
-                        SA_INTERRUPT, "st40pci", NULL)) {
+                        IRQF_DISABLED, "st40pci", NULL)) {
 		printk(KERN_ERR "st40pci: Cannot hook interrupt\n");
 		return -EIO;
 	}
Index: linux-2.6.git/arch/sh/kernel/timers/timer-tmu.c
===================================================================
--- linux-2.6.git.orig/arch/sh/kernel/timers/timer-tmu.c	2006-07-01 16:51:23.000000000 +0200
+++ linux-2.6.git/arch/sh/kernel/timers/timer-tmu.c	2006-07-01 16:51:36.000000000 +0200
@@ -107,7 +107,7 @@ static irqreturn_t tmu_timer_interrupt(i
 static struct irqaction tmu_irq = {
 	.name		= "timer",
 	.handler	= tmu_timer_interrupt,
-	.flags		= SA_INTERRUPT,
+	.flags		= IRQF_DISABLED,
 	.mask		= CPU_MASK_NONE,
 };
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 20/44] SPARC64: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (18 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 19/44] SH: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 21/44] SPARC: " Thomas Gleixner
                   ` (24 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, davem

[-- Attachment #1: irqflags-sparc64.patch --]
[-- Type: text/plain, Size: 9089 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/sparc64/kernel/ebus.c       |    2 +-
 arch/sparc64/kernel/pci_psycho.c |    8 ++++----
 arch/sparc64/kernel/pci_sabre.c  |    6 +++---
 arch/sparc64/kernel/pci_schizo.c |   20 ++++++++++----------
 arch/sparc64/kernel/sbus.c       |    6 +++---
 include/asm-sparc64/floppy.h     |    2 +-
 include/asm-sparc64/signal.h     |    3 ---
 7 files changed, 22 insertions(+), 25 deletions(-)

Index: linux-2.6.git/include/asm-sparc64/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-sparc64/floppy.h	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/include/asm-sparc64/floppy.h	2006-07-01 16:51:37.000000000 +0200
@@ -267,7 +267,7 @@ static int sun_fd_request_irq(void)
 		once = 1;
 
 		error = request_irq(FLOPPY_IRQ, sparc_floppy_irq, 
-				    SA_INTERRUPT, "floppy", NULL);
+				    IRQF_DISABLED, "floppy", NULL);
 
 		return ((error == 0) ? 0 : -1);
 	}
Index: linux-2.6.git/include/asm-sparc64/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-sparc64/signal.h	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/include/asm-sparc64/signal.h	2006-07-01 16:51:37.000000000 +0200
@@ -133,16 +133,13 @@ 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
Index: linux-2.6.git/arch/sparc64/kernel/ebus.c
===================================================================
--- linux-2.6.git.orig/arch/sparc64/kernel/ebus.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc64/kernel/ebus.c	2006-07-01 16:51:37.000000000 +0200
@@ -140,7 +140,7 @@ int ebus_dma_irq_enable(struct ebus_dma_
 
 	if (on) {
 		if (p->flags & EBUS_DMA_FLAG_USE_EBDMA_HANDLER) {
-			if (request_irq(p->irq, ebus_dma_irq, SA_SHIRQ, p->name, p))
+			if (request_irq(p->irq, ebus_dma_irq, IRQF_SHARED, p->name, p))
 				return -EBUSY;
 		}
 
Index: linux-2.6.git/arch/sparc64/kernel/pci_psycho.c
===================================================================
--- linux-2.6.git.orig/arch/sparc64/kernel/pci_psycho.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc64/kernel/pci_psycho.c	2006-07-01 16:51:37.000000000 +0200
@@ -863,11 +863,11 @@ static void psycho_register_error_handle
 	if (op->num_irqs < 6)
 		return;
 
-	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,
+	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,
 		    "PSYCHO PCIERR-A", &p->pbm_A);
-	request_irq(op->irqs[0], psycho_pcierr_intr, SA_SHIRQ,
+	request_irq(op->irqs[0], psycho_pcierr_intr, IRQF_SHARED,
 		    "PSYCHO PCIERR-B", &p->pbm_B);
 
 	/* Enable UE and CE interrupts for controller. */
Index: linux-2.6.git/arch/sparc64/kernel/pci_sabre.c
===================================================================
--- linux-2.6.git.orig/arch/sparc64/kernel/pci_sabre.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc64/kernel/pci_sabre.c	2006-07-01 16:51:37.000000000 +0200
@@ -854,14 +854,14 @@ static void sabre_register_error_handler
 		     SABRE_UEAFSR_SDRD | SABRE_UEAFSR_SDWR |
 		     SABRE_UEAFSR_SDTE | SABRE_UEAFSR_PDTE));
 
-	request_irq(op->irqs[1], sabre_ue_intr, SA_SHIRQ, "SABRE UE", p);
+	request_irq(op->irqs[1], sabre_ue_intr, IRQF_SHARED, "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, SA_SHIRQ, "SABRE CE", p);
-	request_irq(op->irqs[0], sabre_pcierr_intr, SA_SHIRQ,
+	request_irq(op->irqs[2], sabre_ce_intr, IRQF_SHARED, "SABRE CE", p);
+	request_irq(op->irqs[0], sabre_pcierr_intr, IRQF_SHARED,
 		    "SABRE PCIERR", p);
 
 	tmp = sabre_read(base + SABRE_PCICTRL);
Index: linux-2.6.git/arch/sparc64/kernel/pci_schizo.c
===================================================================
--- linux-2.6.git.orig/arch/sparc64/kernel/pci_schizo.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc64/kernel/pci_schizo.c	2006-07-01 16:51:37.000000000 +0200
@@ -998,32 +998,32 @@ static void tomatillo_register_error_han
 	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, SA_SHIRQ,
+		request_irq(op->irqs[1], schizo_ue_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[2], schizo_ce_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[3], schizo_safarierr_intr, IRQF_SHARED,
 			    "TOMATILLO SERR", p);
 
 	/* Enable UE and CE interrupts for controller. */
@@ -1106,32 +1106,32 @@ static void schizo_register_error_handle
 	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, SA_SHIRQ,
+		request_irq(op->irqs[1], schizo_ue_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[2], schizo_ce_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[0], schizo_pcierr_intr, IRQF_SHARED,
 			    "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, SA_SHIRQ,
+		request_irq(op->irqs[3], schizo_safarierr_intr, IRQF_SHARED,
 			    "SCHIZO SERR", p);
 
 	/* Enable UE and CE interrupts for controller. */
Index: linux-2.6.git/arch/sparc64/kernel/sbus.c
===================================================================
--- linux-2.6.git.orig/arch/sparc64/kernel/sbus.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc64/kernel/sbus.c	2006-07-01 16:51:37.000000000 +0200
@@ -1065,7 +1065,7 @@ static void __init sysio_register_error_
 
 	irq = sbus_build_irq(sbus, SYSIO_UE_INO);
 	if (request_irq(irq, sysio_ue_handler,
-			SA_SHIRQ, "SYSIO UE", sbus) < 0) {
+			IRQF_SHARED, "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_
 
 	irq = sbus_build_irq(sbus, SYSIO_CE_INO);
 	if (request_irq(irq, sysio_ce_handler,
-			SA_SHIRQ, "SYSIO CE", sbus) < 0) {
+			IRQF_SHARED, "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_
 
 	irq = sbus_build_irq(sbus, SYSIO_SBUSERR_INO);
 	if (request_irq(irq, sysio_sbus_error_handler,
-			SA_SHIRQ, "SYSIO SBUS Error", sbus) < 0) {
+			IRQF_SHARED, "SYSIO SBUS Error", sbus) < 0) {
 		prom_printf("SYSIO[%x]: Cannot register SBUS Error interrupt.\n",
 			    sbus->portid);
 		prom_halt();

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 21/44] SPARC: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (19 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 20/44] SPARC64: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 22/44] UM: " Thomas Gleixner
                   ` (23 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, davem

[-- Attachment #1: irqflags-sparc.patch --]
[-- Type: text/plain, Size: 8564 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/sparc/kernel/irq.c       |   14 +++++++-------
 arch/sparc/kernel/pcic.c      |    2 +-
 arch/sparc/kernel/sun4c_irq.c |    2 +-
 arch/sparc/kernel/sun4d_irq.c |   12 ++++++------
 arch/sparc/kernel/sun4m_irq.c |    2 +-
 arch/sparc/kernel/tick14.c    |    2 +-
 include/asm-sparc/floppy.h    |    3 ++-
 include/asm-sparc/signal.h    |    3 ---
 8 files changed, 19 insertions(+), 21 deletions(-)

Index: linux-2.6.git/include/asm-sparc/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-sparc/floppy.h	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/include/asm-sparc/floppy.h	2006-07-01 16:51:37.000000000 +0200
@@ -271,7 +271,8 @@ static int sun_fd_request_irq(void)
 
 	if(!once) {
 		once = 1;
-		error = request_fast_irq(FLOPPY_IRQ, floppy_hardint, SA_INTERRUPT, "floppy");
+		error = request_fast_irq(FLOPPY_IRQ, floppy_hardint,
+					 IRQF_DISABLED, "floppy");
 		return ((error == 0) ? 0 : -1);
 	} else return 0;
 }
Index: linux-2.6.git/include/asm-sparc/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-sparc/signal.h	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/include/asm-sparc/signal.h	2006-07-01 16:51:37.000000000 +0200
@@ -132,16 +132,13 @@ 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
Index: linux-2.6.git/arch/sparc/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/sparc/kernel/irq.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc/kernel/irq.c	2006-07-01 16:51:37.000000000 +0200
@@ -191,11 +191,11 @@ int show_interrupts(struct seq_file *p, 
 		}
 #endif
 		seq_printf(p, " %c %s",
-			(action->flags & SA_INTERRUPT) ? '+' : ' ',
+			(action->flags & IRQF_DISABLED) ? '+' : ' ',
 			action->name);
 		for (action=action->next; action; action = action->next) {
 			seq_printf(p, ",%s %s",
-				(action->flags & SA_INTERRUPT) ? " +" : "",
+				(action->flags & IRQF_DISABLED) ? " +" : "",
 				action->name);
 		}
 		seq_putc(p, '\n');
@@ -243,7 +243,7 @@ void free_irq(unsigned int irq, void *de
 			printk("Trying to free free shared IRQ%d\n",irq);
 			goto out_unlock;
 		}
-	} else if (action->flags & SA_SHIRQ) {
+	} else if (action->flags & IRQF_SHARED) {
 		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 & SA_SHIRQ)
+		if(action->flags & IRQF_SHARED)
 			panic("Trying to register fast irq when already shared.\n");
-		if(irqflags & SA_SHIRQ)
+		if(irqflags & IRQF_SHARED)
 			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 & SA_SHIRQ) || !(irqflags & SA_SHIRQ)) {
+		if (!(action->flags & IRQF_SHARED) || !(irqflags & IRQF_SHARED)) {
 			ret = -EBUSY;
 			goto out_unlock;
 		}
-		if ((action->flags & SA_INTERRUPT) != (irqflags & SA_INTERRUPT)) {
+		if ((action->flags & IRQF_DISABLED) != (irqflags & IRQF_DISABLED)) {
 			printk("Attempt to mix fast and slow interrupts on IRQ%d denied\n", irq);
 			ret = -EBUSY;
 			goto out_unlock;
Index: linux-2.6.git/arch/sparc/kernel/pcic.c
===================================================================
--- linux-2.6.git.orig/arch/sparc/kernel/pcic.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc/kernel/pcic.c	2006-07-01 16:51:37.000000000 +0200
@@ -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,
-			  (SA_INTERRUPT | SA_STATIC_ALLOC), "timer", NULL);
+			  (IRQF_DISABLED | SA_STATIC_ALLOC), "timer", NULL);
 	if (irq) {
 		prom_printf("time_init: unable to attach IRQ%d\n", timer_irq);
 		prom_halt();
Index: linux-2.6.git/arch/sparc/kernel/sun4c_irq.c
===================================================================
--- linux-2.6.git.orig/arch/sparc/kernel/sun4c_irq.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc/kernel/sun4c_irq.c	2006-07-01 16:51:37.000000000 +0200
@@ -179,7 +179,7 @@ static void __init sun4c_init_timers(irq
 
 	irq = request_irq(TIMER_IRQ,
 			  counter_fn,
-			  (SA_INTERRUPT | SA_STATIC_ALLOC),
+			  (IRQF_DISABLED | SA_STATIC_ALLOC),
 			  "timer", NULL);
 	if (irq) {
 		prom_printf("time_init: unable to attach IRQ%d\n",TIMER_IRQ);
Index: linux-2.6.git/arch/sparc/kernel/sun4d_irq.c
===================================================================
--- linux-2.6.git.orig/arch/sparc/kernel/sun4d_irq.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc/kernel/sun4d_irq.c	2006-07-01 16:51:37.000000000 +0200
@@ -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 & SA_INTERRUPT) ? '+' : ' ',
+			(action->flags & IRQF_DISABLED) ? '+' : ' ',
 			action->name);
 		action = action->next;
 		for (;;) {
 			for (; action; action = action->next) {
 				seq_printf(p, ",%s %s",
-					(action->flags & SA_INTERRUPT) ? " +" : "",
+					(action->flags & IRQF_DISABLED) ? " +" : "",
 					action->name);
 			}
 			if (!sbusl) break;
@@ -160,7 +160,7 @@ void sun4d_free_irq(unsigned int irq, vo
 			printk("Trying to free free shared IRQ%d\n",irq);
 			goto out_unlock;
 		}
-	} else if (action->flags & SA_SHIRQ) {
+	} else if (action->flags & IRQF_SHARED) {
 		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 & SA_SHIRQ) && (irqflags & SA_SHIRQ)) {
+		if ((action->flags & IRQF_SHARED) && (irqflags & IRQF_SHARED)) {
 			for (tmp = action; tmp->next; tmp = tmp->next);
 		} else {
 			ret = -EBUSY;
 			goto out_unlock;
 		}
-		if ((action->flags & SA_INTERRUPT) ^ (irqflags & SA_INTERRUPT)) {
+		if ((action->flags & IRQF_DISABLED) ^ (irqflags & IRQF_DISABLED)) {
 			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(irq
 
 	irq = request_irq(TIMER_IRQ,
 			  counter_fn,
-			  (SA_INTERRUPT | SA_STATIC_ALLOC),
+			  (IRQF_DISABLED | SA_STATIC_ALLOC),
 			  "timer", NULL);
 	if (irq) {
 		prom_printf("time_init: unable to attach IRQ%d\n",TIMER_IRQ);
Index: linux-2.6.git/arch/sparc/kernel/sun4m_irq.c
===================================================================
--- linux-2.6.git.orig/arch/sparc/kernel/sun4m_irq.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc/kernel/sun4m_irq.c	2006-07-01 16:51:37.000000000 +0200
@@ -278,7 +278,7 @@ static void __init sun4m_init_timers(irq
 
 	irq = request_irq(TIMER_IRQ,
 			  counter_fn,
-			  (SA_INTERRUPT | SA_STATIC_ALLOC),
+			  (IRQF_DISABLED | SA_STATIC_ALLOC),
 			  "timer", NULL);
 	if (irq) {
 		prom_printf("time_init: unable to attach IRQ%d\n",TIMER_IRQ);
Index: linux-2.6.git/arch/sparc/kernel/tick14.c
===================================================================
--- linux-2.6.git.orig/arch/sparc/kernel/tick14.c	2006-07-01 16:51:22.000000000 +0200
+++ linux-2.6.git/arch/sparc/kernel/tick14.c	2006-07-01 16:51:37.000000000 +0200
@@ -74,7 +74,7 @@ void claim_ticker14(irqreturn_t (*handle
 
 	if (!request_irq(irq_nr,
 			 handler,
-			 (SA_INTERRUPT | SA_STATIC_ALLOC),
+			 (IRQF_DISABLED | SA_STATIC_ALLOC),
 			 "counter14",
 			 NULL)) {
 		install_linux_ticker();

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 22/44] UM: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (20 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 21/44] SPARC: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 23/44] V850: " Thomas Gleixner
                   ` (22 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, jdike

[-- Attachment #1: irqflags-um.patch --]
[-- Type: text/plain, Size: 7304 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/um/drivers/line.c          |    6 +++---
 arch/um/drivers/mconsole_kern.c |    2 +-
 arch/um/drivers/net_kern.c      |    2 +-
 arch/um/drivers/port_kern.c     |    4 ++--
 arch/um/drivers/ubd_kern.c      |    2 +-
 arch/um/drivers/xterm_kern.c    |    2 +-
 arch/um/kernel/irq.c            |    2 +-
 arch/um/kernel/sigio_kern.c     |    2 +-
 arch/um/kernel/time_kern.c      |    2 +-
 9 files changed, 12 insertions(+), 12 deletions(-)

Index: linux-2.6.git/arch/um/drivers/line.c
===================================================================
--- linux-2.6.git.orig/arch/um/drivers/line.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/drivers/line.c	2006-07-01 16:51:38.000000000 +0200
@@ -373,7 +373,7 @@ static irqreturn_t line_write_interrupt(
 	int err;
 
 	/* Interrupts are enabled here because we registered the interrupt with
-	 * SA_INTERRUPT (see line_setup_irq).*/
+	 * IRQF_DISABLED (see line_setup_irq).*/
 
 	spin_lock_irq(&line->lock);
 	err = flush_buffer(line);
@@ -406,7 +406,7 @@ static irqreturn_t line_write_interrupt(
 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 = SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM;
+	int err = 0, flags = IRQF_DISABLED | IRQF_SHARED | IRQF_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_
 	spin_unlock(&winch_handler_lock);
 
 	if(um_request_irq(WINCH_IRQ, fd, IRQ_READ, winch_interrupt,
-			  SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM,
+			  IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM,
 			  "winch", winch) < 0)
 		printk("register_winch_irq - failed to register IRQ\n");
 }
Index: linux-2.6.git/arch/um/drivers/mconsole_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/drivers/mconsole_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/drivers/mconsole_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -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,
-			     SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM,
+			     IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM,
 			     "mconsole", (void *)sock);
 	if (err){
 		printk("Failed to get IRQ for management console\n");
Index: linux-2.6.git/arch/um/drivers/net_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/drivers/net_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/drivers/net_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -128,7 +128,7 @@ static int uml_net_open(struct net_devic
 	}
 
 	err = um_request_irq(dev->irq, lp->fd, IRQ_READ, uml_net_interrupt,
-			     SA_INTERRUPT | SA_SHIRQ, dev->name, dev);
+			     IRQF_DISABLED | IRQF_SHARED, dev->name, dev);
 	if(err != 0){
 		printk(KERN_ERR "uml_net_open: failed to get irq(%d)\n", err);
 		err = -ENETUNREACH;
Index: linux-2.6.git/arch/um/drivers/port_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/drivers/port_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/drivers/port_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -105,7 +105,7 @@ static int port_accept(struct port_list 
 		  .port 	= port });
 
 	if(um_request_irq(TELNETD_IRQ, socket[0], IRQ_READ, pipe_interrupt, 
-			  SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM, 
+			  IRQF_DISABLED | IRQF_SHARED | IRQF_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, 
-			  SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM, "port",
+			  IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, "port",
 			  port)){
 		printk(KERN_ERR "Failed to get IRQ for port %d\n", port_num);
 		goto out_close;
Index: linux-2.6.git/arch/um/drivers/ubd_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/drivers/ubd_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/drivers/ubd_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -874,7 +874,7 @@ int ubd_driver_init(void){
 		return(0);
 	}
 	err = um_request_irq(UBD_IRQ, thread_fd, IRQ_READ, ubd_intr,
-			     SA_INTERRUPT, "ubd", ubd_dev);
+			     IRQF_DISABLED, "ubd", ubd_dev);
 	if(err != 0)
 		printk(KERN_ERR "um_request_irq failed - errno = %d\n", -err);
 	return 0;
Index: linux-2.6.git/arch/um/drivers/xterm_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/drivers/xterm_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/drivers/xterm_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -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, 
-			     SA_INTERRUPT | SA_SHIRQ | SA_SAMPLE_RANDOM, 
+			     IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, 
 			     "xterm", data);
 	if (err){
 		printk(KERN_ERR "xterm_fd : failed to get IRQ for xterm, "
Index: linux-2.6.git/arch/um/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/um/kernel/irq.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/kernel/irq.c	2006-07-01 16:51:38.000000000 +0200
@@ -474,7 +474,7 @@ int init_aio_irq(int irq, char *name, ir
 	}
 
 	err = um_request_irq(irq, fds[0], IRQ_READ, handler,
-			     SA_INTERRUPT | SA_SAMPLE_RANDOM, name,
+			     IRQF_DISABLED | IRQF_SAMPLE_RANDOM, name,
 			     (void *) (long) fds[0]);
 	if (err) {
 		printk("init_aio_irq - : um_request_irq failed, err = %d\n",
Index: linux-2.6.git/arch/um/kernel/sigio_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/kernel/sigio_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/kernel/sigio_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -31,7 +31,7 @@ int write_sigio_irq(int fd)
 	int err;
 
 	err = um_request_irq(SIGIO_WRITE_IRQ, fd, IRQ_READ, sigio_interrupt,
-			     SA_INTERRUPT | SA_SAMPLE_RANDOM, "write sigio",
+			     IRQF_DISABLED | IRQF_SAMPLE_RANDOM, "write sigio",
 			     NULL);
 	if(err){
 		printk("write_sigio_irq : um_request_irq failed, err = %d\n",
Index: linux-2.6.git/arch/um/kernel/time_kern.c
===================================================================
--- linux-2.6.git.orig/arch/um/kernel/time_kern.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/um/kernel/time_kern.c	2006-07-01 16:51:38.000000000 +0200
@@ -195,7 +195,7 @@ int __init timer_init(void)
 	int err;
 
 	user_time_init();
-	err = request_irq(TIMER_IRQ, um_timer, SA_INTERRUPT, "timer", NULL);
+	err = request_irq(TIMER_IRQ, um_timer, IRQF_DISABLED, "timer", NULL);
 	if(err != 0)
 		printk(KERN_ERR "timer_init : request_irq failed - "
 		       "errno = %d\n", -err);

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 23/44] V850: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (21 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 22/44] UM: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 24/44] x86_64: " Thomas Gleixner
                   ` (21 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	uclinux-v850

[-- Attachment #1: irqflags-v850.patch --]
[-- Type: text/plain, Size: 2905 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/v850/kernel/gbus_int.c   |    2 +-
 arch/v850/kernel/rte_me2_cb.c |    2 +-
 arch/v850/kernel/time.c       |    2 +-
 include/asm-v850/signal.h     |    2 --
 4 files changed, 3 insertions(+), 5 deletions(-)

Index: linux-2.6.git/include/asm-v850/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-v850/signal.h	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/include/asm-v850/signal.h	2006-07-01 16:51:38.000000000 +0200
@@ -77,7 +77,6 @@ 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,7 +96,6 @@ 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
 
Index: linux-2.6.git/arch/v850/kernel/gbus_int.c
===================================================================
--- linux-2.6.git.orig/arch/v850/kernel/gbus_int.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/v850/kernel/gbus_int.c	2006-07-01 16:51:38.000000000 +0200
@@ -154,7 +154,7 @@ static unsigned gbus_int_startup_irq (un
 		/* First enable the CPU interrupt.  */
 		int rval =
 			request_irq (IRQ_GINT(gint), gbus_int_handle_irq,
-				     SA_INTERRUPT,
+				     IRQF_DISABLED,
 				     "gbus_int_handler",
 				     &gint_num_active_irqs[gint]);
 		if (rval != 0)
Index: linux-2.6.git/arch/v850/kernel/rte_me2_cb.c
===================================================================
--- linux-2.6.git.orig/arch/v850/kernel/rte_me2_cb.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/v850/kernel/rte_me2_cb.c	2006-07-01 16:51:38.000000000 +0200
@@ -263,7 +263,7 @@ static unsigned cb_pic_startup_irq (unsi
 
 	if (cb_pic_active_irqs == 0) {
 		rval = request_irq (IRQ_CB_PIC, cb_pic_handle_irq,
-				    SA_INTERRUPT, "cb_pic_handler", 0);
+				    IRQF_DISABLED, "cb_pic_handler", 0);
 		if (rval != 0)
 			return rval;
 	}
Index: linux-2.6.git/arch/v850/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/v850/kernel/time.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/v850/kernel/time.c	2006-07-01 16:51:38.000000000 +0200
@@ -177,7 +177,7 @@ EXPORT_SYMBOL(do_settimeofday);
 static int timer_dev_id;
 static struct irqaction timer_irqaction = {
 	timer_interrupt,
-	SA_INTERRUPT,
+	IRQF_DISABLED,
 	CPU_MASK_NONE,
 	"timer",
 	&timer_dev_id,

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 24/44] x86_64: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (22 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 23/44] V850: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 25/44] XTENSA: " Thomas Gleixner
                   ` (20 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, ak

[-- Attachment #1: irqflags-x86_64.patch --]
[-- Type: text/plain, Size: 2598 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/x86_64/kernel/time.c   |    2 +-
 include/asm-x86_64/floppy.h |    8 ++++----
 include/asm-x86_64/signal.h |    2 --
 3 files changed, 5 insertions(+), 7 deletions(-)

Index: linux-2.6.git/include/asm-x86_64/floppy.h
===================================================================
--- linux-2.6.git.orig/include/asm-x86_64/floppy.h	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/include/asm-x86_64/floppy.h	2006-07-01 16:51:38.000000000 +0200
@@ -144,11 +144,11 @@ static int vdma_get_dma_residue(unsigned
 static int fd_request_irq(void)
 {
 	if(can_use_virtual_dma)
-		return request_irq(FLOPPY_IRQ, floppy_hardint,SA_INTERRUPT,
-						   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_hardint,
+				   IRQF_DISABLED, "floppy", NULL);
 	else
-		return request_irq(FLOPPY_IRQ, floppy_interrupt, SA_INTERRUPT,
-				   "floppy", NULL);
+		return request_irq(FLOPPY_IRQ, floppy_interrupt,
+				   IRQF_DISABLED, "floppy", NULL);
 }
 
 static unsigned long dma_mem_alloc(unsigned long size)
Index: linux-2.6.git/include/asm-x86_64/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-x86_64/signal.h	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/include/asm-x86_64/signal.h	2006-07-01 16:51:38.000000000 +0200
@@ -83,7 +83,6 @@ 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,7 +102,6 @@ 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
 
Index: linux-2.6.git/arch/x86_64/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/x86_64/kernel/time.c	2006-07-01 16:51:21.000000000 +0200
+++ linux-2.6.git/arch/x86_64/kernel/time.c	2006-07-01 16:51:38.000000000 +0200
@@ -889,7 +889,7 @@ int __init time_setup(char *str)
 }
 
 static struct irqaction irq0 = {
-	timer_interrupt, SA_INTERRUPT, CPU_MASK_NONE, "timer", NULL, NULL
+	timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL
 };
 
 void __init time_init(void)

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 25/44] XTENSA: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (23 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 24/44] x86_64: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 26/44] generic irq: " Thomas Gleixner
                   ` (19 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, joe

[-- Attachment #1: irqflags-xtensa.patch --]
[-- Type: text/plain, Size: 2283 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 arch/xtensa/kernel/time.c   |    2 +-
 include/asm-xtensa/signal.h |   15 ---------------
 2 files changed, 1 insertion(+), 16 deletions(-)

Index: linux-2.6.git/include/asm-xtensa/signal.h
===================================================================
--- linux-2.6.git.orig/include/asm-xtensa/signal.h	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/include/asm-xtensa/signal.h	2006-07-01 16:51:38.000000000 +0200
@@ -75,7 +75,6 @@ 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.
@@ -95,7 +94,6 @@ typedef struct {
 
 #define SA_NOMASK	SA_NODEFER
 #define SA_ONESHOT	SA_RESETHAND
-#define SA_INTERRUPT	0x20000000 /* dummy -- ignored */
 
 #define SA_RESTORER	0x04000000
 
@@ -109,19 +107,6 @@ 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 */
Index: linux-2.6.git/arch/xtensa/kernel/time.c
===================================================================
--- linux-2.6.git.orig/arch/xtensa/kernel/time.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/arch/xtensa/kernel/time.c	2006-07-01 16:51:38.000000000 +0200
@@ -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 =	SA_INTERRUPT,
+	.flags =	IRQF_DISABLED,
 	.name =		"timer",
 };
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 26/44] generic irq: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (24 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 25/44] XTENSA: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 27/44] drivers/block " Thomas Gleixner
                   ` (18 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-kernel.patch --]
[-- Type: text/plain, Size: 5687 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 kernel/irq/handle.c   |    4 ++--
 kernel/irq/manage.c   |   38 +++++++++++++++++++-------------------
 kernel/irq/spurious.c |    4 ++--
 3 files changed, 23 insertions(+), 23 deletions(-)

Index: linux-2.6.git/kernel/irq/handle.c
===================================================================
--- linux-2.6.git.orig/kernel/irq/handle.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/kernel/irq/handle.c	2006-07-01 16:51:39.000000000 +0200
@@ -113,7 +113,7 @@ irqreturn_t handle_IRQ_event(unsigned in
 	irqreturn_t ret, retval = IRQ_NONE;
 	unsigned int status = 0;
 
-	if (!(action->flags & SA_INTERRUPT))
+	if (!(action->flags & IRQF_DISABLED))
 		local_irq_enable();
 
 	do {
@@ -124,7 +124,7 @@ irqreturn_t handle_IRQ_event(unsigned in
 		action = action->next;
 	} while (action);
 
-	if (status & SA_SAMPLE_RANDOM)
+	if (status & IRQF_SAMPLE_RANDOM)
 		add_interrupt_randomness(irq);
 	local_irq_disable();
 
Index: linux-2.6.git/kernel/irq/manage.c
===================================================================
--- linux-2.6.git.orig/kernel/irq/manage.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/kernel/irq/manage.c	2006-07-01 16:51:39.000000000 +0200
@@ -167,7 +167,7 @@ int can_request_irq(unsigned int irq, un
 
 	action = irq_desc[irq].action;
 	if (action)
-		if (irqflags & action->flags & SA_SHIRQ)
+		if (irqflags & action->flags & IRQF_SHARED)
 			action = NULL;
 
 	return !action;
@@ -205,7 +205,7 @@ int setup_irq(unsigned int irq, struct i
 	 * so we have to be careful not to interfere with a
 	 * running system.
 	 */
-	if (new->flags & SA_SAMPLE_RANDOM) {
+	if (new->flags & IRQF_SAMPLE_RANDOM) {
 		/*
 		 * This function might sleep, we want to call it first,
 		 * outside of the atomic block.
@@ -227,16 +227,16 @@ int setup_irq(unsigned int irq, struct i
 		/*
 		 * Can't share interrupts unless both agree to and are
 		 * the same type (level, edge, polarity). So both flag
-		 * fields must have SA_SHIRQ set and the bits which
+		 * fields must have IRQF_SHARED set and the bits which
 		 * set the trigger type must match.
 		 */
-		if (!((old->flags & new->flags) & SA_SHIRQ) ||
-		    ((old->flags ^ new->flags) & SA_TRIGGER_MASK))
+		if (!((old->flags & new->flags) & IRQF_SHARED) ||
+		    ((old->flags ^ new->flags) & IRQF_TRIGGER_MASK))
 			goto mismatch;
 
-#if defined(CONFIG_IRQ_PER_CPU) && defined(SA_PERCPU_IRQ)
+#if defined(CONFIG_IRQ_PER_CPU)
 		/* All handlers must agree on per-cpuness */
-		if ((old->flags & IRQ_PER_CPU) != (new->flags & IRQ_PER_CPU))
+		if ((old->flags & IRQF_PERCPU) != (new->flags & IRQF_PERCPU))
 			goto mismatch;
 #endif
 
@@ -249,25 +249,25 @@ int setup_irq(unsigned int irq, struct i
 	}
 
 	*p = new;
-#if defined(CONFIG_IRQ_PER_CPU) && defined(SA_PERCPU_IRQ)
-	if (new->flags & SA_PERCPU_IRQ)
+#if defined(CONFIG_IRQ_PER_CPU)
+	if (new->flags & IRQF_PERCPU)
 		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 & SA_TRIGGER_MASK) {
+		if (new->flags & IRQF_TRIGGER_MASK) {
 			if (desc->chip && desc->chip->set_type)
 				desc->chip->set_type(irq,
-						new->flags & SA_TRIGGER_MASK);
+						new->flags & IRQF_TRIGGER_MASK);
 			else
 				/*
-				 * SA_TRIGGER_* but the PIC does not support
+				 * IRQF_TRIGGER_* but the PIC does not support
 				 * multiple flow-types?
 				 */
-				printk(KERN_WARNING "setup_irq(%d) SA_TRIGGER"
-				       "set. No set_type function available\n",
+				printk(KERN_WARNING "setup_irq(%d) IRQF_TRIGGER"
+				       " set. No set_type function available\n",
 				       irq);
 		} else
 			compat_irq_chip_set_default_handler(desc);
@@ -297,7 +297,7 @@ int setup_irq(unsigned int irq, struct i
 
 mismatch:
 	spin_unlock_irqrestore(&desc->lock, flags);
-	if (!(new->flags & SA_PROBEIRQ)) {
+	if (!(new->flags & IRQF_PROBE_SHARED)) {
 		printk(KERN_ERR "%s: irq handler mismatch\n", __FUNCTION__);
 		dump_stack();
 	}
@@ -396,9 +396,9 @@ EXPORT_SYMBOL(free_irq);
  *
  *	Flags:
  *
- *	SA_SHIRQ		Interrupt is shared
- *	SA_INTERRUPT		Disable local interrupts while processing
- *	SA_SAMPLE_RANDOM	The interrupt can be used for entropy
+ *	IRQF_SHARED		Interrupt is shared
+ *	IRQF_DISABLED	Disable local interrupts while processing
+ *	IRQF_SAMPLE_RANDOM	The interrupt can be used for entropy
  *
  */
 int request_irq(unsigned int irq,
@@ -414,7 +414,7 @@ int request_irq(unsigned int irq,
 	 * which interrupt is which (messes up the interrupt freeing
 	 * logic etc).
 	 */
-	if ((irqflags & SA_SHIRQ) && !dev_id)
+	if ((irqflags & IRQF_SHARED) && !dev_id)
 		return -EINVAL;
 	if (irq >= NR_IRQS)
 		return -EINVAL;
Index: linux-2.6.git/kernel/irq/spurious.c
===================================================================
--- linux-2.6.git.orig/kernel/irq/spurious.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/kernel/irq/spurious.c	2006-07-01 16:51:39.000000000 +0200
@@ -36,7 +36,7 @@ static int misrouted_irq(int irq, struct
 			 * Already running: If it is shared get the other
 			 * CPU to go looking for our mystery interrupt too
 			 */
-			if (desc->action && (desc->action->flags & SA_SHIRQ))
+			if (desc->action && (desc->action->flags & IRQF_SHARED))
 				desc->status |= IRQ_PENDING;
 			spin_unlock(&desc->lock);
 			continue;
@@ -48,7 +48,7 @@ static int misrouted_irq(int irq, struct
 
 		while (action) {
 			/* Only shared IRQ handlers are safe to call */
-			if (action->flags & SA_SHIRQ) {
+			if (action->flags & IRQF_SHARED) {
 				if (action->handler(i, action->dev_id, regs) ==
 						IRQ_HANDLED)
 					ok = 1;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 27/44] drivers/block Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (25 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 26/44] generic irq: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 28/44] drivers/char: " Thomas Gleixner
                   ` (17 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, axboe

[-- Attachment #1: irqflags-drivers-block.patch --]
[-- Type: text/plain, Size: 4470 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/block/DAC960.c   |    2 +-
 drivers/block/cciss.c    |    2 +-
 drivers/block/cpqarray.c |    2 +-
 drivers/block/ps2esdi.c  |    4 ++--
 drivers/block/sx8.c      |    2 +-
 drivers/block/umem.c     |    2 +-
 6 files changed, 7 insertions(+), 7 deletions(-)

Index: linux-2.6.git/drivers/block/cciss.c
===================================================================
--- linux-2.6.git.orig/drivers/block/cciss.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/block/cciss.c	2006-07-01 16:51:39.000000000 +0200
@@ -3159,7 +3159,7 @@ static int __devinit cciss_init_one(stru
 	/* 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,
-			SA_INTERRUPT | SA_SHIRQ, hba[i]->devname, hba[i])) {
+			IRQF_DISABLED | IRQF_SHARED, 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;
Index: linux-2.6.git/drivers/block/cpqarray.c
===================================================================
--- linux-2.6.git.orig/drivers/block/cpqarray.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/block/cpqarray.c	2006-07-01 16:51:39.000000000 +0200
@@ -408,7 +408,7 @@ static int __init cpqarray_register_ctlr
 	}
 	hba[i]->access.set_intr_mask(hba[i], 0);
 	if (request_irq(hba[i]->intr, do_ida_intr,
-		SA_INTERRUPT|SA_SHIRQ, hba[i]->devname, hba[i]))
+		IRQF_DISABLED|IRQF_SHARED, hba[i]->devname, hba[i]))
 	{
 		printk(KERN_ERR "cpqarray: Unable to get irq %d for %s\n",
 				hba[i]->intr, hba[i]->devname);
Index: linux-2.6.git/drivers/block/DAC960.c
===================================================================
--- linux-2.6.git.orig/drivers/block/DAC960.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/block/DAC960.c	2006-07-01 16:51:39.000000000 +0200
@@ -3014,7 +3014,7 @@ DAC960_DetectController(struct pci_dev *
      Acquire shared access to the IRQ Channel.
   */
   IRQ_Channel = PCI_Device->irq;
-  if (request_irq(IRQ_Channel, InterruptHandler, SA_SHIRQ,
+  if (request_irq(IRQ_Channel, InterruptHandler, IRQF_SHARED,
 		      Controller->FullModelName, Controller) < 0)
   {
 	DAC960_Error("Unable to acquire IRQ Channel %d for Controller at\n",
Index: linux-2.6.git/drivers/block/ps2esdi.c
===================================================================
--- linux-2.6.git.orig/drivers/block/ps2esdi.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/block/ps2esdi.c	2006-07-01 16:51:39.000000000 +0200
@@ -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,
-		  SA_INTERRUPT | SA_SHIRQ, "PS/2 ESDI", &ps2esdi_gendisk)
+		  IRQF_DISABLED | IRQF_SHARED, "PS/2 ESDI", &ps2esdi_gendisk)
 	    && request_irq(PS2ESDI_IRQ, ps2esdi_interrupt_handler,
-			   SA_SHIRQ, "PS/2 ESDI", &ps2esdi_gendisk)
+			   IRQF_SHARED, "PS/2 ESDI", &ps2esdi_gendisk)
 	    ) {
 		printk("%s: Unable to get IRQ %d\n", DEVICE_NAME, PS2ESDI_IRQ);
 		error = -EBUSY;
Index: linux-2.6.git/drivers/block/sx8.c
===================================================================
--- linux-2.6.git.orig/drivers/block/sx8.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/block/sx8.c	2006-07-01 16:51:39.000000000 +0200
@@ -1676,7 +1676,7 @@ static int carm_init_one (struct pci_dev
 
 	pci_set_master(pdev);
 
-	rc = request_irq(pdev->irq, carm_interrupt, SA_SHIRQ, DRV_NAME, host);
+	rc = request_irq(pdev->irq, carm_interrupt, IRQF_SHARED, DRV_NAME, host);
 	if (rc) {
 		printk(KERN_ERR DRV_NAME "(%s): irq alloc failure\n",
 		       pci_name(pdev));
Index: linux-2.6.git/drivers/block/umem.c
===================================================================
--- linux-2.6.git.orig/drivers/block/umem.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/block/umem.c	2006-07-01 16:51:39.000000000 +0200
@@ -1040,7 +1040,7 @@ static int __devinit mm_pci_probe(struct
 	card->win_size = data;
 
 
-	if (request_irq(dev->irq, mm_interrupt, SA_SHIRQ, "pci-umem", card)) {
+	if (request_irq(dev->irq, mm_interrupt, IRQF_SHARED, "pci-umem", card)) {
 		printk(KERN_ERR "MM%d: Unable to allocate IRQ\n", card->card_number);
 		ret = -ENODEV;
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 28/44] drivers/char: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (26 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 27/44] drivers/block " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 29/44] drivers/drm: " Thomas Gleixner
                   ` (16 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-drivers-char.patch --]
[-- Type: text/plain, Size: 35707 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/char/amiserial.c             |    2 -
 drivers/char/applicom.c              |    4 +-
 drivers/char/cyclades.c              |    8 ++---
 drivers/char/esp.c                   |    2 -
 drivers/char/ftape/lowlevel/fdc-io.c |    2 -
 drivers/char/hpet.c                  |    2 -
 drivers/char/hvc_console.c           |    2 -
 drivers/char/hvcs.c                  |    2 -
 drivers/char/hvsi.c                  |    2 -
 drivers/char/ip2/ip2main.c           |    6 ++--
 drivers/char/ipmi/ipmi_si_intf.c     |    4 +-
 drivers/char/isicom.c                |    4 +-
 drivers/char/ite_gpio.c              |    2 -
 drivers/char/mbcs.c                  |    6 ++--
 drivers/char/mmtimer.c               |    2 -
 drivers/char/mxser.c                 |    2 -
 drivers/char/nwbutton.c              |    2 -
 drivers/char/qtronix.c               |    2 -
 drivers/char/riscom8.c               |    2 -
 drivers/char/rtc.c                   |    6 ++--
 drivers/char/s3c2410-rtc.c           |    4 +-
 drivers/char/snsc.c                  |    2 -
 drivers/char/snsc_event.c            |    2 -
 drivers/char/sonypi.c                |    2 -
 drivers/char/specialix.c             |    4 +-
 drivers/char/stallion.c              |    4 +-
 drivers/char/sx.c                    |    4 +-
 drivers/char/synclink.c              |    2 -
 drivers/char/synclink_gt.c           |    2 -
 drivers/char/synclinkmp.c            |    2 -
 drivers/char/tlclk.c                 |    2 -
 drivers/char/tpm/tpm_tis.c           |    4 +-
 drivers/char/vme_scc.c               |   48 +++++++++++++++++------------------
 drivers/char/watchdog/eurotechwdt.c  |    2 -
 drivers/char/watchdog/mpcore_wdt.c   |    2 -
 drivers/char/watchdog/wdt.c          |    2 -
 drivers/char/watchdog/wdt_pci.c      |    2 -
 37 files changed, 77 insertions(+), 77 deletions(-)

Index: linux-2.6.git/drivers/char/amiserial.c
===================================================================
--- linux-2.6.git.orig/drivers/char/amiserial.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/amiserial.c	2006-07-01 16:51:39.000000000 +0200
@@ -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, SA_INTERRUPT, "serial RX", state);
+	request_irq(IRQ_AMIGA_RBF, ser_rx_int, IRQF_DISABLED, "serial RX", state);
 
 	/* turn off Rx and Tx interrupts */
 	custom.intena = IF_RBF | IF_TBE;
Index: linux-2.6.git/drivers/char/applicom.c
===================================================================
--- linux-2.6.git.orig/drivers/char/applicom.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/applicom.c	2006-07-01 16:51:39.000000000 +0200
@@ -229,7 +229,7 @@ static int __init applicom_init(void)
 			continue;
 		}
 
-		if (request_irq(dev->irq, &ac_interrupt, SA_SHIRQ, "Applicom PCI", &dummy)) {
+		if (request_irq(dev->irq, &ac_interrupt, IRQF_SHARED, "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, SA_SHIRQ, "Applicom ISA", &dummy)) {
+			if (request_irq(irq, &ac_interrupt, IRQF_SHARED, "Applicom ISA", &dummy)) {
 				printk(KERN_WARNING "Could not allocate IRQ %d for ISA Applicom device.\n", irq);
 				iounmap(RamIO);
 				apbs[boardno - 1].RamIO = NULL;
Index: linux-2.6.git/drivers/char/cyclades.c
===================================================================
--- linux-2.6.git.orig/drivers/char/cyclades.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/cyclades.c	2006-07-01 16:51:39.000000000 +0200
@@ -4612,7 +4612,7 @@ cy_detect_isa(void)
 
                 /* allocate IRQ */
                 if(request_irq(cy_isa_irq, cyy_interrupt,
-				   SA_INTERRUPT, "Cyclom-Y", &cy_card[j]))
+				   IRQF_DISABLED, "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,
-		        SA_SHIRQ, "Cyclom-Y", &cy_card[j]))
+		        IRQF_SHARED, "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,
-			SA_SHIRQ, "Cyclades-Z", &cy_card[j]))
+			IRQF_SHARED, "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,
-			SA_SHIRQ, "Cyclades-Z", &cy_card[j]))
+			IRQF_SHARED, "Cyclades-Z", &cy_card[j]))
 		    {
                         printk("Cyclom-Ze/PCI found at 0x%lx ",
 			    (ulong) cy_pci_phys2);
Index: linux-2.6.git/drivers/char/esp.c
===================================================================
--- linux-2.6.git.orig/drivers/char/esp.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/esp.c	2006-07-01 16:51:39.000000000 +0200
@@ -883,7 +883,7 @@ static int startup(struct esp_struct * i
 	 * Allocate the IRQ
 	 */
 
-	retval = request_irq(info->irq, rs_interrupt_single, SA_SHIRQ,
+	retval = request_irq(info->irq, rs_interrupt_single, IRQF_SHARED,
 			     "esp serial", info);
 
 	if (retval) {
Index: linux-2.6.git/drivers/char/hpet.c
===================================================================
--- linux-2.6.git.orig/drivers/char/hpet.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/hpet.c	2006-07-01 16:51:39.000000000 +0200
@@ -395,7 +395,7 @@ static int hpet_ioctl_ieon(struct hpet_d
 
 		sprintf(devp->hd_name, "hpet%d", (int)(devp - hpetp->hp_dev));
 		irq_flags = devp->hd_flags & HPET_SHARED_IRQ
-						? SA_SHIRQ : SA_INTERRUPT;
+						? IRQF_SHARED : IRQF_DISABLED;
 		if (request_irq(irq, hpet_interrupt, irq_flags,
 				devp->hd_name, (void *)devp)) {
 			printk(KERN_ERR "hpet: IRQ %d is not free\n", irq);
Index: linux-2.6.git/drivers/char/hvc_console.c
===================================================================
--- linux-2.6.git.orig/drivers/char/hvc_console.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/hvc_console.c	2006-07-01 16:51:39.000000000 +0200
@@ -346,7 +346,7 @@ static int hvc_open(struct tty_struct *t
 	spin_unlock_irqrestore(&hp->lock, flags);
 	/* check error, fallback to non-irq */
 	if (irq != NO_IRQ)
-		rc = request_irq(irq, hvc_handle_interrupt, SA_INTERRUPT, "hvc_console", hp);
+		rc = request_irq(irq, hvc_handle_interrupt, IRQF_DISABLED, "hvc_console", hp);
 
 	/*
 	 * If the request_irq() fails and we return an error.  The tty layer
Index: linux-2.6.git/drivers/char/hvcs.c
===================================================================
--- linux-2.6.git.orig/drivers/char/hvcs.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/hvcs.c	2006-07-01 16:51:39.000000000 +0200
@@ -899,7 +899,7 @@ static int hvcs_enable_device(struct hvc
 	 * the conn was registered and now.
 	 */
 	if (!(rc = request_irq(irq, &hvcs_handle_interrupt,
-				SA_INTERRUPT, "ibmhvcs", hvcsd))) {
+				IRQF_DISABLED, "ibmhvcs", hvcsd))) {
 		/*
 		 * It is possible the vty-server was removed after the irq was
 		 * requested but before we have time to enable interrupts.
Index: linux-2.6.git/drivers/char/hvsi.c
===================================================================
--- linux-2.6.git.orig/drivers/char/hvsi.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/hvsi.c	2006-07-01 16:51:39.000000000 +0200
@@ -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, SA_INTERRUPT, "hvsi", hp);
+		ret = request_irq(hp->virq, hvsi_interrupt, IRQF_DISABLED, "hvsi", hp);
 		if (ret)
 			printk(KERN_ERR "HVSI: couldn't reserve irq 0x%x (error %i)\n",
 				hp->virq, ret);
Index: linux-2.6.git/drivers/char/isicom.c
===================================================================
--- linux-2.6.git.orig/drivers/char/isicom.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/isicom.c	2006-07-01 16:51:39.000000000 +0200
@@ -1614,14 +1614,14 @@ static int __devinit isicom_register_isr
 	const unsigned int index)
 {
 	struct isi_board *board = pci_get_drvdata(pdev);
-	unsigned long irqflags = SA_INTERRUPT;
+	unsigned long irqflags = IRQF_DISABLED;
 	int retval = -EINVAL;
 
 	if (!board->base)
 		goto end;
 
 	if (board->isa == NO)
-		irqflags |= SA_SHIRQ;
+		irqflags |= IRQF_SHARED;
 
 	retval = request_irq(board->irq, isicom_interrupt, irqflags,
 		ISICOM_NAME, board);
Index: linux-2.6.git/drivers/char/ite_gpio.c
===================================================================
--- linux-2.6.git.orig/drivers/char/ite_gpio.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/ite_gpio.c	2006-07-01 16:51:39.000000000 +0200
@@ -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, SA_SHIRQ, "gpio", 0) < 0) {
+	if (request_irq(ite_gpio_irq, ite_gpio_irq_handler, IRQF_SHARED, "gpio", 0) < 0) {
 		misc_deregister(&ite_gpio_miscdev);
 		release_region(ite_gpio_base, 0x1c);
 		return 0;
Index: linux-2.6.git/drivers/char/mbcs.c
===================================================================
--- linux-2.6.git.orig/drivers/char/mbcs.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/mbcs.c	2006-07-01 16:51:39.000000000 +0200
@@ -592,7 +592,7 @@ static int mbcs_intr_alloc(struct cx_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, SA_SHIRQ,
+			(void *)mbcs_completion_intr_handler, IRQF_SHARED,
 			"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
 	putdma->intrHostDest = sn_irq->irq_xtalkaddr;
 	putdma->intrVector = sn_irq->irq_irq;
 	if (request_irq(sn_irq->irq_irq,
-			(void *)mbcs_completion_intr_handler, SA_SHIRQ,
+			(void *)mbcs_completion_intr_handler, IRQF_SHARED,
 			"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
 	algo->intrHostDest = sn_irq->irq_xtalkaddr;
 	algo->intrVector = sn_irq->irq_irq;
 	if (request_irq(sn_irq->irq_irq,
-			(void *)mbcs_completion_intr_handler, SA_SHIRQ,
+			(void *)mbcs_completion_intr_handler, IRQF_SHARED,
 			"MBCS algo intr", (void *)soft)) {
 		tiocx_irq_free(soft->algo_sn_irq);
 		free_irq(soft->put_sn_irq->irq_irq, soft);
Index: linux-2.6.git/drivers/char/mxser.c
===================================================================
--- linux-2.6.git.orig/drivers/char/mxser.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/mxser.c	2006-07-01 16:51:39.000000000 +0200
@@ -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) ? SA_SHIRQ : SA_INTERRUPT)
+#define IRQ_T(info) ((info->flags & ASYNC_SHARE_IRQ) ? IRQF_SHARED : IRQF_DISABLED)
 
 #define C168_ASIC_ID    1
 #define C104_ASIC_ID    2
Index: linux-2.6.git/drivers/char/nwbutton.c
===================================================================
--- linux-2.6.git.orig/drivers/char/nwbutton.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/nwbutton.c	2006-07-01 16:51:39.000000000 +0200
@@ -223,7 +223,7 @@ static int __init nwbutton_init(void)
 		return -EBUSY;
 	}
 
-	if (request_irq (IRQ_NETWINDER_BUTTON, button_handler, SA_INTERRUPT,
+	if (request_irq (IRQ_NETWINDER_BUTTON, button_handler, IRQF_DISABLED,
 			"nwbutton", NULL)) {
 		printk (KERN_WARNING "nwbutton: IRQ %d is not free.\n",
 				IRQ_NETWINDER_BUTTON);
Index: linux-2.6.git/drivers/char/qtronix.c
===================================================================
--- linux-2.6.git.orig/drivers/char/qtronix.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/qtronix.c	2006-07-01 16:51:39.000000000 +0200
@@ -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 )(SA_INTERRUPT|SA_SHIRQ), 
+			(unsigned long )(IRQF_DISABLED|IRQF_SHARED), 
 			(const char *)"Qtronix IR Keyboard", (void *)cir);
 
 	if (retval) {
Index: linux-2.6.git/drivers/char/riscom8.c
===================================================================
--- linux-2.6.git.orig/drivers/char/riscom8.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/riscom8.c	2006-07-01 16:51:39.000000000 +0200
@@ -625,7 +625,7 @@ static inline int rc_setup_board(struct 
 	if (bp->flags & RC_BOARD_ACTIVE) 
 		return 0;
 	
-	error = request_irq(bp->irq, rc_interrupt, SA_INTERRUPT,
+	error = request_irq(bp->irq, rc_interrupt, IRQF_DISABLED,
 			    "RISCom/8", NULL);
 	if (error) 
 		return error;
Index: linux-2.6.git/drivers/char/rtc.c
===================================================================
--- linux-2.6.git.orig/drivers/char/rtc.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/rtc.c	2006-07-01 16:51:39.000000000 +0200
@@ -220,7 +220,7 @@ static inline unsigned char rtc_is_updat
 
 #ifdef RTC_IRQ
 /*
- *	A very tiny interrupt handler. It runs with SA_INTERRUPT set,
+ *	A very tiny interrupt handler. It runs with IRQF_DISABLED 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 @@ found:
 	 * 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, SA_SHIRQ, "rtc", (void *)&rtc_port)) {
+	if (request_irq(rtc_irq, rtc_interrupt, IRQF_SHARED, "rtc", (void *)&rtc_port)) {
 		printk(KERN_ERR "rtc: cannot register IRQ %d\n", rtc_irq);
 		return -EIO;
 	}
@@ -976,7 +976,7 @@ no_irq:
 		rtc_int_handler_ptr = rtc_interrupt;
 	}
 
-	if(request_irq(RTC_IRQ, rtc_int_handler_ptr, SA_INTERRUPT, "rtc", NULL)) {
+	if(request_irq(RTC_IRQ, rtc_int_handler_ptr, IRQF_DISABLED, "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);
Index: linux-2.6.git/drivers/char/s3c2410-rtc.c
===================================================================
--- linux-2.6.git.orig/drivers/char/s3c2410-rtc.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/s3c2410-rtc.c	2006-07-01 16:51:39.000000000 +0200
@@ -341,13 +341,13 @@ static int s3c2410_rtc_open(void)
 	int ret;
 
 	ret = request_irq(s3c2410_rtc_alarmno, s3c2410_rtc_alarmirq,
-			  SA_INTERRUPT,  "s3c2410-rtc alarm", NULL);
+			  IRQF_DISABLED,  "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,
-			  SA_INTERRUPT,  "s3c2410-rtc tick", NULL);
+			  IRQF_DISABLED,  "s3c2410-rtc tick", NULL);
 
 	if (ret) {
 		printk(KERN_ERR "IRQ%d already in use\n", s3c2410_rtc_tickno);
Index: linux-2.6.git/drivers/char/snsc.c
===================================================================
--- linux-2.6.git.orig/drivers/char/snsc.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/snsc.c	2006-07-01 16:51:39.000000000 +0200
@@ -105,7 +105,7 @@ scdrv_open(struct inode *inode, struct f
 
 	/* hook this subchannel up to the system controller interrupt */
 	rv = request_irq(SGI_UART_VECTOR, scdrv_interrupt,
-			 SA_SHIRQ | SA_INTERRUPT,
+			 IRQF_SHARED | IRQF_DISABLED,
 			 SYSCTL_BASENAME, sd);
 	if (rv) {
 		ia64_sn_irtr_close(sd->sd_nasid, sd->sd_subch);
Index: linux-2.6.git/drivers/char/snsc_event.c
===================================================================
--- linux-2.6.git.orig/drivers/char/snsc_event.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/snsc_event.c	2006-07-01 16:51:39.000000000 +0200
@@ -310,7 +310,7 @@ scdrv_event_init(struct sysctl_data_s *s
 
 	/* hook event subchannel up to the system controller interrupt */
 	rv = request_irq(SGI_UART_VECTOR, scdrv_event_interrupt,
-			 SA_SHIRQ | SA_INTERRUPT,
+			 IRQF_SHARED | IRQF_DISABLED,
 			 "system controller events", event_sd);
 	if (rv) {
 		printk(KERN_WARNING "%s: irq request failed (%d)\n",
Index: linux-2.6.git/drivers/char/sonypi.c
===================================================================
--- linux-2.6.git.orig/drivers/char/sonypi.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/sonypi.c	2006-07-01 16:51:39.000000000 +0200
@@ -1282,7 +1282,7 @@ static int __devinit sonypi_setup_irq(st
 	while (irq_list->irq) {
 
 		if (!request_irq(irq_list->irq, sonypi_irq,
-				 SA_SHIRQ, "sonypi", sonypi_irq)) {
+				 IRQF_SHARED, "sonypi", sonypi_irq)) {
 			dev->irq = irq_list->irq;
 			dev->bits = irq_list->bits;
 			return 0;
Index: linux-2.6.git/drivers/char/specialix.c
===================================================================
--- linux-2.6.git.orig/drivers/char/specialix.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/specialix.c	2006-07-01 16:51:39.000000000 +0200
@@ -1015,9 +1015,9 @@ static inline int sx_setup_board(struct 
 		return 0;
 
 	if (bp->flags & SX_BOARD_IS_PCI)
-		error = request_irq(bp->irq, sx_interrupt, SA_INTERRUPT | SA_SHIRQ, "specialix IO8+", bp);
+		error = request_irq(bp->irq, sx_interrupt, IRQF_DISABLED | IRQF_SHARED, "specialix IO8+", bp);
 	else
-		error = request_irq(bp->irq, sx_interrupt, SA_INTERRUPT, "specialix IO8+", bp);
+		error = request_irq(bp->irq, sx_interrupt, IRQF_DISABLED, "specialix IO8+", bp);
 
 	if (error)
 		return error;
Index: linux-2.6.git/drivers/char/stallion.c
===================================================================
--- linux-2.6.git.orig/drivers/char/stallion.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/stallion.c	2006-07-01 16:51:39.000000000 +0200
@@ -2302,7 +2302,7 @@ static inline int stl_initeio(stlbrd_t *
 	brdp->nrpanels = 1;
 	brdp->state |= BRD_FOUND;
 	brdp->hwid = status;
-	if (request_irq(brdp->irq, stl_intr, SA_SHIRQ, name, brdp) != 0) {
+	if (request_irq(brdp->irq, stl_intr, IRQF_SHARED, 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 *
 		outb((brdp->ioctrlval | ECH_BRDDISABLE), brdp->ioctrl);
 
 	brdp->state |= BRD_FOUND;
-	if (request_irq(brdp->irq, stl_intr, SA_SHIRQ, name, brdp) != 0) {
+	if (request_irq(brdp->irq, stl_intr, IRQF_SHARED, name, brdp) != 0) {
 		printk("STALLION: failed to register interrupt "
 		    "routine for %s irq=%d\n", name, brdp->irq);
 		i = -ENODEV;
Index: linux-2.6.git/drivers/char/sx.c
===================================================================
--- linux-2.6.git.orig/drivers/char/sx.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/sx.c	2006-07-01 16:51:39.000000000 +0200
@@ -1993,7 +1993,7 @@ static int sx_init_board (struct sx_boar
 		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, SA_SHIRQ | SA_INTERRUPT, "sx", board)) {
+				if(request_irq(board->irq, sx_interrupt, IRQF_SHARED | IRQF_DISABLED, "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_boar
 			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, SA_SHIRQ | SA_INTERRUPT, "sx", board))
+					if(! request_irq(irqnr, sx_interrupt, IRQF_SHARED | IRQF_DISABLED, "sx", board))
 						break;
 			if(! irqnr)
 				printk(KERN_ERR "sx: Cannot allocate IRQ.\n");
Index: linux-2.6.git/drivers/char/synclink.c
===================================================================
--- linux-2.6.git.orig/drivers/char/synclink.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/synclink.c	2006-07-01 16:51:39.000000000 +0200
@@ -8150,7 +8150,7 @@ static int __devinit synclink_init_one (
 				
 	info->bus_type = MGSL_BUS_TYPE_PCI;
 	info->io_addr_size = 8;
-	info->irq_flags = SA_SHIRQ;
+	info->irq_flags = IRQF_SHARED;
 
 	if (dev->device == 0x0210) {
 		/* Version 1 PCI9030 based universal PCI adapter */
Index: linux-2.6.git/drivers/char/synclink_gt.c
===================================================================
--- linux-2.6.git.orig/drivers/char/synclink_gt.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/synclink_gt.c	2006-07-01 16:51:39.000000000 +0200
@@ -3343,7 +3343,7 @@ static struct slgt_info *alloc_dev(int a
 		info->phys_reg_addr = pci_resource_start(pdev,0);
 
 		info->bus_type = MGSL_BUS_TYPE_PCI;
-		info->irq_flags = SA_SHIRQ;
+		info->irq_flags = IRQF_SHARED;
 
 		info->init_error = -1; /* assume error, set to 0 on successful init */
 	}
Index: linux-2.6.git/drivers/char/synclinkmp.c
===================================================================
--- linux-2.6.git.orig/drivers/char/synclinkmp.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/synclinkmp.c	2006-07-01 16:51:39.000000000 +0200
@@ -3835,7 +3835,7 @@ static SLMP_INFO *alloc_dev(int adapter_
 		info->phys_statctrl_base &= ~(PAGE_SIZE-1);
 
 		info->bus_type = MGSL_BUS_TYPE_PCI;
-		info->irq_flags = SA_SHIRQ;
+		info->irq_flags = IRQF_SHARED;
 
 		init_timer(&info->tx_timer);
 		info->tx_timer.data = (unsigned long)info;
Index: linux-2.6.git/drivers/char/tlclk.c
===================================================================
--- linux-2.6.git.orig/drivers/char/tlclk.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/tlclk.c	2006-07-01 16:51:39.000000000 +0200
@@ -208,7 +208,7 @@ static int tlclk_open(struct inode *inod
 	/* 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,
-			     SA_INTERRUPT, "telco_clock", tlclk_interrupt);
+			     IRQF_DISABLED, "telco_clock", tlclk_interrupt);
 	if (result == -EBUSY) {
 		printk(KERN_ERR "tlclk: Interrupt can't be reserved.\n");
 		return -EBUSY;
Index: linux-2.6.git/drivers/char/vme_scc.c
===================================================================
--- linux-2.6.git.orig/drivers/char/vme_scc.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/vme_scc.c	2006-07-01 16:51:39.000000000 +0200
@@ -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, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCA_TX, scc_tx_int, IRQF_DISABLED,
 		            "SCC-A TX", port);
-	request_irq(MVME147_IRQ_SCCA_STAT, scc_stat_int, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCA_STAT, scc_stat_int, IRQF_DISABLED,
 		            "SCC-A status", port);
-	request_irq(MVME147_IRQ_SCCA_RX, scc_rx_int, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCA_RX, scc_rx_int, IRQF_DISABLED,
 		            "SCC-A RX", port);
-	request_irq(MVME147_IRQ_SCCA_SPCOND, scc_spcond_int, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCA_SPCOND, scc_spcond_int, IRQF_DISABLED,
 		            "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, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCB_TX, scc_tx_int, IRQF_DISABLED,
 		            "SCC-B TX", port);
-	request_irq(MVME147_IRQ_SCCB_STAT, scc_stat_int, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCB_STAT, scc_stat_int, IRQF_DISABLED,
 		            "SCC-B status", port);
-	request_irq(MVME147_IRQ_SCCB_RX, scc_rx_int, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCB_RX, scc_rx_int, IRQF_DISABLED,
 		            "SCC-B RX", port);
-	request_irq(MVME147_IRQ_SCCB_SPCOND, scc_spcond_int, SA_INTERRUPT,
+	request_irq(MVME147_IRQ_SCCB_SPCOND, scc_spcond_int, IRQF_DISABLED,
 		            "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, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCA_TX, scc_tx_int, IRQF_DISABLED,
 		            "SCC-A TX", port);
-	request_irq(MVME162_IRQ_SCCA_STAT, scc_stat_int, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCA_STAT, scc_stat_int, IRQF_DISABLED,
 		            "SCC-A status", port);
-	request_irq(MVME162_IRQ_SCCA_RX, scc_rx_int, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCA_RX, scc_rx_int, IRQF_DISABLED,
 		            "SCC-A RX", port);
-	request_irq(MVME162_IRQ_SCCA_SPCOND, scc_spcond_int, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCA_SPCOND, scc_spcond_int, IRQF_DISABLED,
 		            "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, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCB_TX, scc_tx_int, IRQF_DISABLED,
 		            "SCC-B TX", port);
-	request_irq(MVME162_IRQ_SCCB_STAT, scc_stat_int, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCB_STAT, scc_stat_int, IRQF_DISABLED,
 		            "SCC-B status", port);
-	request_irq(MVME162_IRQ_SCCB_RX, scc_rx_int, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCB_RX, scc_rx_int, IRQF_DISABLED,
 		            "SCC-B RX", port);
-	request_irq(MVME162_IRQ_SCCB_SPCOND, scc_spcond_int, SA_INTERRUPT,
+	request_irq(MVME162_IRQ_SCCB_SPCOND, scc_spcond_int, IRQF_DISABLED,
 		            "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, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCA_TX, scc_tx_int, IRQF_DISABLED,
 		            "SCC-A TX", port);
-	request_irq(BVME_IRQ_SCCA_STAT, scc_stat_int, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCA_STAT, scc_stat_int, IRQF_DISABLED,
 		            "SCC-A status", port);
-	request_irq(BVME_IRQ_SCCA_RX, scc_rx_int, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCA_RX, scc_rx_int, IRQF_DISABLED,
 		            "SCC-A RX", port);
-	request_irq(BVME_IRQ_SCCA_SPCOND, scc_spcond_int, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCA_SPCOND, scc_spcond_int, IRQF_DISABLED,
 		            "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, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCB_TX, scc_tx_int, IRQF_DISABLED,
 		            "SCC-B TX", port);
-	request_irq(BVME_IRQ_SCCB_STAT, scc_stat_int, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCB_STAT, scc_stat_int, IRQF_DISABLED,
 		            "SCC-B status", port);
-	request_irq(BVME_IRQ_SCCB_RX, scc_rx_int, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCB_RX, scc_rx_int, IRQF_DISABLED,
 		            "SCC-B RX", port);
-	request_irq(BVME_IRQ_SCCB_SPCOND, scc_spcond_int, SA_INTERRUPT,
+	request_irq(BVME_IRQ_SCCB_SPCOND, scc_spcond_int, IRQF_DISABLED,
 		            "SCC-B special cond", port);
 
 	{
Index: linux-2.6.git/drivers/char/ftape/lowlevel/fdc-io.c
===================================================================
--- linux-2.6.git.orig/drivers/char/ftape/lowlevel/fdc-io.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/ftape/lowlevel/fdc-io.c	2006-07-01 16:51:39.000000000 +0200
@@ -1268,7 +1268,7 @@ static int fdc_grab_irq_and_dma(void)
 		/*  Get fast interrupt handler.
 		 */
 		if (request_irq(fdc.irq, ftape_interrupt,
-				SA_INTERRUPT, "ft", ftape_id)) {
+				IRQF_DISABLED, "ft", ftape_id)) {
 			TRACE_ABORT(-EIO, ft_t_bug,
 				    "Unable to grab IRQ%d for ftape driver",
 				    fdc.irq);
Index: linux-2.6.git/drivers/char/ip2/ip2main.c
===================================================================
--- linux-2.6.git.orig/drivers/char/ip2/ip2main.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/ip2/ip2main.c	2006-07-01 16:51:39.000000000 +0200
@@ -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.                                          */
 /******************************************************************************/
-/* SA_INTERRUPT- if set blocks all interrupts else only this line */
-/* SA_SHIRQ    - for shared irq PCI or maybe EISA only */
+/* IRQF_DISABLED - if set blocks all interrupts else only this line */
+/* IRQF_SHARED    - 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 @@ retry:
 				if (have_requested_irq(ip2config.irq[i]))
 					continue;
 				rc = request_irq( ip2config.irq[i], ip2_interrupt,
-					IP2_SA_FLAGS | (ip2config.type[i] == PCI ? SA_SHIRQ : 0),
+					IP2_SA_FLAGS | (ip2config.type[i] == PCI ? IRQF_SHARED : 0),
 					pcName, (void *)&pcName);
 				if (rc) {
 					printk(KERN_ERR "IP2: an request_irq failed: error %d\n",rc);
Index: linux-2.6.git/drivers/char/ipmi/ipmi_si_intf.c
===================================================================
--- linux-2.6.git.orig/drivers/char/ipmi/ipmi_si_intf.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/ipmi/ipmi_si_intf.c	2006-07-01 16:51:39.000000000 +0200
@@ -1041,7 +1041,7 @@ static int std_irq_setup(struct smi_info
 	if (info->si_type == SI_BT) {
 		rv = request_irq(info->irq,
 				 si_bt_irq_handler,
-				 SA_INTERRUPT,
+				 IRQF_DISABLED,
 				 DEVICE_NAME,
 				 info);
 		if (!rv)
@@ -1051,7 +1051,7 @@ static int std_irq_setup(struct smi_info
 	} else
 		rv = request_irq(info->irq,
 				 si_irq_handler,
-				 SA_INTERRUPT,
+				 IRQF_DISABLED,
 				 DEVICE_NAME,
 				 info);
 	if (rv) {
Index: linux-2.6.git/drivers/char/tpm/tpm_tis.c
===================================================================
--- linux-2.6.git.orig/drivers/char/tpm/tpm_tis.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/tpm/tpm_tis.c	2006-07-01 16:51:39.000000000 +0200
@@ -522,7 +522,7 @@ static int __devinit tpm_tis_pnp_init(st
 			iowrite8(i, chip->vendor.iobase +
 				    TPM_INT_VECTOR(chip->vendor.locality));
 			if (request_irq
-			    (i, tis_int_probe, SA_SHIRQ,
+			    (i, tis_int_probe, IRQF_SHARED,
 			     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(st
 			 chip->vendor.iobase +
 			 TPM_INT_VECTOR(chip->vendor.locality));
 		if (request_irq
-		    (chip->vendor.irq, tis_int_handler, SA_SHIRQ,
+		    (chip->vendor.irq, tis_int_handler, IRQF_SHARED,
 		     chip->vendor.miscdev.name, chip) != 0) {
 			dev_info(chip->dev,
 				 "Unable to request irq: %d for use\n",
Index: linux-2.6.git/drivers/char/watchdog/eurotechwdt.c
===================================================================
--- linux-2.6.git.orig/drivers/char/watchdog/eurotechwdt.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/watchdog/eurotechwdt.c	2006-07-01 16:51:39.000000000 +0200
@@ -420,7 +420,7 @@ static int __init eurwdt_init(void)
 		goto out;
 	}
 
-	ret = request_irq(irq, eurwdt_interrupt, SA_INTERRUPT, "eurwdt", NULL);
+	ret = request_irq(irq, eurwdt_interrupt, IRQF_DISABLED, "eurwdt", NULL);
 	if(ret) {
 		printk(KERN_ERR "eurwdt: IRQ %d is not free.\n", irq);
 		goto outmisc;
Index: linux-2.6.git/drivers/char/watchdog/mpcore_wdt.c
===================================================================
--- linux-2.6.git.orig/drivers/char/watchdog/mpcore_wdt.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/watchdog/mpcore_wdt.c	2006-07-01 16:51:39.000000000 +0200
@@ -355,7 +355,7 @@ static int __devinit mpcore_wdt_probe(st
 		goto err_misc;
 	}
 
-	ret = request_irq(wdt->irq, mpcore_wdt_fire, SA_INTERRUPT, "mpcore_wdt", wdt);
+	ret = request_irq(wdt->irq, mpcore_wdt_fire, IRQF_DISABLED, "mpcore_wdt", wdt);
 	if (ret) {
 		dev_printk(KERN_ERR, _dev, "cannot register IRQ%d for watchdog\n", wdt->irq);
 		goto err_irq;
Index: linux-2.6.git/drivers/char/watchdog/wdt.c
===================================================================
--- linux-2.6.git.orig/drivers/char/watchdog/wdt.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/watchdog/wdt.c	2006-07-01 16:51:39.000000000 +0200
@@ -580,7 +580,7 @@ static int __init wdt_init(void)
 		goto out;
 	}
 
-	ret = request_irq(irq, wdt_interrupt, SA_INTERRUPT, "wdt501p", NULL);
+	ret = request_irq(irq, wdt_interrupt, IRQF_DISABLED, "wdt501p", NULL);
 	if(ret) {
 		printk(KERN_ERR "wdt: IRQ %d is not free.\n", irq);
 		goto outreg;
Index: linux-2.6.git/drivers/char/watchdog/wdt_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/char/watchdog/wdt_pci.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/watchdog/wdt_pci.c	2006-07-01 16:51:39.000000000 +0200
@@ -617,7 +617,7 @@ static int __devinit wdtpci_init_one (st
 		goto out_pci;
 	}
 
-	if (request_irq (irq, wdtpci_interrupt, SA_INTERRUPT | SA_SHIRQ,
+	if (request_irq (irq, wdtpci_interrupt, IRQF_DISABLED | IRQF_SHARED,
 			 "wdt_pci", &wdtpci_miscdev)) {
 		printk (KERN_ERR PFX "IRQ %d is not free\n", irq);
 		goto out_reg;
Index: linux-2.6.git/drivers/char/mmtimer.c
===================================================================
--- linux-2.6.git.orig/drivers/char/mmtimer.c	2006-07-01 16:51:20.000000000 +0200
+++ linux-2.6.git/drivers/char/mmtimer.c	2006-07-01 16:51:39.000000000 +0200
@@ -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, SA_PERCPU_IRQ, MMTIMER_NAME, NULL)) {
+	if (request_irq(SGI_MMTIMER_VECTOR, mmtimer_interrupt, IRQF_PERCPU, MMTIMER_NAME, NULL)) {
 		printk(KERN_WARNING "%s: unable to allocate interrupt.",
 			MMTIMER_NAME);
 		return -1;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 29/44] drivers/drm: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (27 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 28/44] drivers/char: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 30/44] ide: " Thomas Gleixner
                   ` (15 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, arlied

[-- Attachment #1: irqflags-drivers-drm.patch --]
[-- Type: text/plain, Size: 713 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/char/drm/drm_irq.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.git/drivers/char/drm/drm_irq.c
===================================================================
--- linux-2.6.git.orig/drivers/char/drm/drm_irq.c	2006-07-01 16:51:19.000000000 +0200
+++ linux-2.6.git/drivers/char/drm/drm_irq.c	2006-07-01 16:51:40.000000000 +0200
@@ -130,7 +130,7 @@ static int drm_irq_install(drm_device_t 
 
 	/* Install handler */
 	if (drm_core_check_feature(dev, DRIVER_IRQ_SHARED))
-		sh_flags = SA_SHIRQ;
+		sh_flags = IRQF_SHARED;
 
 	ret = request_irq(dev->irq, dev->driver->irq_handler,
 			  sh_flags, dev->devname, dev);

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 30/44] ide: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (28 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 29/44] drivers/drm: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 31/44] firewire: " Thomas Gleixner
                   ` (14 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	B.Zolnierkiewicz

[-- Attachment #1: irqflags-drivers-ide.patch --]
[-- Type: text/plain, Size: 2565 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/ide/ide-probe.c |   10 +++++-----
 drivers/ide/legacy/hd.c |    4 ++--
 2 files changed, 7 insertions(+), 7 deletions(-)

Index: linux-2.6.git/drivers/ide/ide-probe.c
===================================================================
--- linux-2.6.git.orig/drivers/ide/ide-probe.c	2006-07-01 16:51:19.000000000 +0200
+++ linux-2.6.git/drivers/ide/ide-probe.c	2006-07-01 16:51:40.000000000 +0200
@@ -1004,7 +1004,7 @@ static int ide_init_queue(ide_drive_t *d
  * and irq serialization situations.  This is somewhat complex because
  * it handles static as well as dynamic (PCMCIA) IDE interfaces.
  *
- * The SA_INTERRUPT in sa_flags means ide_intr() is always entered with
+ * The IRQF_DISABLED 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 = SA_INTERRUPT;
+		int sa = IRQF_DISABLED;
 #if defined(__mc68000__) || defined(CONFIG_APUS)
-		sa = SA_SHIRQ;
+		sa = IRQF_SHARED;
 #endif /* __mc68000__ || CONFIG_APUS */
 
 		if (IDE_CHIPSET_IS_PCI(hwif->chipset)) {
-			sa = SA_SHIRQ;
+			sa = IRQF_SHARED;
 #ifndef CONFIG_IDEPCI_SHARE_IRQ
-			sa |= SA_INTERRUPT;
+			sa |= IRQF_DISABLED;
 #endif /* CONFIG_IDEPCI_SHARE_IRQ */
 		}
 
Index: linux-2.6.git/drivers/ide/legacy/hd.c
===================================================================
--- linux-2.6.git.orig/drivers/ide/legacy/hd.c	2006-07-01 16:51:19.000000000 +0200
+++ linux-2.6.git/drivers/ide/legacy/hd.c	2006-07-01 16:51:40.000000000 +0200
@@ -691,7 +691,7 @@ static struct block_device_operations hd
 };
 
 /*
- * This is the hard disk IRQ description. The SA_INTERRUPT in sa_flags
+ * This is the hard disk IRQ description. The IRQF_DISABLED 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, SA_INTERRUPT, "hd", NULL)) {
+	if (request_irq(HD_IRQ, hd_interrupt, IRQF_DISABLED, "hd", NULL)) {
 		printk("hd: unable to get IRQ%d for the hard disk driver\n",
 			HD_IRQ);
 		goto out1;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 31/44] firewire: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (29 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 30/44] ide: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 32/44] isdn: " Thomas Gleixner
                   ` (13 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	bcollins

[-- Attachment #1: irqflags-drivers-firewire.patch --]
[-- Type: text/plain, Size: 1802 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/ieee1394/ohci1394.c |    4 ++--
 drivers/ieee1394/pcilynx.c  |    2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

Index: linux-2.6.git/drivers/ieee1394/ohci1394.c
===================================================================
--- linux-2.6.git.orig/drivers/ieee1394/ohci1394.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/ieee1394/ohci1394.c	2006-07-01 16:51:41.000000000 +0200
@@ -3392,12 +3392,12 @@ static int __devinit ohci1394_pci_probe(
 	spin_lock_init(&ohci->event_lock);
 
 	/*
-	 * interrupts are disabled, all right, but... due to SA_SHIRQ we
+	 * interrupts are disabled, all right, but... due to IRQF_SHARED 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, SA_SHIRQ,
+	if (request_irq(dev->irq, ohci_irq_handler, IRQF_SHARED,
 			 OHCI1394_DRIVER_NAME, ohci))
 		FAIL(-ENOMEM, "Failed to allocate shared interrupt %d", dev->irq);
 
Index: linux-2.6.git/drivers/ieee1394/pcilynx.c
===================================================================
--- linux-2.6.git.orig/drivers/ieee1394/pcilynx.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/ieee1394/pcilynx.c	2006-07-01 16:51:41.000000000 +0200
@@ -1253,7 +1253,7 @@ static int __devinit add_card(struct pci
 
 	sprintf (irq_buf, "%d", dev->irq);
 
-        if (!request_irq(dev->irq, lynx_irq_handler, SA_SHIRQ,
+        if (!request_irq(dev->irq, lynx_irq_handler, IRQF_SHARED,
                          PCILYNX_DRIVER_NAME, lynx)) {
                 PRINT(KERN_INFO, lynx->id, "allocated interrupt %s", irq_buf);
                 lynx->state = have_intr;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 32/44] isdn: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (30 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 31/44] firewire: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 33/44] media: " Thomas Gleixner
                   ` (12 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, hjlipp

[-- Attachment #1: irqflags-drivers-isdn.patch --]
[-- Type: text/plain, Size: 20794 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/isdn/hardware/avm/b1pci.c       |    4 ++--
 drivers/isdn/hardware/avm/b1pcmcia.c    |    2 +-
 drivers/isdn/hardware/avm/c4.c          |    2 +-
 drivers/isdn/hardware/avm/t1pci.c       |    2 +-
 drivers/isdn/hardware/eicon/divasmain.c |    2 +-
 drivers/isdn/hisax/avm_a1p.c            |    2 +-
 drivers/isdn/hisax/avm_pci.c            |    2 +-
 drivers/isdn/hisax/bkm_a4t.c            |    2 +-
 drivers/isdn/hisax/bkm_a8.c             |    2 +-
 drivers/isdn/hisax/diva.c               |    2 +-
 drivers/isdn/hisax/elsa.c               |   22 +++++++++++-----------
 drivers/isdn/hisax/enternow_pci.c       |    2 +-
 drivers/isdn/hisax/gazel.c              |    2 +-
 drivers/isdn/hisax/hfc4s8s_l1.c         |    2 +-
 drivers/isdn/hisax/hfc_pci.c            |    2 +-
 drivers/isdn/hisax/hisax_fcpcipnp.c     |    4 ++--
 drivers/isdn/hisax/niccy.c              |    2 +-
 drivers/isdn/hisax/nj_s.c               |    2 +-
 drivers/isdn/hisax/nj_u.c               |    2 +-
 drivers/isdn/hisax/sedlbauer.c          |    4 ++--
 drivers/isdn/hisax/teles3.c             |    2 +-
 drivers/isdn/hisax/telespci.c           |    2 +-
 drivers/isdn/hisax/w6692.c              |    2 +-
 drivers/isdn/hysdn/boardergo.c          |    2 +-
 drivers/isdn/sc/init.c                  |    2 +-
 25 files changed, 38 insertions(+), 38 deletions(-)

Index: linux-2.6.git/drivers/isdn/hardware/avm/b1pci.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hardware/avm/b1pci.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hardware/avm/b1pci.c	2006-07-01 16:51:41.000000000 +0200
@@ -97,7 +97,7 @@ static int b1pci_probe(struct capicardpa
 	b1_reset(card->port);
 	b1_getrevision(card);
 	
-	retval = request_irq(card->irq, b1_interrupt, SA_SHIRQ, card->name, card);
+	retval = request_irq(card->irq, b1_interrupt, IRQF_SHARED, 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 capicard
 	b1dma_reset(card);
 	b1_getrevision(card);
 
-	retval = request_irq(card->irq, b1dma_interrupt, SA_SHIRQ, card->name, card);
+	retval = request_irq(card->irq, b1dma_interrupt, IRQF_SHARED, card->name, card);
 	if (retval) {
 		printk(KERN_ERR "b1pci: unable to get IRQ %d.\n",
 		       card->irq);
Index: linux-2.6.git/drivers/isdn/hardware/avm/b1pcmcia.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hardware/avm/b1pcmcia.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hardware/avm/b1pcmcia.c	2006-07-01 16:51:41.000000000 +0200
@@ -82,7 +82,7 @@ static int b1pcmcia_add_card(unsigned in
 	card->irq = irq;
 	card->cardtype = cardtype;
 
-	retval = request_irq(card->irq, b1_interrupt, SA_SHIRQ, card->name, card);
+	retval = request_irq(card->irq, b1_interrupt, IRQF_SHARED, card->name, card);
 	if (retval) {
 		printk(KERN_ERR "b1pcmcia: unable to get IRQ %d.\n",
 		       card->irq);
Index: linux-2.6.git/drivers/isdn/hardware/avm/c4.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hardware/avm/c4.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hardware/avm/c4.c	2006-07-01 16:51:41.000000000 +0200
@@ -1172,7 +1172,7 @@ static int c4_add_card(struct capicardpa
 	}
 	c4_reset(card);
 
-	retval = request_irq(card->irq, c4_interrupt, SA_SHIRQ, card->name, card);
+	retval = request_irq(card->irq, c4_interrupt, IRQF_SHARED, card->name, card);
 	if (retval) {
 		printk(KERN_ERR "c4: unable to get IRQ %d.\n",card->irq);
 		retval = -EBUSY;
Index: linux-2.6.git/drivers/isdn/hardware/avm/t1pci.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hardware/avm/t1pci.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hardware/avm/t1pci.c	2006-07-01 16:51:41.000000000 +0200
@@ -103,7 +103,7 @@ static int t1pci_add_card(struct capicar
 	}
 	b1dma_reset(card);
 
-	retval = request_irq(card->irq, b1dma_interrupt, SA_SHIRQ, card->name, card);
+	retval = request_irq(card->irq, b1dma_interrupt, IRQF_SHARED, card->name, card);
 	if (retval) {
 		printk(KERN_ERR "t1pci: unable to get IRQ %d.\n", card->irq);
 		retval = -EBUSY;
Index: linux-2.6.git/drivers/isdn/hardware/eicon/divasmain.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hardware/eicon/divasmain.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hardware/eicon/divasmain.c	2006-07-01 16:51:41.000000000 +0200
@@ -486,7 +486,7 @@ void __inline__ outpp(void __iomem *addr
 int diva_os_register_irq(void *context, byte irq, const char *name)
 {
 	int result = request_irq(irq, diva_os_irq_wrapper,
-				 SA_INTERRUPT | SA_SHIRQ, name, context);
+				 IRQF_DISABLED | IRQF_SHARED, name, context);
 	return (result);
 }
 
Index: linux-2.6.git/drivers/isdn/hisax/avm_a1p.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/avm_a1p.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/avm_a1p.c	2006-07-01 16:51:41.000000000 +0200
@@ -255,7 +255,7 @@ setup_avm_a1_pcmcia(struct IsdnCard *car
 	cs->BC_Write_Reg = &WriteHSCX;
 	cs->BC_Send_Data = &hscx_fill_fifo;
 	cs->cardmsg = &AVM_card_msg;
-	cs->irq_flags = SA_SHIRQ;
+	cs->irq_flags = IRQF_SHARED;
 	cs->irq_func = &avm_a1p_interrupt;
 
 	ISACVersion(cs, "AVM A1 PCMCIA:");
Index: linux-2.6.git/drivers/isdn/hisax/avm_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/avm_pci.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/avm_pci.c	2006-07-01 16:51:41.000000000 +0200
@@ -808,7 +808,7 @@ setup_avm_pcipnp(struct IsdnCard *card)
 		printk(KERN_WARNING "FritzPCI: No PCI card found\n");
 		return(0);
 	}
-	cs->irq_flags |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 #else
 	printk(KERN_WARNING "FritzPCI: NO_PCI_BIOS\n");
 	return (0);
Index: linux-2.6.git/drivers/isdn/hisax/bkm_a4t.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/bkm_a4t.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/bkm_a4t.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 	ISACVersion(cs, "Telekom A4T:");
 	/* Jade version */
 	JadeVersion(cs, "Telekom A4T:");
Index: linux-2.6.git/drivers/isdn/hisax/bkm_a8.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/bkm_a8.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/bkm_a8.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 	/* pci_ioaddr1 is unique to all subdevices */
 	/* pci_ioaddr2 is for the fourth subdevice only */
 	/* pci_ioaddr3 is for the third subdevice only */
Index: linux-2.6.git/drivers/isdn/hisax/diva.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/diva.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/diva.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+		cs->irq_flags |= IRQF_SHARED;
 #else
 		printk(KERN_WARNING "Diva: cfgreg 0 and NO_PCI_BIOS\n");
 		printk(KERN_WARNING "Diva: unable to config DIVA PCI\n");
Index: linux-2.6.git/drivers/isdn/hisax/elsa.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/elsa.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/elsa.c	2006-07-01 16:51:41.000000000 +0200
@@ -85,8 +85,8 @@ static const char *ITACVer[] =
  ***                                                                    ***/
 
 /* Config-Register (Read) */
-#define ELSA_TIMER_RUN       0x02	/* Bit 1 des Config-Reg     */
-#define ELSA_TIMER_RUN_PCC8  0x01	/* Bit 0 des Config-Reg  bei PCC */
+#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_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 ELSA_TIMER_AKTIV 1
+#define ELIRQF_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 & ELSA_TIMER_RUN));
+		return (0 == (v & ELIRQF_TIMER_RUN));
 	else if (cs->subtyp == ELSA_PCC8)
-		return (v & ELSA_TIMER_RUN_PCC8);
-	return (v & ELSA_TIMER_RUN);
+		return (v & ELIRQF_TIMER_RUN_PCC8);
+	return (v & ELIRQF_TIMER_RUN);
 }
 /*
  * fast interrupt HSCX stuff goes here
@@ -334,7 +334,7 @@ elsa_interrupt(int intno, void *dev_id, 
 	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 & ELSA_TIMER_AKTIV) {
+	if (cs->hw.elsa.status & ELIRQF_TIMER_AKTIV) {
 		if (!TimerRun(cs)) {
 			/* Timer Restart */
 			byteout(cs->hw.elsa.timer, 0);
@@ -685,7 +685,7 @@ Elsa_card_msg(struct IsdnCardState *cs, 
 				spin_lock_irqsave(&cs->lock, flags);
 				cs->hw.elsa.counter = 0;
 				cs->hw.elsa.ctrl_reg |= ELSA_ENA_TIMER_INT;
-				cs->hw.elsa.status |= ELSA_TIMER_AKTIV;
+				cs->hw.elsa.status |= ELIRQF_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, 
 				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 &= ~ELSA_TIMER_AKTIV;
+				cs->hw.elsa.status &= ~ELIRQF_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 |= SA_SHIRQ;
+		cs->irq_flags |= IRQF_SHARED;
 		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 |= SA_SHIRQ;
+		cs->irq_flags |= IRQF_SHARED;
 		printk(KERN_INFO
 		       "Elsa: %s defined at %#lx/0x%x IRQ %d\n",
 		       Elsa_Types[cs->subtyp],
Index: linux-2.6.git/drivers/isdn/hisax/enternow_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/enternow_pci.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/enternow_pci.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 
         return (1);
 }
Index: linux-2.6.git/drivers/isdn/hisax/gazel.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/gazel.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/gazel.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 
 	switch (seekcard) {
 		case PCI_DEVICE_ID_PLX_R685:
Index: linux-2.6.git/drivers/isdn/hisax/hfc4s8s_l1.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/hfc4s8s_l1.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/hfc4s8s_l1.c	2006-07-01 16:51:41.000000000 +0200
@@ -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, SA_SHIRQ, hw->card_name, hw)) {
+	    (hw->irq, hfc4s8s_interrupt, IRQF_SHARED, hw->card_name, hw)) {
 		printk(KERN_INFO
 		       "HFC-4S/8S: unable to alloc irq %d, card ignored\n",
 		       hw->irq);
Index: linux-2.6.git/drivers/isdn/hisax/hfc_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/hfc_pci.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/hfc_pci.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+		cs->irq_flags |= IRQF_SHARED;
 		cs->hw.hfcpci.timer.function = (void *) hfcpci_Timer;
 		cs->hw.hfcpci.timer.data = (long) cs;
 		init_timer(&cs->hw.hfcpci.timer);
Index: linux-2.6.git/drivers/isdn/hisax/hisax_fcpcipnp.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/hisax_fcpcipnp.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/hisax_fcpcipnp.c	2006-07-01 16:51:41.000000000 +0200
@@ -725,11 +725,11 @@ static int __devinit fcpcipnp_setup(stru
 
 	switch (adapter->type) {
 	case AVM_FRITZ_PCIV2:
-		retval = request_irq(adapter->irq, fcpci2_irq, SA_SHIRQ, 
+		retval = request_irq(adapter->irq, fcpci2_irq, IRQF_SHARED, 
 				     "fcpcipnp", adapter);
 		break;
 	case AVM_FRITZ_PCI:
-		retval = request_irq(adapter->irq, fcpci_irq, SA_SHIRQ,
+		retval = request_irq(adapter->irq, fcpci_irq, IRQF_SHARED,
 				     "fcpcipnp", adapter);
 		break;
 	case AVM_FRITZ_PNP:
Index: linux-2.6.git/drivers/isdn/hisax/niccy.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/niccy.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/niccy.c	2006-07-01 16:51:41.000000000 +0200
@@ -336,7 +336,7 @@ setup_niccy(struct IsdnCard *card)
 			printk(KERN_WARNING "Niccy: No PCI card found\n");
 			return(0);
 		}
-		cs->irq_flags |= SA_SHIRQ;
+		cs->irq_flags |= IRQF_SHARED;
 		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;
Index: linux-2.6.git/drivers/isdn/hisax/nj_s.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/nj_s.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/nj_s.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 	ISACVersion(cs, "NETjet-S:");
 	return (1);
 }
Index: linux-2.6.git/drivers/isdn/hisax/nj_u.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/nj_u.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/nj_u.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 	ICCVersion(cs, "NETspider-U:");
 	return (1);
 }
Index: linux-2.6.git/drivers/isdn/hisax/sedlbauer.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/sedlbauer.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/sedlbauer.c	2006-07-01 16:51:41.000000000 +0200
@@ -632,7 +632,7 @@ setup_sedlbauer(struct IsdnCard *card)
 			printk(KERN_WARNING "Sedlbauer: No PCI card found\n");
 			return(0);
 		}
-		cs->irq_flags |= SA_SHIRQ;
+		cs->irq_flags |= IRQF_SHARED;
 		cs->hw.sedl.bus = SEDL_BUS_PCI;
 		sub_vendor_id = dev_sedl->subsystem_vendor;
 		sub_id = dev_sedl->subsystem_device;
@@ -809,7 +809,7 @@ ready:	
 				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 |= SA_SHIRQ;
+				cs->irq_flags |= IRQF_SHARED;
 			} 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;
Index: linux-2.6.git/drivers/isdn/hisax/teles3.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/teles3.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/teles3.c	2006-07-01 16:51:41.000000000 +0200
@@ -369,7 +369,7 @@ setup_teles3(struct IsdnCard *card)
 			       cs->hw.teles3.hscx[1] + 96);
 			return (0);
 		}
-		cs->irq_flags |= SA_SHIRQ; /* cardbus can share */
+		cs->irq_flags |= IRQF_SHARED; /* cardbus can share */
 	} else {
 		if (cs->hw.teles3.cfg_reg) {
 			if (cs->typ == ISDN_CTYPE_COMPAQ_ISA) {
Index: linux-2.6.git/drivers/isdn/hisax/telespci.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/telespci.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/telespci.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 	ISACVersion(cs, "TelesPCI:");
 	if (HscxVersion(cs, "TelesPCI:")) {
 		printk(KERN_WARNING
Index: linux-2.6.git/drivers/isdn/hisax/w6692.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hisax/w6692.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hisax/w6692.c	2006-07-01 16:51:41.000000000 +0200
@@ -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 |= SA_SHIRQ;
+	cs->irq_flags |= IRQF_SHARED;
 	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));
Index: linux-2.6.git/drivers/isdn/hysdn/boardergo.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/hysdn/boardergo.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/hysdn/boardergo.c	2006-07-01 16:51:41.000000000 +0200
@@ -435,7 +435,7 @@ ergo_inithardware(hysdn_card * card)
 	}
 
 	ergo_stopcard(card);	/* disable interrupts */
-	if (request_irq(card->irq, ergo_interrupt, SA_SHIRQ, "HYSDN", card)) {
+	if (request_irq(card->irq, ergo_interrupt, IRQF_SHARED, "HYSDN", card)) {
 		ergo_releasehardware(card); /* return the acquired hardware */
 		return (-1);
 	}
Index: linux-2.6.git/drivers/isdn/sc/init.c
===================================================================
--- linux-2.6.git.orig/drivers/isdn/sc/init.c	2006-07-01 16:51:18.000000000 +0200
+++ linux-2.6.git/drivers/isdn/sc/init.c	2006-07-01 16:51:41.000000000 +0200
@@ -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,
-				SA_INTERRUPT, interface->id, NULL))
+				IRQF_DISABLED, interface->id, NULL))
 		{
 			kfree(sc_adapter[cinst]->channel);
 			indicate_status(cinst, ISDN_STAT_UNLOAD, 0, NULL);	/* Fix me */

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 33/44] media: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (31 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 32/44] isdn: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:54 ` [RFC][patch 34/44] misc drivers: " Thomas Gleixner
                   ` (11 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-drivers-media.patch --]
[-- Type: text/plain, Size: 10469 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/media/common/saa7146_core.c        |    2 +-
 drivers/media/dvb/b2c2/flexcop-pci.c       |    2 +-
 drivers/media/dvb/bt8xx/bt878.c            |    2 +-
 drivers/media/dvb/pluto2/pluto2.c          |    2 +-
 drivers/media/video/bt8xx/bttv-driver.c    |    2 +-
 drivers/media/video/cx88/cx88-alsa.c       |    2 +-
 drivers/media/video/cx88/cx88-mpeg.c       |    2 +-
 drivers/media/video/cx88/cx88-video.c      |    2 +-
 drivers/media/video/meye.c                 |    2 +-
 drivers/media/video/saa7134/saa7134-alsa.c |    2 +-
 drivers/media/video/saa7134/saa7134-core.c |    2 +-
 drivers/media/video/saa7134/saa7134-oss.c  |    2 +-
 drivers/media/video/stradis.c              |    2 +-
 drivers/media/video/zoran_card.c           |    2 +-
 drivers/media/video/zr36120.c              |    2 +-
 15 files changed, 15 insertions(+), 15 deletions(-)

Index: linux-2.6.git/drivers/media/common/saa7146_core.c
===================================================================
--- linux-2.6.git.orig/drivers/media/common/saa7146_core.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/common/saa7146_core.c	2006-07-01 16:51:41.000000000 +0200
@@ -363,7 +363,7 @@ static int saa7146_init_one(struct pci_d
 	saa7146_write(dev, MC2, 0xf8000000);
 
 	/* request an interrupt for the saa7146 */
-	err = request_irq(pci->irq, interrupt_hw, SA_SHIRQ | SA_INTERRUPT,
+	err = request_irq(pci->irq, interrupt_hw, IRQF_SHARED | IRQF_DISABLED,
 			  dev->name, dev);
 	if (err < 0) {
 		ERR(("request_irq() failed.\n"));
Index: linux-2.6.git/drivers/media/dvb/b2c2/flexcop-pci.c
===================================================================
--- linux-2.6.git.orig/drivers/media/dvb/b2c2/flexcop-pci.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/dvb/b2c2/flexcop-pci.c	2006-07-01 16:51:41.000000000 +0200
@@ -294,7 +294,7 @@ static int flexcop_pci_init(struct flexc
 	pci_set_drvdata(fc_pci->pdev, fc_pci);
 
 	if ((ret = request_irq(fc_pci->pdev->irq, flexcop_pci_isr,
-					SA_SHIRQ, DRIVER_NAME, fc_pci)) != 0)
+					IRQF_SHARED, DRIVER_NAME, fc_pci)) != 0)
 		goto err_pci_iounmap;
 
 	spin_lock_init(&fc_pci->irq_lock);
Index: linux-2.6.git/drivers/media/dvb/bt8xx/bt878.c
===================================================================
--- linux-2.6.git.orig/drivers/media/dvb/bt8xx/bt878.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/dvb/bt8xx/bt878.c	2006-07-01 16:51:41.000000000 +0200
@@ -488,7 +488,7 @@ static int __devinit bt878_probe(struct 
 	btwrite(0, BT848_INT_MASK);
 
 	result = request_irq(bt->irq, bt878_irq,
-			     SA_SHIRQ | SA_INTERRUPT, "bt878",
+			     IRQF_SHARED | IRQF_DISABLED, "bt878",
 			     (void *) bt);
 	if (result == -EINVAL) {
 		printk(KERN_ERR "bt878(%d): Bad irq number or handler\n",
Index: linux-2.6.git/drivers/media/dvb/pluto2/pluto2.c
===================================================================
--- linux-2.6.git.orig/drivers/media/dvb/pluto2/pluto2.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/dvb/pluto2/pluto2.c	2006-07-01 16:51:41.000000000 +0200
@@ -616,7 +616,7 @@ static int __devinit pluto2_probe(struct
 
 	pci_set_drvdata(pdev, pluto);
 
-	ret = request_irq(pdev->irq, pluto_irq, SA_SHIRQ, DRIVER_NAME, pluto);
+	ret = request_irq(pdev->irq, pluto_irq, IRQF_SHARED, DRIVER_NAME, pluto);
 	if (ret < 0)
 		goto err_pci_iounmap;
 
Index: linux-2.6.git/drivers/media/video/meye.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/meye.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/meye.c	2006-07-01 16:51:41.000000000 +0200
@@ -1881,7 +1881,7 @@ static int __devinit meye_probe(struct p
 
 	meye.mchip_irq = pcidev->irq;
 	if (request_irq(meye.mchip_irq, meye_irq,
-			SA_INTERRUPT | SA_SHIRQ, "meye", meye_irq)) {
+			IRQF_DISABLED | IRQF_SHARED, "meye", meye_irq)) {
 		printk(KERN_ERR "meye: request_irq failed\n");
 		goto outreqirq;
 	}
Index: linux-2.6.git/drivers/media/video/stradis.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/stradis.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/stradis.c	2006-07-01 16:51:41.000000000 +0200
@@ -1983,7 +1983,7 @@ static int __devinit configure_saa7146(s
 	memcpy(&saa->video_dev, &saa_template, sizeof(saa_template));
 	saawrite(0, SAA7146_IER);	/* turn off all interrupts */
 
-	retval = request_irq(saa->irq, saa7146_irq, SA_SHIRQ | SA_INTERRUPT,
+	retval = request_irq(saa->irq, saa7146_irq, IRQF_SHARED | IRQF_DISABLED,
 		"stradis", saa);
 	if (retval == -EINVAL)
 		dev_err(&pdev->dev, "%d: Bad irq number or handler\n", num);
Index: linux-2.6.git/drivers/media/video/zoran_card.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/zoran_card.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/zoran_card.c	2006-07-01 16:51:41.000000000 +0200
@@ -1380,7 +1380,7 @@ find_zr36057 (void)
 
 		result = request_irq(zr->pci_dev->irq,
 				     zoran_irq,
-				     SA_SHIRQ | SA_INTERRUPT,
+				     IRQF_SHARED | IRQF_DISABLED,
 				     ZR_DEVNAME(zr),
 				     (void *) zr);
 		if (result < 0) {
Index: linux-2.6.git/drivers/media/video/zr36120.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/zr36120.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/zr36120.c	2006-07-01 16:51:41.000000000 +0200
@@ -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,
-			SA_SHIRQ|SA_INTERRUPT,"zoran", ztv);
+			IRQF_SHARED|IRQF_DISABLED,"zoran", ztv);
 		if (result==-EINVAL)
 		{
 			iounmap(ztv->zoran_mem);
Index: linux-2.6.git/drivers/media/video/bt8xx/bttv-driver.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/bt8xx/bttv-driver.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/bt8xx/bttv-driver.c	2006-07-01 16:51:41.000000000 +0200
@@ -4050,7 +4050,7 @@ static int __devinit bttv_probe(struct p
 	/* disable irqs, register irq handler */
 	btwrite(0, BT848_INT_MASK);
 	result = request_irq(btv->c.pci->irq, bttv_irq,
-			     SA_SHIRQ | SA_INTERRUPT,btv->c.name,(void *)btv);
+			     IRQF_SHARED | IRQF_DISABLED,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);
Index: linux-2.6.git/drivers/media/video/cx88/cx88-alsa.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/cx88/cx88-alsa.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/cx88/cx88-alsa.c	2006-07-01 16:51:41.000000000 +0200
@@ -700,7 +700,7 @@ static int __devinit snd_cx88_create(str
 
 	/* get irq */
 	err = request_irq(chip->pci->irq, cx8801_irq,
-			  SA_SHIRQ | SA_INTERRUPT, chip->core->name, chip);
+			  IRQF_SHARED | IRQF_DISABLED, chip->core->name, chip);
 	if (err < 0) {
 		dprintk(0, "%s: can't get IRQ %d\n",
 		       chip->core->name, chip->pci->irq);
Index: linux-2.6.git/drivers/media/video/cx88/cx88-mpeg.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/cx88/cx88-mpeg.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/cx88/cx88-mpeg.c	2006-07-01 16:51:41.000000000 +0200
@@ -438,7 +438,7 @@ int cx8802_init_common(struct cx8802_dev
 
 	/* get irq */
 	err = request_irq(dev->pci->irq, cx8802_irq,
-			  SA_SHIRQ | SA_INTERRUPT, dev->core->name, dev);
+			  IRQF_SHARED | IRQF_DISABLED, dev->core->name, dev);
 	if (err < 0) {
 		printk(KERN_ERR "%s: can't get IRQ %d\n",
 		       dev->core->name, dev->pci->irq);
Index: linux-2.6.git/drivers/media/video/cx88/cx88-video.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/cx88/cx88-video.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/cx88/cx88-video.c	2006-07-01 16:51:41.000000000 +0200
@@ -1915,7 +1915,7 @@ static int __devinit cx8800_initdev(stru
 
 	/* get irq */
 	err = request_irq(pci_dev->irq, cx8800_irq,
-			  SA_SHIRQ | SA_INTERRUPT, core->name, dev);
+			  IRQF_SHARED | IRQF_DISABLED, core->name, dev);
 	if (err < 0) {
 		printk(KERN_ERR "%s: can't get IRQ %d\n",
 		       core->name,pci_dev->irq);
Index: linux-2.6.git/drivers/media/video/saa7134/saa7134-alsa.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/saa7134/saa7134-alsa.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/saa7134/saa7134-alsa.c	2006-07-01 16:51:41.000000000 +0200
@@ -929,7 +929,7 @@ static int alsa_card_saa7134_create(stru
 
 
 	err = request_irq(dev->pci->irq, saa7134_alsa_irq,
-				SA_SHIRQ | SA_INTERRUPT, dev->name,
+				IRQF_SHARED | IRQF_DISABLED, dev->name,
 				(void*) &dev->dmasound);
 
 	if (err < 0) {
Index: linux-2.6.git/drivers/media/video/saa7134/saa7134-core.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/saa7134/saa7134-core.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/saa7134/saa7134-core.c	2006-07-01 16:51:41.000000000 +0200
@@ -923,7 +923,7 @@ static int __devinit saa7134_initdev(str
 
 	/* get irq */
 	err = request_irq(pci_dev->irq, saa7134_irq,
-			  SA_SHIRQ | SA_INTERRUPT, dev->name, dev);
+			  IRQF_SHARED | IRQF_DISABLED, dev->name, dev);
 	if (err < 0) {
 		printk(KERN_ERR "%s: can't get IRQ %d\n",
 		       dev->name,pci_dev->irq);
Index: linux-2.6.git/drivers/media/video/saa7134/saa7134-oss.c
===================================================================
--- linux-2.6.git.orig/drivers/media/video/saa7134/saa7134-oss.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/media/video/saa7134/saa7134-oss.c	2006-07-01 16:51:41.000000000 +0200
@@ -845,7 +845,7 @@ int saa7134_oss_init1(struct saa7134_dev
 {
 
 	if ((request_irq(dev->pci->irq, saa7134_oss_irq,
-			 SA_SHIRQ | SA_INTERRUPT, dev->name,
+			 IRQF_SHARED | IRQF_DISABLED, dev->name,
 			(void*) &dev->dmasound)) < 0)
 		return -1;
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 34/44] misc drivers: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (32 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 33/44] media: " Thomas Gleixner
@ 2006-07-01 14:54 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 35/44] drivers/net: " Thomas Gleixner
                   ` (10 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:54 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-drivers-misc.patch --]
[-- Type: text/plain, Size: 59401 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/acorn/block/mfmhd.c                |    2 +-
 drivers/acpi/osl.c                         |    2 +-
 drivers/atm/ambassador.c                   |    2 +-
 drivers/atm/eni.c                          |    2 +-
 drivers/atm/firestream.c                   |    2 +-
 drivers/atm/fore200e.c                     |    2 +-
 drivers/atm/he.c                           |    2 +-
 drivers/atm/horizon.c                      |    2 +-
 drivers/atm/idt77252.c                     |    2 +-
 drivers/atm/iphase.c                       |    2 +-
 drivers/atm/lanai.c                        |    2 +-
 drivers/atm/nicstar.c                      |    2 +-
 drivers/atm/zatm.c                         |    2 +-
 drivers/cdrom/cdu31a.c                     |    2 +-
 drivers/cdrom/mcdx.c                       |    2 +-
 drivers/cdrom/sonycd535.c                  |    2 +-
 drivers/dma/ioatdma.c                      |    2 +-
 drivers/fc4/soc.c                          |    2 +-
 drivers/fc4/socal.c                        |    2 +-
 drivers/i2c/busses/i2c-mpc.c               |    2 +-
 drivers/i2c/busses/i2c-pxa.c               |    2 +-
 drivers/i2c/busses/i2c-s3c2410.c           |    2 +-
 drivers/i2c/chips/isp1301_omap.c           |    4 ++--
 drivers/i2c/chips/tps65010.c               |    8 ++++----
 drivers/infiniband/hw/ipath/ipath_driver.c |    4 ++--
 drivers/infiniband/hw/mthca/mthca_eq.c     |    2 +-
 drivers/input/keyboard/corgikbd.c          |    2 +-
 drivers/input/keyboard/spitzkbd.c          |   12 ++++++------
 drivers/input/misc/ixp4xx-beeper.c         |    2 +-
 drivers/input/mouse/rpcmouse.c             |    2 +-
 drivers/input/serio/gscps2.c               |    2 +-
 drivers/input/serio/i8042.c                |    4 ++--
 drivers/input/serio/pcips2.c               |    2 +-
 drivers/input/touchscreen/ads7846.c        |    2 +-
 drivers/input/touchscreen/corgi_ts.c       |    2 +-
 drivers/input/touchscreen/h3600_ts_input.c |    4 ++--
 drivers/input/touchscreen/hp680_ts_input.c |    2 +-
 drivers/macintosh/smu.c                    |    4 ++--
 drivers/message/fusion/mptbase.c           |    2 +-
 drivers/message/i2o/pci.c                  |    2 +-
 drivers/mfd/ucb1x00-core.c                 |    2 +-
 drivers/misc/ibmasm/module.c               |    2 +-
 drivers/mmc/at91_mci.c                     |    2 +-
 drivers/mmc/au1xmmc.c                      |    2 +-
 drivers/mmc/mmci.c                         |    4 ++--
 drivers/mmc/omap.c                         |    2 +-
 drivers/mmc/sdhci.c                        |    2 +-
 drivers/mmc/wbsd.c                         |    2 +-
 drivers/parport/parport_ax88796.c          |    2 +-
 drivers/parport/parport_mfc3.c             |    2 +-
 drivers/parport/parport_sunbpp.c           |    2 +-
 drivers/pcmcia/at91_cf.c                   |    4 ++--
 drivers/pcmcia/hd64465_ss.c                |    2 +-
 drivers/pcmcia/i82092.c                    |    2 +-
 drivers/pcmcia/i82365.c                    |    6 +++---
 drivers/pcmcia/omap_cf.c                   |    2 +-
 drivers/pcmcia/pcmcia_resource.c           |    8 ++++----
 drivers/pcmcia/pd6729.c                    |    2 +-
 drivers/pcmcia/soc_common.c                |    2 +-
 drivers/pcmcia/vrc4171_card.c              |    2 +-
 drivers/pcmcia/vrc4173_cardu.c             |    2 +-
 drivers/pcmcia/yenta_socket.c              |    4 ++--
 drivers/pnp/resource.c                     |    2 +-
 drivers/rtc/rtc-at91.c                     |    2 +-
 drivers/rtc/rtc-ds1553.c                   |    2 +-
 drivers/rtc/rtc-pl031.c                    |    2 +-
 drivers/rtc/rtc-sa1100.c                   |    6 +++---
 drivers/rtc/rtc-vr41xx.c                   |    4 ++--
 drivers/sbus/char/aurora.c                 |   12 ++++++------
 drivers/sbus/char/bbc_i2c.c                |    2 +-
 drivers/sbus/char/cpwatchdog.c             |    2 +-
 drivers/sn/ioc3.c                          |    6 +++---
 drivers/tc/zs.c                            |    2 +-
 73 files changed, 104 insertions(+), 104 deletions(-)

Index: linux-2.6.git/drivers/acorn/block/mfmhd.c
===================================================================
--- linux-2.6.git.orig/drivers/acorn/block/mfmhd.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/acorn/block/mfmhd.c	2006-07-01 16:51:42.000000000 +0200
@@ -1278,7 +1278,7 @@ static int mfm_do_init(unsigned char irq
 
 	printk("mfm: detected %d hard drive%s\n", mfm_drives,
 				mfm_drives == 1 ? "" : "s");
-	ret = request_irq(mfm_irq, mfm_interrupt_handler, SA_INTERRUPT, "MFM harddisk", NULL);
+	ret = request_irq(mfm_irq, mfm_interrupt_handler, IRQF_DISABLED, "MFM harddisk", NULL);
 	if (ret) {
 		printk("mfm: unable to get IRQ%d\n", mfm_irq);
 		goto out4;
Index: linux-2.6.git/drivers/acpi/osl.c
===================================================================
--- linux-2.6.git.orig/drivers/acpi/osl.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/acpi/osl.c	2006-07-01 16:51:42.000000000 +0200
@@ -280,7 +280,7 @@ acpi_os_install_interrupt_handler(u32 gs
 
 	acpi_irq_handler = handler;
 	acpi_irq_context = context;
-	if (request_irq(irq, acpi_irq, SA_SHIRQ, "acpi", acpi_irq)) {
+	if (request_irq(irq, acpi_irq, IRQF_SHARED, "acpi", acpi_irq)) {
 		printk(KERN_ERR PREFIX "SCI (IRQ%d) allocation failed\n", irq);
 		return AE_NOT_ACQUIRED;
 	}
Index: linux-2.6.git/drivers/atm/ambassador.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/ambassador.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/ambassador.c	2006-07-01 16:51:42.000000000 +0200
@@ -2286,7 +2286,7 @@ static int __devinit amb_probe(struct pc
 	setup_pci_dev(pci_dev);
 
 	// grab (but share) IRQ and install handler
-	err = request_irq(irq, interrupt_handler, SA_SHIRQ, DEV_LABEL, dev);
+	err = request_irq(irq, interrupt_handler, IRQF_SHARED, DEV_LABEL, dev);
 	if (err < 0) {
 		PRINTK (KERN_ERR, "request IRQ failed!");
 		goto out_reset;
Index: linux-2.6.git/drivers/atm/eni.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/eni.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/eni.c	2006-07-01 16:51:42.000000000 +0200
@@ -1797,7 +1797,7 @@ static int __devinit eni_start(struct at
 
 	DPRINTK(">eni_start\n");
 	eni_dev = ENI_DEV(dev);
-	if (request_irq(eni_dev->irq,&eni_int,SA_SHIRQ,DEV_LABEL,dev)) {
+	if (request_irq(eni_dev->irq,&eni_int,IRQF_SHARED,DEV_LABEL,dev)) {
 		printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",
 		    dev->number,eni_dev->irq);
 		error = -EAGAIN;
Index: linux-2.6.git/drivers/atm/firestream.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/firestream.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/firestream.c	2006-07-01 16:51:42.000000000 +0200
@@ -1829,7 +1829,7 @@ static int __devinit fs_init (struct fs_
 		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, SA_SHIRQ, "firestream", dev)) {
+	if (request_irq (dev->irq, fs_irq, IRQF_SHARED, "firestream", dev)) {
 		printk (KERN_WARNING "couldn't get irq %d for firestream.\n", pci_dev->irq);
 		/* XXX undo all previous stuff... */
 		return 1;
Index: linux-2.6.git/drivers/atm/fore200e.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/fore200e.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/fore200e.c	2006-07-01 16:51:42.000000000 +0200
@@ -2123,7 +2123,7 @@ fore200e_change_qos(struct atm_vcc* vcc,
 static int __devinit
 fore200e_irq_request(struct fore200e* fore200e)
 {
-    if (request_irq(fore200e->irq, fore200e_interrupt, SA_SHIRQ, fore200e->name, fore200e->atm_dev) < 0) {
+    if (request_irq(fore200e->irq, fore200e_interrupt, IRQF_SHARED, fore200e->name, fore200e->atm_dev) < 0) {
 
 	printk(FORE200E "unable to reserve IRQ %s for device %s\n",
 	       fore200e_irq_itoa(fore200e->irq), fore200e->name);
Index: linux-2.6.git/drivers/atm/he.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/he.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/he.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_INTERRUPT|SA_SHIRQ, DEV_LABEL, he_dev)) {
+	if (request_irq(he_dev->pci_dev->irq, he_irq_handler, IRQF_DISABLED|IRQF_SHARED, DEV_LABEL, he_dev)) {
 		hprintk("irq %d already in use\n", he_dev->pci_dev->irq);
 		return -EINVAL;
 	}   
Index: linux-2.6.git/drivers/atm/horizon.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/horizon.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/horizon.c	2006-07-01 16:51:42.000000000 +0200
@@ -2735,7 +2735,7 @@ static int __devinit hrz_probe(struct pc
 	irq = pci_dev->irq;
 	if (request_irq(irq,
 			interrupt_handler,
-			SA_SHIRQ, /* irqflags guess */
+			IRQF_SHARED, /* irqflags guess */
 			DEV_LABEL, /* name guess */
 			dev)) {
 		PRINTD(DBG_WARN, "request IRQ failed!");
Index: linux-2.6.git/drivers/atm/idt77252.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/idt77252.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/idt77252.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pcidev->irq, idt77252_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card->name, card) != 0) {
 		printk("%s: can't allocate IRQ.\n", card->name);
 		deinit_card(card);
Index: linux-2.6.git/drivers/atm/iphase.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/iphase.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/iphase.c	2006-07-01 16:51:42.000000000 +0200
@@ -2488,7 +2488,7 @@ static int __devinit ia_start(struct atm
 	u32 ctrl_reg;  
 	IF_EVENT(printk(">ia_start\n");)  
 	iadev = INPH_IA_DEV(dev);  
-        if (request_irq(iadev->irq, &ia_int, SA_SHIRQ, DEV_LABEL, dev)) {  
+        if (request_irq(iadev->irq, &ia_int, IRQF_SHARED, DEV_LABEL, dev)) {  
                 printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",  
                     dev->number, iadev->irq);  
 		error = -EAGAIN;
Index: linux-2.6.git/drivers/atm/lanai.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/lanai.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/lanai.c	2006-07-01 16:51:42.000000000 +0200
@@ -2240,7 +2240,7 @@ static int __devinit lanai_dev_open(stru
 	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, SA_SHIRQ,
+	if ((result = request_irq(lanai->pci->irq, lanai_int, IRQF_SHARED,
 	    DEV_LABEL, lanai)) != 0) {
 		printk(KERN_ERR DEV_LABEL ": can't allocate interrupt\n");
 		goto error_vcctable;
Index: linux-2.6.git/drivers/atm/nicstar.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/nicstar.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/nicstar.c	2006-07-01 16:51:42.000000000 +0200
@@ -625,7 +625,7 @@ static int __devinit ns_init_card(int i,
    if (mac[i] == NULL)
       nicstar_init_eprom(card->membase);
 
-   if (request_irq(pcidev->irq, &ns_irq_handler, SA_INTERRUPT | SA_SHIRQ, "nicstar", card) != 0)
+   if (request_irq(pcidev->irq, &ns_irq_handler, IRQF_DISABLED | IRQF_SHARED, "nicstar", card) != 0)
    {
       printk("nicstar%d: can't allocate IRQ %d.\n", i, pcidev->irq);
       error = 9;
Index: linux-2.6.git/drivers/atm/zatm.c
===================================================================
--- linux-2.6.git.orig/drivers/atm/zatm.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/atm/zatm.c	2006-07-01 16:51:42.000000000 +0200
@@ -1270,7 +1270,7 @@ static int __init zatm_start(struct atm_
 	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, SA_SHIRQ, DEV_LABEL, dev);
+ 	error = request_irq(zatm_dev->irq, zatm_int, IRQF_SHARED, 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);
Index: linux-2.6.git/drivers/cdrom/cdu31a.c
===================================================================
--- linux-2.6.git.orig/drivers/cdrom/cdu31a.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/cdrom/cdu31a.c	2006-07-01 16:51:42.000000000 +0200
@@ -3141,7 +3141,7 @@ int __init cdu31a_init(void)
 
 	if (cdu31a_irq > 0) {
 		if (request_irq
-		    (cdu31a_irq, cdu31a_interrupt, SA_INTERRUPT,
+		    (cdu31a_irq, cdu31a_interrupt, IRQF_DISABLED,
 		     "cdu31a", NULL)) {
 			printk(KERN_WARNING PFX "Unable to grab IRQ%d for "
 					"the CDU31A driver\n", cdu31a_irq);
Index: linux-2.6.git/drivers/cdrom/mcdx.c
===================================================================
--- linux-2.6.git.orig/drivers/cdrom/mcdx.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/cdrom/mcdx.c	2006-07-01 16:51:42.000000000 +0200
@@ -1193,7 +1193,7 @@ static int __init mcdx_init_drive(int dr
 	}
 
 	xtrace(INIT, "init() subscribe irq and i/o\n");
-	if (request_irq(stuffp->irq, mcdx_intr, SA_INTERRUPT, "mcdx", stuffp)) {
+	if (request_irq(stuffp->irq, mcdx_intr, IRQF_DISABLED, "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);
Index: linux-2.6.git/drivers/cdrom/sonycd535.c
===================================================================
--- linux-2.6.git.orig/drivers/cdrom/sonycd535.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/cdrom/sonycd535.c	2006-07-01 16:51:42.000000000 +0200
@@ -1527,7 +1527,7 @@ static int __init sony535_init(void)
 	}
 	if (sony535_irq_used > 0) {
 	    if (request_irq(sony535_irq_used, cdu535_interrupt,
-						SA_INTERRUPT, CDU535_HANDLE, NULL)) {
+						IRQF_DISABLED, 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;
Index: linux-2.6.git/drivers/dma/ioatdma.c
===================================================================
--- linux-2.6.git.orig/drivers/dma/ioatdma.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/dma/ioatdma.c	2006-07-01 16:51:42.000000000 +0200
@@ -739,7 +739,7 @@ static int __devinit ioat_probe(struct p
 		device->msi = 0;
 	}
 #endif
-	err = request_irq(pdev->irq, &ioat_do_interrupt, SA_SHIRQ, "ioat",
+	err = request_irq(pdev->irq, &ioat_do_interrupt, IRQF_SHARED, "ioat",
 		device);
 	if (err)
 		goto err_irq;
Index: linux-2.6.git/drivers/fc4/socal.c
===================================================================
--- linux-2.6.git.orig/drivers/fc4/socal.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/fc4/socal.c	2006-07-01 16:51:42.000000000 +0200
@@ -761,7 +761,7 @@ static inline void socal_init(struct sbu
 	
 	irq = sdev->irqs[0];
 
-	if (request_irq (irq, socal_intr, SA_SHIRQ, "SOCAL", (void *)s)) {
+	if (request_irq (irq, socal_intr, IRQF_SHARED, "SOCAL", (void *)s)) {
 		socal_printk ("Cannot order irq %d to go\n", irq);
 		socals = s->next;
 		return;
Index: linux-2.6.git/drivers/fc4/soc.c
===================================================================
--- linux-2.6.git.orig/drivers/fc4/soc.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/fc4/soc.c	2006-07-01 16:51:42.000000000 +0200
@@ -637,7 +637,7 @@ static inline void soc_init(struct sbus_
 	
 	irq = sdev->irqs[0];
 
-	if (request_irq (irq, soc_intr, SA_SHIRQ, "SOC", (void *)s)) {
+	if (request_irq (irq, soc_intr, IRQF_SHARED, "SOC", (void *)s)) {
 		soc_printk ("Cannot order irq %d to go\n", irq);
 		socs = s->next;
 		return;
Index: linux-2.6.git/drivers/i2c/busses/i2c-mpc.c
===================================================================
--- linux-2.6.git.orig/drivers/i2c/busses/i2c-mpc.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/i2c/busses/i2c-mpc.c	2006-07-01 16:51:42.000000000 +0200
@@ -318,7 +318,7 @@ static int fsl_i2c_probe(struct platform
 
 	if (i2c->irq != 0)
 		if ((result = request_irq(i2c->irq, mpc_i2c_isr,
-					  SA_SHIRQ, "i2c-mpc", i2c)) < 0) {
+					  IRQF_SHARED, "i2c-mpc", i2c)) < 0) {
 			printk(KERN_ERR
 			       "i2c-mpc - failed to attach interrupt\n");
 			goto fail_irq;
Index: linux-2.6.git/drivers/i2c/busses/i2c-pxa.c
===================================================================
--- linux-2.6.git.orig/drivers/i2c/busses/i2c-pxa.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/i2c/busses/i2c-pxa.c	2006-07-01 16:51:42.000000000 +0200
@@ -968,7 +968,7 @@ static int i2c_pxa_probe(struct platform
 #endif
 
 	pxa_set_cken(CKEN14_I2C, 1);
-	ret = request_irq(IRQ_I2C, i2c_pxa_handler, SA_INTERRUPT,
+	ret = request_irq(IRQ_I2C, i2c_pxa_handler, IRQF_DISABLED,
 			  "pxa2xx-i2c", i2c);
 	if (ret)
 		goto out;
Index: linux-2.6.git/drivers/i2c/busses/i2c-s3c2410.c
===================================================================
--- linux-2.6.git.orig/drivers/i2c/busses/i2c-s3c2410.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/i2c/busses/i2c-s3c2410.c	2006-07-01 16:51:42.000000000 +0200
@@ -828,7 +828,7 @@ static int s3c24xx_i2c_probe(struct plat
 		goto out;
 	}
 
-	ret = request_irq(res->start, s3c24xx_i2c_irq, SA_INTERRUPT,
+	ret = request_irq(res->start, s3c24xx_i2c_irq, IRQF_DISABLED,
 			  pdev->name, i2c);
 
 	if (ret != 0) {
Index: linux-2.6.git/drivers/i2c/chips/isp1301_omap.c
===================================================================
--- linux-2.6.git.orig/drivers/i2c/chips/isp1301_omap.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/i2c/chips/isp1301_omap.c	2006-07-01 16:51:42.000000000 +0200
@@ -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,
-				SA_INTERRUPT, DRIVER_NAME, isp);
+				IRQF_DISABLED, DRIVER_NAME, isp);
 	else
 		status = -ENODEV;
 
@@ -1578,7 +1578,7 @@ fail1:
 	}
 
 	status = request_irq(isp->irq, isp1301_irq,
-			SA_SAMPLE_RANDOM, DRIVER_NAME, isp);
+			IRQF_SAMPLE_RANDOM, DRIVER_NAME, isp);
 	if (status < 0) {
 		dev_dbg(&i2c->dev, "can't get IRQ %d, err %d\n",
 				isp->irq, status);
Index: linux-2.6.git/drivers/i2c/chips/tps65010.c
===================================================================
--- linux-2.6.git.orig/drivers/i2c/chips/tps65010.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/i2c/chips/tps65010.c	2006-07-01 16:51:42.000000000 +0200
@@ -521,14 +521,14 @@ tps65010_probe(struct i2c_adapter *bus, 
 	}
 
 #ifdef	CONFIG_ARM
-	irqflags = SA_SAMPLE_RANDOM | SA_TRIGGER_LOW;
+	irqflags = IRQF_SAMPLE_RANDOM | IRQF_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 |= SA_TRIGGER_FALLING;
+		irqflags |= IRQF_TRIGGER_FALLING;
 	}
 	if (machine_is_omap_osk()) {
 		tps->model = TPS65010;
@@ -536,7 +536,7 @@ tps65010_probe(struct i2c_adapter *bus, 
 		tps->irq = OMAP_GPIO_IRQ(OMAP_MPUIO(1));
 		omap_request_gpio(OMAP_MPUIO(1));
 		omap_set_gpio_direction(OMAP_MPUIO(1), 1);
-		irqflags |= SA_TRIGGER_FALLING;
+		irqflags |= IRQF_TRIGGER_FALLING;
 	}
 	if (machine_is_omap_h3()) {
 		tps->model = TPS65013;
@@ -544,7 +544,7 @@ tps65010_probe(struct i2c_adapter *bus, 
 		// FIXME set up this board's IRQ ...
 	}
 #else
-	irqflags = SA_SAMPLE_RANDOM;
+	irqflags = IRQF_SAMPLE_RANDOM;
 #endif
 
 	if (tps->irq > 0) {
Index: linux-2.6.git/drivers/infiniband/hw/ipath/ipath_driver.c
===================================================================
--- linux-2.6.git.orig/drivers/infiniband/hw/ipath/ipath_driver.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/infiniband/hw/ipath/ipath_driver.c	2006-07-01 16:51:42.000000000 +0200
@@ -511,7 +511,7 @@ static int __devinit ipath_init_one(stru
 			      "continuing anyway\n");
 
 	/*
-	 * set up our interrupt handler; SA_SHIRQ probably not needed,
+	 * set up our interrupt handler; IRQF_SHARED 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
@@ -520,7 +520,7 @@ static int __devinit ipath_init_one(stru
 		ipath_dev_err(dd, "irq is 0, BIOS error?  Interrupts won't "
 			      "work\n");
 	else {
-		ret = request_irq(pdev->irq, ipath_intr, SA_SHIRQ,
+		ret = request_irq(pdev->irq, ipath_intr, IRQF_SHARED,
 				  IPATH_DRV_NAME, dd);
 		if (ret) {
 			ipath_dev_err(dd, "Couldn't setup irq handler, "
Index: linux-2.6.git/drivers/infiniband/hw/mthca/mthca_eq.c
===================================================================
--- linux-2.6.git.orig/drivers/infiniband/hw/mthca/mthca_eq.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/infiniband/hw/mthca/mthca_eq.c	2006-07-01 16:51:42.000000000 +0200
@@ -900,7 +900,7 @@ int __devinit mthca_init_eq_table(struct
 				  mthca_is_memfree(dev) ?
 				  mthca_arbel_interrupt :
 				  mthca_tavor_interrupt,
-				  SA_SHIRQ, DRV_NAME, dev);
+				  IRQF_SHARED, DRV_NAME, dev);
 		if (err)
 			goto err_out_cmd;
 		dev->eq_table.have_irq = 1;
Index: linux-2.6.git/drivers/input/keyboard/corgikbd.c
===================================================================
--- linux-2.6.git.orig/drivers/input/keyboard/corgikbd.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/keyboard/corgikbd.c	2006-07-01 16:51:42.000000000 +0200
@@ -352,7 +352,7 @@ static int __init corgikbd_probe(struct 
 	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,
-				SA_INTERRUPT | SA_TRIGGER_RISING,
+				IRQF_DISABLED | IRQF_TRIGGER_RISING,
 				"corgikbd", corgikbd))
 			printk(KERN_WARNING "corgikbd: Can't get IRQ: %d!\n", i);
 	}
Index: linux-2.6.git/drivers/input/keyboard/spitzkbd.c
===================================================================
--- linux-2.6.git.orig/drivers/input/keyboard/spitzkbd.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/keyboard/spitzkbd.c	2006-07-01 16:51:42.000000000 +0200
@@ -410,7 +410,7 @@ static int __init spitzkbd_probe(struct 
 	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,
-				SA_INTERRUPT|SA_TRIGGER_RISING,
+				IRQF_DISABLED|IRQF_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 
 	pxa_gpio_mode(SPITZ_GPIO_SWB | GPIO_IN);
 
 	request_irq(SPITZ_IRQ_GPIO_SYNC, spitzkbd_interrupt,
-		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 		    "Spitzkbd Sync", spitzkbd);
 	request_irq(SPITZ_IRQ_GPIO_ON_KEY, spitzkbd_interrupt,
-		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 		    "Spitzkbd PwrOn", spitzkbd);
 	request_irq(SPITZ_IRQ_GPIO_SWA, spitzkbd_hinge_isr,
-		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 		    "Spitzkbd SWA", spitzkbd);
 	request_irq(SPITZ_IRQ_GPIO_SWB, spitzkbd_hinge_isr,
-		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 		    "Spitzkbd SWB", spitzkbd);
  	request_irq(SPITZ_IRQ_GPIO_AK_INT, spitzkbd_hinge_isr,
-		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
+		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
 		    "Spitzkbd HP", spitzkbd);
 
 	printk(KERN_INFO "input: Spitz Keyboard Registered\n");
Index: linux-2.6.git/drivers/input/misc/ixp4xx-beeper.c
===================================================================
--- linux-2.6.git.orig/drivers/input/misc/ixp4xx-beeper.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/misc/ixp4xx-beeper.c	2006-07-01 16:51:42.000000000 +0200
@@ -113,7 +113,7 @@ static int __devinit ixp4xx_spkr_probe(s
 	input_dev->event = ixp4xx_spkr_event;
 
 	err = request_irq(IRQ_IXP4XX_TIMER2, &ixp4xx_spkr_interrupt,
-			  SA_INTERRUPT | SA_TIMER, "ixp4xx-beeper", (void *) dev->id);
+			  IRQF_DISABLED | IRQF_TIMER, "ixp4xx-beeper", (void *) dev->id);
 	if (err)
 		goto err_free_device;
 
Index: linux-2.6.git/drivers/input/mouse/rpcmouse.c
===================================================================
--- linux-2.6.git.orig/drivers/input/mouse/rpcmouse.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/mouse/rpcmouse.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_SHIRQ, "rpcmouse", rpcmouse_dev)) {
+	if (request_irq(IRQ_VSYNCPULSE, rpcmouse_irq, IRQF_SHARED, "rpcmouse", rpcmouse_dev)) {
 		printk(KERN_ERR "rpcmouse: unable to allocate VSYNC interrupt\n");
 		input_free_device(rpcmouse_dev);
 		return -EBUSY;
Index: linux-2.6.git/drivers/input/serio/gscps2.c
===================================================================
--- linux-2.6.git.orig/drivers/input/serio/gscps2.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/serio/gscps2.c	2006-07-01 16:51:42.000000000 +0200
@@ -370,7 +370,7 @@ static int __init gscps2_probe(struct pa
 	serio->dev.parent	= &dev->dev;
 
 	ret = -EBUSY;
-	if (request_irq(dev->irq, gscps2_interrupt, SA_SHIRQ, ps2port->port->name, ps2port))
+	if (request_irq(dev->irq, gscps2_interrupt, IRQF_SHARED, ps2port->port->name, ps2port))
 		goto fail_miserably;
 
 	if (ps2port->id != GSC_ID_KEYBOARD && ps2port->id != GSC_ID_MOUSE) {
Index: linux-2.6.git/drivers/input/serio/i8042.c
===================================================================
--- linux-2.6.git.orig/drivers/input/serio/i8042.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/serio/i8042.c	2006-07-01 16:51:42.000000000 +0200
@@ -328,7 +328,7 @@ static int i8042_open(struct serio *seri
 			return 0;
 
 	if (request_irq(port->irq, i8042_interrupt,
-			SA_SHIRQ, "i8042", i8042_request_irq_cookie)) {
+			IRQF_SHARED, "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(voi
  */
 
 	if (request_irq(i8042_ports[I8042_AUX_PORT_NO].irq, i8042_interrupt,
-			SA_SHIRQ, "i8042", &i8042_check_aux_cookie))
+			IRQF_SHARED, "i8042", &i8042_check_aux_cookie))
                 return -1;
 	free_irq(i8042_ports[I8042_AUX_PORT_NO].irq, &i8042_check_aux_cookie);
 
Index: linux-2.6.git/drivers/input/serio/pcips2.c
===================================================================
--- linux-2.6.git.orig/drivers/input/serio/pcips2.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/serio/pcips2.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_SHIRQ,
+	ret = request_irq(ps2if->dev->irq, pcips2_interrupt, IRQF_SHARED,
 			  "pcips2", ps2if);
 	if (ret == 0)
 		val = PS2_CTRL_ENABLE | PS2_CTRL_RXIRQ;
Index: linux-2.6.git/drivers/input/touchscreen/ads7846.c
===================================================================
--- linux-2.6.git.orig/drivers/input/touchscreen/ads7846.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/touchscreen/ads7846.c	2006-07-01 16:51:42.000000000 +0200
@@ -773,7 +773,7 @@ static int __devinit ads7846_probe(struc
 
 	ts->last_msg = m;
 
-	if (request_irq(spi->irq, ads7846_irq, SA_TRIGGER_FALLING,
+	if (request_irq(spi->irq, ads7846_irq, IRQF_TRIGGER_FALLING,
 			spi->dev.driver->name, ts)) {
 		dev_dbg(&spi->dev, "irq %d busy?\n", spi->irq);
 		err = -EBUSY;
Index: linux-2.6.git/drivers/input/touchscreen/corgi_ts.c
===================================================================
--- linux-2.6.git.orig/drivers/input/touchscreen/corgi_ts.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/touchscreen/corgi_ts.c	2006-07-01 16:51:42.000000000 +0200
@@ -318,7 +318,7 @@ static int __init corgits_probe(struct p
 	corgi_ssp_ads7846_putget((5u << ADSCTRL_ADR_SH) | ADSCTRL_STS);
 	mdelay(5);
 
-	if (request_irq(corgi_ts->irq_gpio, ts_interrupt, SA_INTERRUPT, "ts", corgi_ts)) {
+	if (request_irq(corgi_ts->irq_gpio, ts_interrupt, IRQF_DISABLED, "ts", corgi_ts)) {
 		err = -EBUSY;
 		goto fail;
 	}
Index: linux-2.6.git/drivers/input/touchscreen/h3600_ts_input.c
===================================================================
--- linux-2.6.git.orig/drivers/input/touchscreen/h3600_ts_input.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/touchscreen/h3600_ts_input.c	2006-07-01 16:51:42.000000000 +0200
@@ -399,14 +399,14 @@ static int h3600ts_connect(struct serio 
 	set_GPIO_IRQ_edge(GPIO_BITSY_NPOWER_BUTTON, GPIO_RISING_EDGE);
 
 	if (request_irq(IRQ_GPIO_BITSY_ACTION_BUTTON, action_button_handler,
-			SA_SHIRQ | SA_INTERRUPT, "h3600_action", &ts->dev)) {
+			IRQF_SHARED | IRQF_DISABLED, "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,
-			SA_SHIRQ | SA_INTERRUPT, "h3600_suspend", &ts->dev)) {
+			IRQF_SHARED | IRQF_DISABLED, "h3600_suspend", &ts->dev)) {
 		printk(KERN_ERR "h3600ts.c: Could not allocate Power Button IRQ!\n");
 		err = -EBUSY;
 		goto fail3;
Index: linux-2.6.git/drivers/input/touchscreen/hp680_ts_input.c
===================================================================
--- linux-2.6.git.orig/drivers/input/touchscreen/hp680_ts_input.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/input/touchscreen/hp680_ts_input.c	2006-07-01 16:51:42.000000000 +0200
@@ -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,
-			SA_INTERRUPT, MODNAME, 0) < 0) {
+			IRQF_DISABLED, MODNAME, 0) < 0) {
 		printk(KERN_ERR "hp680_touchscreen.c: Can't allocate irq %d\n",
 		       HP680_TS_IRQ);
 		input_unregister_device(hp680_ts_dev);
Index: linux-2.6.git/drivers/macintosh/smu.c
===================================================================
--- linux-2.6.git.orig/drivers/macintosh/smu.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/macintosh/smu.c	2006-07-01 16:51:42.000000000 +0200
@@ -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,
-				SA_SHIRQ, "SMU doorbell", smu) < 0) {
+				IRQF_SHARED, "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,
-				SA_SHIRQ, "SMU message", smu) < 0) {
+				IRQF_SHARED, "SMU message", smu) < 0) {
 			printk(KERN_WARNING "SMU: can't "
 			       "request interrupt %d\n",
 			       smu->msg_irq);
Index: linux-2.6.git/drivers/message/fusion/mptbase.c
===================================================================
--- linux-2.6.git.orig/drivers/message/fusion/mptbase.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/message/fusion/mptbase.c	2006-07-01 16:51:42.000000000 +0200
@@ -1705,7 +1705,7 @@ mpt_do_ioc_recovery(MPT_ADAPTER *ioc, u3
 				printk(MYIOC_s_INFO_FMT "PCI-MSI enabled\n",
 					ioc->name);
 			rc = request_irq(ioc->pcidev->irq, mpt_interrupt,
-					SA_SHIRQ, ioc->name, ioc);
+					IRQF_SHARED, ioc->name, ioc);
 			if (rc < 0) {
 				printk(MYIOC_s_ERR_FMT "Unable to allocate "
 					"interrupt %d!\n", ioc->name,
Index: linux-2.6.git/drivers/message/i2o/pci.c
===================================================================
--- linux-2.6.git.orig/drivers/message/i2o/pci.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/message/i2o/pci.c	2006-07-01 16:51:42.000000000 +0200
@@ -274,7 +274,7 @@ static int i2o_pci_irq_enable(struct i2o
 	writel(0xffffffff, c->irq_mask);
 
 	if (pdev->irq) {
-		rc = request_irq(pdev->irq, i2o_pci_interrupt, SA_SHIRQ,
+		rc = request_irq(pdev->irq, i2o_pci_interrupt, IRQF_SHARED,
 				 c->name, c);
 		if (rc < 0) {
 			printk(KERN_ERR "%s: unable to allocate interrupt %d."
Index: linux-2.6.git/drivers/mfd/ucb1x00-core.c
===================================================================
--- linux-2.6.git.orig/drivers/mfd/ucb1x00-core.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mfd/ucb1x00-core.c	2006-07-01 16:51:42.000000000 +0200
@@ -508,7 +508,7 @@ static int ucb1x00_probe(struct mcp *mcp
 		goto err_free;
 	}
 
-	ret = request_irq(ucb->irq, ucb1x00_irq, SA_TRIGGER_RISING,
+	ret = request_irq(ucb->irq, ucb1x00_irq, IRQF_TRIGGER_RISING,
 			  "UCB1x00", ucb);
 	if (ret) {
 		printk(KERN_ERR "ucb1x00: unable to grab irq%d: %d\n",
Index: linux-2.6.git/drivers/misc/ibmasm/module.c
===================================================================
--- linux-2.6.git.orig/drivers/misc/ibmasm/module.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/misc/ibmasm/module.c	2006-07-01 16:51:42.000000000 +0200
@@ -113,7 +113,7 @@ static int __devinit ibmasm_init_one(str
 		goto error_ioremap;
 	}
 
-	result = request_irq(sp->irq, ibmasm_interrupt_handler, SA_SHIRQ, sp->devname, (void*)sp);
+	result = request_irq(sp->irq, ibmasm_interrupt_handler, IRQF_SHARED, sp->devname, (void*)sp);
 	if (result) {
 		dev_err(sp->dev, "Failed to register interrupt handler\n");
 		goto error_request_irq;
Index: linux-2.6.git/drivers/mmc/at91_mci.c
===================================================================
--- linux-2.6.git.orig/drivers/mmc/at91_mci.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mmc/at91_mci.c	2006-07-01 16:51:42.000000000 +0200
@@ -850,7 +850,7 @@ static int at91_mci_probe(struct platfor
 	/*
 	 * Allocate the MCI interrupt
 	 */
-	ret = request_irq(AT91_ID_MCI, at91_mci_irq, SA_SHIRQ, DRIVER_NAME, host);
+	ret = request_irq(AT91_ID_MCI, at91_mci_irq, IRQF_SHARED, DRIVER_NAME, host);
 	if (ret) {
 		printk(KERN_ERR "Failed to request MCI interrupt\n");
 		clk_disable(mci_clk);
Index: linux-2.6.git/drivers/mmc/au1xmmc.c
===================================================================
--- linux-2.6.git.orig/drivers/mmc/au1xmmc.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mmc/au1xmmc.c	2006-07-01 16:51:42.000000000 +0200
@@ -886,7 +886,7 @@ static int __devinit au1xmmc_probe(struc
 	int i, ret = 0;
 
 	/* THe interrupt is shared among all controllers */
-	ret = request_irq(AU1100_SD_IRQ, au1xmmc_irq, SA_INTERRUPT, "MMC", 0);
+	ret = request_irq(AU1100_SD_IRQ, au1xmmc_irq, IRQF_DISABLED, "MMC", 0);
 
 	if (ret) {
 		printk(DRIVER_NAME "ERROR: Couldn't get int %d: %d\n",
Index: linux-2.6.git/drivers/mmc/mmci.c
===================================================================
--- linux-2.6.git.orig/drivers/mmc/mmci.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mmc/mmci.c	2006-07-01 16:51:42.000000000 +0200
@@ -531,11 +531,11 @@ static int mmci_probe(struct amba_device
 	writel(0, host->base + MMCIMASK1);
 	writel(0xfff, host->base + MMCICLEAR);
 
-	ret = request_irq(dev->irq[0], mmci_irq, SA_SHIRQ, DRIVER_NAME " (cmd)", host);
+	ret = request_irq(dev->irq[0], mmci_irq, IRQF_SHARED, DRIVER_NAME " (cmd)", host);
 	if (ret)
 		goto unmap;
 
-	ret = request_irq(dev->irq[1], mmci_pio_irq, SA_SHIRQ, DRIVER_NAME " (pio)", host);
+	ret = request_irq(dev->irq[1], mmci_pio_irq, IRQF_SHARED, DRIVER_NAME " (pio)", host);
 	if (ret)
 		goto irq0_free;
 
Index: linux-2.6.git/drivers/mmc/omap.c
===================================================================
--- linux-2.6.git.orig/drivers/mmc/omap.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mmc/omap.c	2006-07-01 16:51:42.000000000 +0200
@@ -1085,7 +1085,7 @@ static int __init mmc_omap_probe(struct 
 
 		omap_set_gpio_direction(host->switch_pin, 1);
 		ret = request_irq(OMAP_GPIO_IRQ(host->switch_pin),
-				  mmc_omap_switch_irq, SA_TRIGGER_RISING, DRIVER_NAME, host);
+				  mmc_omap_switch_irq, IRQF_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);
Index: linux-2.6.git/drivers/mmc/sdhci.c
===================================================================
--- linux-2.6.git.orig/drivers/mmc/sdhci.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mmc/sdhci.c	2006-07-01 16:51:42.000000000 +0200
@@ -1075,7 +1075,7 @@ static int __devinit sdhci_probe_slot(st
 
 	setup_timer(&host->timer, sdhci_timeout_timer, (long)host);
 
-	ret = request_irq(host->irq, sdhci_irq, SA_SHIRQ,
+	ret = request_irq(host->irq, sdhci_irq, IRQF_SHARED,
 		host->slot_descr, host);
 	if (ret)
 		goto unmap;
Index: linux-2.6.git/drivers/mmc/wbsd.c
===================================================================
--- linux-2.6.git.orig/drivers/mmc/wbsd.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/mmc/wbsd.c	2006-07-01 16:51:42.000000000 +0200
@@ -1553,7 +1553,7 @@ static int __devinit wbsd_request_irq(st
 	 * Allocate interrupt.
 	 */
 
-	ret = request_irq(irq, wbsd_irq, SA_SHIRQ, DRIVER_NAME, host);
+	ret = request_irq(irq, wbsd_irq, IRQF_SHARED, DRIVER_NAME, host);
 	if (ret)
 		return ret;
 
Index: linux-2.6.git/drivers/parport/parport_ax88796.c
===================================================================
--- linux-2.6.git.orig/drivers/parport/parport_ax88796.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/parport/parport_ax88796.c	2006-07-01 16:51:42.000000000 +0200
@@ -345,7 +345,7 @@ static int parport_ax88796_probe(struct 
 	if (irq >= 0) {
 		/* request irq */
 		ret = request_irq(irq, parport_ax88796_interrupt,
-				  SA_TRIGGER_FALLING, pdev->name, pp);
+				  IRQF_TRIGGER_FALLING, pdev->name, pp);
 
 		if (ret < 0)
 			goto exit_port;
Index: linux-2.6.git/drivers/parport/parport_mfc3.c
===================================================================
--- linux-2.6.git.orig/drivers/parport/parport_mfc3.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/parport/parport_mfc3.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_SHIRQ, p->name, &pp_mfc3_ops))
+				if (request_irq(IRQ_AMIGA_PORTS, mfc3_interrupt, IRQF_SHARED, p->name, &pp_mfc3_ops))
 					goto out_irq;
 		}
 
Index: linux-2.6.git/drivers/parport/parport_sunbpp.c
===================================================================
--- linux-2.6.git.orig/drivers/parport/parport_sunbpp.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/parport/parport_sunbpp.c	2006-07-01 16:51:42.000000000 +0200
@@ -322,7 +322,7 @@ static int __devinit init_one_port(struc
 	p->size = size;
 
 	if ((err = request_irq(p->irq, parport_sunbpp_interrupt,
-			       SA_SHIRQ, p->name, p)) != 0) {
+			       IRQF_SHARED, p->name, p)) != 0) {
 		goto out_put_port;
 	}
 
Index: linux-2.6.git/drivers/pcmcia/at91_cf.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/at91_cf.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/at91_cf.c	2006-07-01 16:51:42.000000000 +0200
@@ -267,7 +267,7 @@ static int __init at91_cf_probe(struct p
 
 	/* must be a GPIO; ergo must trigger on both edges */
 	status = request_irq(board->det_pin, at91_cf_irq,
-			SA_SAMPLE_RANDOM, driver_name, cf);
+			IRQF_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 p
 	 */
 	if (board->irq_pin) {
 		status = request_irq(board->irq_pin, at91_cf_irq,
-				SA_SHIRQ, driver_name, cf);
+				IRQF_SHARED, driver_name, cf);
 		if (status < 0)
 			goto fail0a;
 		cf->socket.pci_irq = board->irq_pin;
Index: linux-2.6.git/drivers/pcmcia/hd64465_ss.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/hd64465_ss.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/hd64465_ss.c	2006-07-01 16:51:42.000000000 +0200
@@ -761,7 +761,7 @@ static int hs_init_socket(hs_socket_t *s
 	
 	hd64465_register_irq_demux(sp->irq, hs_irq_demux, sp);
 	
-    	if ((err = request_irq(sp->irq, hs_interrupt, SA_INTERRUPT, MODNAME, sp)) < 0)
+    	if ((err = request_irq(sp->irq, hs_interrupt, IRQF_DISABLED, MODNAME, sp)) < 0)
 	    return err;
     	if (request_mem_region(sp->mem_base, sp->mem_length, MODNAME) == 0) {
     	    sp->mem_base = 0;
Index: linux-2.6.git/drivers/pcmcia/i82092.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/i82092.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/i82092.c	2006-07-01 16:51:42.000000000 +0200
@@ -149,7 +149,7 @@ static int __devinit i82092aa_pci_probe(
 
 	/* Register the interrupt handler */
 	dprintk(KERN_DEBUG "Requesting interrupt %i \n",dev->irq);
-	if ((ret = request_irq(dev->irq, i82092aa_interrupt, SA_SHIRQ, "i82092aa", i82092aa_interrupt))) {
+	if ((ret = request_irq(dev->irq, i82092aa_interrupt, IRQF_SHARED, "i82092aa", i82092aa_interrupt))) {
 		printk(KERN_ERR "i82092aa: Failed to register IRQ %d, aborting\n", dev->irq);
 		goto err_out_free_res;
 	}
Index: linux-2.6.git/drivers/pcmcia/i82365.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/i82365.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/i82365.c	2006-07-01 16:51:42.000000000 +0200
@@ -509,7 +509,7 @@ static irqreturn_t i365_count_irq(int ir
 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, SA_PROBEIRQ, "scan",
+    if (request_irq(irq, i365_count_irq, IRQF_PROBE_SHARED, "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 soc
     } else {
 	/* Fallback: just find interrupts that aren't in use */
 	for (i = 0; i < 16; i++)
-	    if ((mask0 & (1 << i)) && (_check_irq(i, SA_PROBEIRQ) == 0))
+	    if ((mask0 & (1 << i)) && (_check_irq(i, IRQF_PROBE_SHARED) == 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 
 	u_int cs_mask = mask & ((cs_irq) ? (1<<cs_irq) : ~(1<<12));
 	for (cs_irq = 15; cs_irq > 0; cs_irq--)
 	    if ((cs_mask & (1 << cs_irq)) &&
-		(_check_irq(cs_irq, SA_PROBEIRQ) == 0))
+		(_check_irq(cs_irq, IRQF_PROBE_SHARED) == 0))
 		break;
 	if (cs_irq) {
 	    grab_irq = 1;
Index: linux-2.6.git/drivers/pcmcia/omap_cf.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/omap_cf.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/omap_cf.c	2006-07-01 16:51:42.000000000 +0200
@@ -232,7 +232,7 @@ static int __init omap_cf_probe(struct d
 	dev_set_drvdata(dev, cf);
 
 	/* this primarily just shuts up irq handling noise */
-	status = request_irq(irq, omap_cf_irq, SA_SHIRQ,
+	status = request_irq(irq, omap_cf_irq, IRQF_SHARED,
 			driver_name, cf);
 	if (status < 0)
 		goto fail0;
Index: linux-2.6.git/drivers/pcmcia/pcmcia_resource.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/pcmcia_resource.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/pcmcia_resource.c	2006-07-01 16:51:42.000000000 +0200
@@ -801,9 +801,9 @@ int pcmcia_request_irq(struct pcmcia_dev
 	/* Decide what type of interrupt we are registering */
 	type = 0;
 	if (s->functions > 1)		/* All of this ought to be handled higher up */
-		type = SA_SHIRQ;
+		type = IRQF_SHARED;
 	if (req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)
-		type = SA_SHIRQ;
+		type = IRQF_SHARED;
 
 #ifdef CONFIG_PCMCIA_PROBE
 	if (s->irq.AssignedIRQ != 0) {
@@ -845,7 +845,7 @@ int pcmcia_request_irq(struct pcmcia_dev
 	if (ret && !s->irq.AssignedIRQ) {
 		if (!s->pci_irq)
 			return ret;
-		type = SA_SHIRQ;
+		type = IRQF_SHARED;
 		irq = s->pci_irq;
 	}
 
@@ -855,7 +855,7 @@ int pcmcia_request_irq(struct pcmcia_dev
 	}
 
 	/* Make sure the fact the request type was overridden is passed back */
-	if (type == SA_SHIRQ && !(req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)) {
+	if (type == IRQF_SHARED && !(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");
Index: linux-2.6.git/drivers/pcmcia/pd6729.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/pd6729.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/pd6729.c	2006-07-01 16:51:42.000000000 +0200
@@ -689,7 +689,7 @@ static int __devinit pd6729_pci_probe(st
 	pci_set_drvdata(dev, socket);
 	if (irq_mode == 1) {
 		/* Register the interrupt handler */
-		if ((ret = request_irq(dev->irq, pd6729_interrupt, SA_SHIRQ,
+		if ((ret = request_irq(dev->irq, pd6729_interrupt, IRQF_SHARED,
 							"pd6729", socket))) {
 			printk(KERN_ERR "pd6729: Failed to register irq %d, "
 							"aborting\n", dev->irq);
Index: linux-2.6.git/drivers/pcmcia/soc_common.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/soc_common.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/soc_common.c	2006-07-01 16:51:42.000000000 +0200
@@ -523,7 +523,7 @@ int soc_pcmcia_request_irqs(struct soc_p
 		if (irqs[i].sock != skt->nr)
 			continue;
 		res = request_irq(irqs[i].irq, soc_common_pcmcia_interrupt,
-				  SA_INTERRUPT, irqs[i].str, skt);
+				  IRQF_DISABLED, irqs[i].str, skt);
 		if (res)
 			break;
 		set_irq_type(irqs[i].irq, IRQT_NOEDGE);
Index: linux-2.6.git/drivers/pcmcia/vrc4171_card.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/vrc4171_card.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/vrc4171_card.c	2006-07-01 16:51:42.000000000 +0200
@@ -730,7 +730,7 @@ static int __devinit vrc4171_card_init(v
 
 	retval = vrc4171_add_sockets();
 	if (retval == 0)
-		retval = request_irq(vrc4171_irq, pccard_interrupt, SA_SHIRQ,
+		retval = request_irq(vrc4171_irq, pccard_interrupt, IRQF_SHARED,
 		                     vrc4171_card_name, vrc4171_sockets);
 
 	if (retval < 0) {
Index: linux-2.6.git/drivers/pcmcia/vrc4173_cardu.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/vrc4173_cardu.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/vrc4173_cardu.c	2006-07-01 16:51:42.000000000 +0200
@@ -500,7 +500,7 @@ static int __devinit vrc4173_cardu_probe
 		return -ENOMEM;
 	}
 
-	if (request_irq(dev->irq, cardu_interrupt, SA_SHIRQ, socket->name, socket) < 0) {
+	if (request_irq(dev->irq, cardu_interrupt, IRQF_SHARED, socket->name, socket) < 0) {
 		pcmcia_unregister_socket(socket->pcmcia_socket);
 		socket->pcmcia_socket = NULL;
 		iounmap(socket->base);
Index: linux-2.6.git/drivers/pcmcia/yenta_socket.c
===================================================================
--- linux-2.6.git.orig/drivers/pcmcia/yenta_socket.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pcmcia/yenta_socket.c	2006-07-01 16:51:42.000000000 +0200
@@ -923,7 +923,7 @@ static int yenta_probe_cb_irq(struct yen
 
 	socket->probe_status = 0;
 
-	if (request_irq(socket->cb_irq, yenta_probe_handler, SA_SHIRQ, "yenta", socket)) {
+	if (request_irq(socket->cb_irq, yenta_probe_handler, IRQF_SHARED, "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
 
 	/* We must finish initialization here */
 
-	if (!socket->cb_irq || request_irq(socket->cb_irq, yenta_interrupt, SA_SHIRQ, "yenta", socket)) {
+	if (!socket->cb_irq || request_irq(socket->cb_irq, yenta_interrupt, IRQF_SHARED, "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);
Index: linux-2.6.git/drivers/pnp/resource.c
===================================================================
--- linux-2.6.git.orig/drivers/pnp/resource.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/pnp/resource.c	2006-07-01 16:51:42.000000000 +0200
@@ -395,7 +395,7 @@ int pnp_check_irq(struct pnp_dev * dev, 
 	/* check if the resource is already in use, skip if the
 	 * device is active because it itself may be in use */
 	if(!dev->active) {
-		if (request_irq(*irq, pnp_test_handler, SA_INTERRUPT, "pnp", NULL))
+		if (request_irq(*irq, pnp_test_handler, IRQF_DISABLED, "pnp", NULL))
 			return 0;
 		free_irq(*irq, NULL);
 	}
Index: linux-2.6.git/drivers/rtc/rtc-at91.c
===================================================================
--- linux-2.6.git.orig/drivers/rtc/rtc-at91.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/rtc/rtc-at91.c	2006-07-01 16:51:42.000000000 +0200
@@ -293,7 +293,7 @@ static int __init at91_rtc_probe(struct 
 					AT91_RTC_CALEV);
 
 	ret = request_irq(AT91_ID_SYS, at91_rtc_interrupt,
-				SA_SHIRQ, "at91_rtc", pdev);
+				IRQF_SHARED, "at91_rtc", pdev);
 	if (ret) {
 		printk(KERN_ERR "at91_rtc: IRQ %d already in use.\n",
 				AT91_ID_SYS);
Index: linux-2.6.git/drivers/rtc/rtc-ds1553.c
===================================================================
--- linux-2.6.git.orig/drivers/rtc/rtc-ds1553.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/rtc/rtc-ds1553.c	2006-07-01 16:51:42.000000000 +0200
@@ -341,7 +341,7 @@ static int __init ds1553_rtc_probe(struc
 
 	if (pdata->irq >= 0) {
 		writeb(0, ioaddr + RTC_INTERRUPTS);
-		if (request_irq(pdata->irq, ds1553_rtc_interrupt, SA_SHIRQ,
+		if (request_irq(pdata->irq, ds1553_rtc_interrupt, IRQF_SHARED,
 				pdev->name, pdev) < 0) {
 			dev_warn(&pdev->dev, "interrupt not available.\n");
 			pdata->irq = -1;
Index: linux-2.6.git/drivers/rtc/rtc-pl031.c
===================================================================
--- linux-2.6.git.orig/drivers/rtc/rtc-pl031.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/rtc/rtc-pl031.c	2006-07-01 16:51:42.000000000 +0200
@@ -173,7 +173,7 @@ static int pl031_probe(struct amba_devic
 		goto out_no_remap;
 	}
 
-	if (request_irq(adev->irq[0], pl031_interrupt, SA_INTERRUPT,
+	if (request_irq(adev->irq[0], pl031_interrupt, IRQF_DISABLED,
 			"rtc-pl031", ldata->rtc)) {
 		ret = -EIO;
 		goto out_no_irq;
Index: linux-2.6.git/drivers/rtc/rtc-sa1100.c
===================================================================
--- linux-2.6.git.orig/drivers/rtc/rtc-sa1100.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/rtc/rtc-sa1100.c	2006-07-01 16:51:42.000000000 +0200
@@ -157,19 +157,19 @@ static int sa1100_rtc_open(struct device
 {
 	int ret;
 
-	ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, SA_INTERRUPT,
+	ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, IRQF_DISABLED,
 				"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, SA_INTERRUPT,
+	ret = request_irq(IRQ_RTCAlrm, sa1100_rtc_interrupt, IRQF_DISABLED,
 				"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, SA_INTERRUPT,
+	ret = request_irq(IRQ_OST1, timer1_interrupt, IRQF_DISABLED,
 				"rtc timer", dev);
 	if (ret) {
 		dev_err(dev, "IRQ %d already in use.\n", IRQ_OST1);
Index: linux-2.6.git/drivers/rtc/rtc-vr41xx.c
===================================================================
--- linux-2.6.git.orig/drivers/rtc/rtc-vr41xx.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/rtc/rtc-vr41xx.c	2006-07-01 16:51:42.000000000 +0200
@@ -345,11 +345,11 @@ static int __devinit rtc_probe(struct pl
 	spin_unlock_irq(&rtc_lock);
 
 	irq = ELAPSEDTIME_IRQ;
-	retval = request_irq(irq, elapsedtime_interrupt, SA_INTERRUPT,
+	retval = request_irq(irq, elapsedtime_interrupt, IRQF_DISABLED,
 	                     "elapsed_time", pdev);
 	if (retval == 0) {
 		irq = RTCLONG1_IRQ;
-		retval = request_irq(irq, rtclong1_interrupt, SA_INTERRUPT,
+		retval = request_irq(irq, rtclong1_interrupt, IRQF_DISABLED,
 		                     "rtclong1", pdev);
 	}
 
Index: linux-2.6.git/drivers/sbus/char/aurora.c
===================================================================
--- linux-2.6.git.orig/drivers/sbus/char/aurora.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/sbus/char/aurora.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_SHIRQ, "sio16", bp)) {
+				    !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "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, SA_SHIRQ, "sio16", bp)) {
+				    !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "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, SA_SHIRQ, "sio16", bp)) {
+				    !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {
 					free_irq(bp->irq|0x30, bp);
 				} else
 				for(grrr=0;grrr<TYPE_1_IRQS;grrr++) {
-					if ((bp->irq=type_1_irq[grrr])&&!request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) {
+					if ((bp->irq=type_1_irq[grrr])&&!request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {
 						free_irq(bp->irq|0x30, bp);
 						break;
 					} else {
@@ -909,14 +909,14 @@ static int aurora_setup_board(struct Aur
 #ifdef AURORA_ALLIRQ
 	int i;
 	for (i = 0; i < AURORA_ALLIRQ; i++) {
-		error = request_irq(allirq[i]|0x30, aurora_interrupt, SA_SHIRQ,
+		error = request_irq(allirq[i]|0x30, aurora_interrupt, IRQF_SHARED,
 				    "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, SA_SHIRQ,
+	error = request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED,
 			    "sio16", bp);
 	if (error) {
 		printk(KERN_ERR "IRQ request error %d\n", error);
Index: linux-2.6.git/drivers/sbus/char/bbc_i2c.c
===================================================================
--- linux-2.6.git.orig/drivers/sbus/char/bbc_i2c.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/sbus/char/bbc_i2c.c	2006-07-01 16:51:42.000000000 +0200
@@ -377,7 +377,7 @@ static int __init attach_one_i2c(struct 
 	bp->waiting = 0;
 	init_waitqueue_head(&bp->wq);
 	if (request_irq(edev->irqs[0], bbc_i2c_interrupt,
-			SA_SHIRQ, "bbc_i2c", bp))
+			IRQF_SHARED, "bbc_i2c", bp))
 		goto fail;
 
 	bp->index = index;
Index: linux-2.6.git/drivers/sbus/char/cpwatchdog.c
===================================================================
--- linux-2.6.git.orig/drivers/sbus/char/cpwatchdog.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/sbus/char/cpwatchdog.c	2006-07-01 16:51:42.000000000 +0200
@@ -301,7 +301,7 @@ static int wd_open(struct inode *inode, 
 	{	
 		if (request_irq(wd_dev.irq, 
 						&wd_interrupt, 
-						SA_SHIRQ,
+						IRQF_SHARED,
 						WD_OBPNAME,
 						(void *)wd_dev.regs)) {
 			printk("%s: Cannot register IRQ %d\n", 
Index: linux-2.6.git/drivers/sn/ioc3.c
===================================================================
--- linux-2.6.git.orig/drivers/sn/ioc3.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/sn/ioc3.c	2006-07-01 16:51:42.000000000 +0200
@@ -706,7 +706,7 @@ static int ioc3_probe(struct pci_dev *pd
 		writel(~0, &idd->vma->eisr);
 
 		idd->dual_irq = 1;
-		if (!request_irq(pdev->irq, ioc3_intr_eth, SA_SHIRQ,
+		if (!request_irq(pdev->irq, ioc3_intr_eth, IRQF_SHARED,
 				 "ioc3-eth", (void *)idd)) {
 			idd->irq_eth = pdev->irq;
 		} else {
@@ -714,7 +714,7 @@ static int ioc3_probe(struct pci_dev *pd
 			       "%s : request_irq fails for IRQ 0x%x\n ",
 			       __FUNCTION__, pdev->irq);
 		}
-		if (!request_irq(pdev->irq+2, ioc3_intr_io, SA_SHIRQ,
+		if (!request_irq(pdev->irq+2, ioc3_intr_io, IRQF_SHARED,
 				 "ioc3-io", (void *)idd)) {
 			idd->irq_io = pdev->irq+2;
 		} else {
@@ -723,7 +723,7 @@ static int ioc3_probe(struct pci_dev *pd
 			       __FUNCTION__, pdev->irq+2);
 		}
 	} else {
-		if (!request_irq(pdev->irq, ioc3_intr_io, SA_SHIRQ,
+		if (!request_irq(pdev->irq, ioc3_intr_io, IRQF_SHARED,
 				 "ioc3", (void *)idd)) {
 			idd->irq_io = pdev->irq;
 		} else {
Index: linux-2.6.git/drivers/tc/zs.c
===================================================================
--- linux-2.6.git.orig/drivers/tc/zs.c	2006-07-01 16:51:17.000000000 +0200
+++ linux-2.6.git/drivers/tc/zs.c	2006-07-01 16:51:42.000000000 +0200
@@ -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, SA_SHIRQ,
+		if (request_irq(zs_soft[channel].irq, rs_interrupt, IRQF_SHARED,
 				"scc", &zs_soft[channel]))
 			printk(KERN_ERR "decserial: can't get irq %d\n",
 			       zs_soft[channel].irq);

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 35/44] drivers/net: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (33 preceding siblings ...)
  2006-07-01 14:54 ` [RFC][patch 34/44] misc drivers: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 36/44] PARISC: " Thomas Gleixner
                   ` (9 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	jgarzik

[-- Attachment #1: irqflags-drivers-net.patch --]
[-- Type: text/plain, Size: 96210 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/net/3c515.c                           |    2 +-
 drivers/net/3c523.c                           |    2 +-
 drivers/net/3c527.c                           |    2 +-
 drivers/net/3c59x.c                           |    4 ++--
 drivers/net/8139cp.c                          |    2 +-
 drivers/net/8139too.c                         |    2 +-
 drivers/net/a2065.c                           |    2 +-
 drivers/net/acenic.c                          |    2 +-
 drivers/net/amd8111e.c                        |    2 +-
 drivers/net/apne.c                            |    2 +-
 drivers/net/arcnet/com20020-pci.c             |    2 +-
 drivers/net/ariadne.c                         |    2 +-
 drivers/net/b44.c                             |    4 ++--
 drivers/net/bnx2.c                            |    6 +++---
 drivers/net/cassini.c                         |    2 +-
 drivers/net/chelsio/cxgb2.c                   |    2 +-
 drivers/net/cris/eth_v10.c                    |    2 +-
 drivers/net/defxx.c                           |    2 +-
 drivers/net/dgrs.c                            |    2 +-
 drivers/net/dl2k.c                            |    2 +-
 drivers/net/dm9000.c                          |    2 +-
 drivers/net/e100.c                            |    2 +-
 drivers/net/e1000/e1000_ethtool.c             |    6 +++---
 drivers/net/e1000/e1000_main.c                |    2 +-
 drivers/net/eepro.c                           |    2 +-
 drivers/net/eepro100.c                        |    2 +-
 drivers/net/epic100.c                         |    2 +-
 drivers/net/fealnx.c                          |    2 +-
 drivers/net/forcedeth.c                       |   18 +++++++++---------
 drivers/net/fs_enet/fs_enet-main.c            |    2 +-
 drivers/net/gt96100eth.c                      |    2 +-
 drivers/net/hamachi.c                         |    2 +-
 drivers/net/hamradio/baycom_ser_fdx.c         |    2 +-
 drivers/net/hamradio/baycom_ser_hdx.c         |    2 +-
 drivers/net/hamradio/scc.c                    |    2 +-
 drivers/net/hamradio/yam.c                    |    2 +-
 drivers/net/hp100.c                           |    2 +-
 drivers/net/hydra.c                           |    2 +-
 drivers/net/ibmlana.c                         |    2 +-
 drivers/net/ioc3-eth.c                        |    2 +-
 drivers/net/irda/donauboe.c                   |    4 ++--
 drivers/net/irda/vlsi_ir.c                    |    2 +-
 drivers/net/ixgb/ixgb_main.c                  |    2 +-
 drivers/net/ixp2000/ixpdev.c                  |    2 +-
 drivers/net/jazzsonic.c                       |    2 +-
 drivers/net/lp486e.c                          |    2 +-
 drivers/net/mipsnet.c                         |    2 +-
 drivers/net/mv643xx_eth.c                     |    2 +-
 drivers/net/myri10ge/myri10ge.c               |    4 ++--
 drivers/net/myri_sbus.c                       |    2 +-
 drivers/net/natsemi.c                         |    2 +-
 drivers/net/ne2k-pci.c                        |    2 +-
 drivers/net/netx-eth.c                        |    2 +-
 drivers/net/ns83820.c                         |    2 +-
 drivers/net/pci-skeleton.c                    |    2 +-
 drivers/net/pcmcia/axnet_cs.c                 |    2 +-
 drivers/net/pcmcia/pcnet_cs.c                 |    2 +-
 drivers/net/pcnet32.c                         |    2 +-
 drivers/net/phy/phy.c                         |    2 +-
 drivers/net/r8169.c                           |    2 +-
 drivers/net/rrunner.c                         |    2 +-
 drivers/net/s2io.c                            |    4 ++--
 drivers/net/sb1250-mac.c                      |    2 +-
 drivers/net/sis190.c                          |    2 +-
 drivers/net/sis900.c                          |    2 +-
 drivers/net/sk98lin/skge.c                    |    8 ++++----
 drivers/net/sk_mca.c                          |    2 +-
 drivers/net/skfp/skfddi.c                     |    2 +-
 drivers/net/skge.c                            |    2 +-
 drivers/net/sky2.c                            |    4 ++--
 drivers/net/smc-ultra32.c                     |    2 +-
 drivers/net/smc911x.c                         |    2 +-
 drivers/net/smc91x.h                          |    4 ++--
 drivers/net/spider_net.c                      |    2 +-
 drivers/net/starfire.c                        |    2 +-
 drivers/net/sun3lance.c                       |    2 +-
 drivers/net/sunbmac.c                         |    2 +-
 drivers/net/sundance.c                        |    2 +-
 drivers/net/sungem.c                          |    2 +-
 drivers/net/sunhme.c                          |    4 ++--
 drivers/net/sunlance.c                        |    2 +-
 drivers/net/sunqe.c                           |    2 +-
 drivers/net/tc35815.c                         |    2 +-
 drivers/net/tg3.c                             |    6 +++---
 drivers/net/tlan.c                            |    2 +-
 drivers/net/tokenring/3c359.c                 |    2 +-
 drivers/net/tokenring/abyss.c                 |    2 +-
 drivers/net/tokenring/lanstreamer.c           |    2 +-
 drivers/net/tokenring/madgemc.c               |    2 +-
 drivers/net/tokenring/olympic.c               |    2 +-
 drivers/net/tokenring/smctr.c                 |    4 ++--
 drivers/net/tokenring/tmspci.c                |    2 +-
 drivers/net/tulip/de2104x.c                   |    2 +-
 drivers/net/tulip/de4x5.c                     |    8 ++++----
 drivers/net/tulip/dmfe.c                      |    2 +-
 drivers/net/tulip/tulip_core.c                |    4 ++--
 drivers/net/tulip/uli526x.c                   |    2 +-
 drivers/net/tulip/winbond-840.c               |    2 +-
 drivers/net/tulip/xircom_cb.c                 |    2 +-
 drivers/net/tulip/xircom_tulip_cb.c           |    2 +-
 drivers/net/typhoon.c                         |    2 +-
 drivers/net/via-rhine.c                       |    4 ++--
 drivers/net/via-velocity.c                    |    2 +-
 drivers/net/wan/dscc4.c                       |    2 +-
 drivers/net/wan/farsync.c                     |    2 +-
 drivers/net/wan/hostess_sv11.c                |    2 +-
 drivers/net/wan/lmc/lmc_main.c                |    2 +-
 drivers/net/wan/pc300_drv.c                   |    2 +-
 drivers/net/wan/pci200syn.c                   |    2 +-
 drivers/net/wan/sbni.c                        |    2 +-
 drivers/net/wan/sealevel.c                    |    2 +-
 drivers/net/wan/wanxl.c                       |    2 +-
 drivers/net/wireless/airo.c                   |    2 +-
 drivers/net/wireless/atmel.c                  |    2 +-
 drivers/net/wireless/bcm43xx/bcm43xx_main.c   |    2 +-
 drivers/net/wireless/hostap/hostap_pci.c      |    2 +-
 drivers/net/wireless/hostap/hostap_plx.c      |    2 +-
 drivers/net/wireless/ipw2100.c                |    2 +-
 drivers/net/wireless/ipw2200.c                |    2 +-
 drivers/net/wireless/orinoco_nortel.c         |    2 +-
 drivers/net/wireless/orinoco_pci.c            |    2 +-
 drivers/net/wireless/orinoco_pci.h            |    2 +-
 drivers/net/wireless/orinoco_plx.c            |    2 +-
 drivers/net/wireless/orinoco_tmd.c            |    2 +-
 drivers/net/wireless/prism54/islpci_hotplug.c |    2 +-
 drivers/net/yellowfin.c                       |    2 +-
 drivers/net/zorro8390.c                       |    2 +-
 include/net/irda/irda_device.h                |    2 +-
 128 files changed, 159 insertions(+), 159 deletions(-)

Index: linux-2.6.git/drivers/net/3c515.c
===================================================================
--- linux-2.6.git.orig/drivers/net/3c515.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/3c515.c	2006-07-01 16:51:43.000000000 +0200
@@ -760,7 +760,7 @@ static int corkscrew_open(struct net_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, SA_SHIRQ,
+	} else if (request_irq(dev->irq, &corkscrew_interrupt, IRQF_SHARED,
 			       vp->product_name, dev)) {
 		return -EAGAIN;
 	}
Index: linux-2.6.git/drivers/net/3c523.c
===================================================================
--- linux-2.6.git.orig/drivers/net/3c523.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/3c523.c	2006-07-01 16:51:43.000000000 +0200
@@ -289,7 +289,7 @@ static int elmc_open(struct net_device *
 
 	elmc_id_attn586();	/* disable interrupts */
 
-	ret = request_irq(dev->irq, &elmc_interrupt, SA_SHIRQ | SA_SAMPLE_RANDOM,
+	ret = request_irq(dev->irq, &elmc_interrupt, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
 			  dev->name, dev);
 	if (ret) {
 		printk(KERN_ERR "%s: couldn't get irq %d\n", dev->name, dev->irq);
Index: linux-2.6.git/drivers/net/3c527.c
===================================================================
--- linux-2.6.git.orig/drivers/net/3c527.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/3c527.c	2006-07-01 16:51:43.000000000 +0200
@@ -435,7 +435,7 @@ static int __init mc32_probe1(struct net
 	 *	Grab the IRQ
 	 */
 
-	err = request_irq(dev->irq, &mc32_interrupt, SA_SHIRQ | SA_SAMPLE_RANDOM, DRV_NAME, dev);
+	err = request_irq(dev->irq, &mc32_interrupt, IRQF_SHARED | IRQF_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);
Index: linux-2.6.git/drivers/net/3c59x.c
===================================================================
--- linux-2.6.git.orig/drivers/net/3c59x.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/3c59x.c	2006-07-01 16:51:43.000000000 +0200
@@ -996,7 +996,7 @@ static int vortex_resume(struct pci_dev 
 		pci_enable_device(pdev);
 		pci_set_master(pdev);
 		if (request_irq(dev->irq, vp->full_bus_master_rx ?
-				&boomerang_interrupt : &vortex_interrupt, SA_SHIRQ, dev->name, dev)) {
+				&boomerang_interrupt : &vortex_interrupt, IRQF_SHARED, 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, SA_SHIRQ, dev->name, dev))) {
+				&boomerang_interrupt : &vortex_interrupt, IRQF_SHARED, dev->name, dev))) {
 		printk(KERN_ERR "%s: Could not reserve IRQ %d\n", dev->name, dev->irq);
 		goto out;
 	}
Index: linux-2.6.git/drivers/net/8139cp.c
===================================================================
--- linux-2.6.git.orig/drivers/net/8139cp.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/8139cp.c	2006-07-01 16:51:43.000000000 +0200
@@ -1203,7 +1203,7 @@ static int cp_open (struct net_device *d
 
 	cp_init_hw(cp);
 
-	rc = request_irq(dev->irq, cp_interrupt, SA_SHIRQ, dev->name, dev);
+	rc = request_irq(dev->irq, cp_interrupt, IRQF_SHARED, dev->name, dev);
 	if (rc)
 		goto err_out_hw;
 
Index: linux-2.6.git/drivers/net/8139too.c
===================================================================
--- linux-2.6.git.orig/drivers/net/8139too.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/8139too.c	2006-07-01 16:51:43.000000000 +0200
@@ -1310,7 +1310,7 @@ static int rtl8139_open (struct net_devi
 	int retval;
 	void __iomem *ioaddr = tp->mmio_addr;
 
-	retval = request_irq (dev->irq, rtl8139_interrupt, SA_SHIRQ, dev->name, dev);
+	retval = request_irq (dev->irq, rtl8139_interrupt, IRQF_SHARED, dev->name, dev);
 	if (retval)
 		return retval;
 
Index: linux-2.6.git/drivers/net/a2065.c
===================================================================
--- linux-2.6.git.orig/drivers/net/a2065.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/a2065.c	2006-07-01 16:51:43.000000000 +0200
@@ -495,7 +495,7 @@ static int lance_open (struct net_device
 	ll->rdp = LE_C0_STOP;
 
 	/* Install the Interrupt handler */
-	ret = request_irq(IRQ_AMIGA_PORTS, lance_interrupt, SA_SHIRQ,
+	ret = request_irq(IRQ_AMIGA_PORTS, lance_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (ret) return ret;
 
Index: linux-2.6.git/drivers/net/acenic.c
===================================================================
--- linux-2.6.git.orig/drivers/net/acenic.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/acenic.c	2006-07-01 16:51:43.000000000 +0200
@@ -1194,7 +1194,7 @@ static int __devinit ace_init(struct net
 		goto init_error;
 	}
 
-	ecode = request_irq(pdev->irq, ace_interrupt, SA_SHIRQ,
+	ecode = request_irq(pdev->irq, ace_interrupt, IRQF_SHARED,
 			    DRV_NAME, dev);
 	if (ecode) {
 		printk(KERN_WARNING "%s: Requested IRQ %d is busy\n",
Index: linux-2.6.git/drivers/net/amd8111e.c
===================================================================
--- linux-2.6.git.orig/drivers/net/amd8111e.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/amd8111e.c	2006-07-01 16:51:43.000000000 +0200
@@ -1376,7 +1376,7 @@ static int amd8111e_open(struct net_devi
 {
 	struct amd8111e_priv *lp = netdev_priv(dev);
 
-	if(dev->irq ==0 || request_irq(dev->irq, amd8111e_interrupt, SA_SHIRQ,
+	if(dev->irq ==0 || request_irq(dev->irq, amd8111e_interrupt, IRQF_SHARED,
 					 dev->name, dev)) 
 		return -EAGAIN;
 
Index: linux-2.6.git/drivers/net/apne.c
===================================================================
--- linux-2.6.git.orig/drivers/net/apne.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/apne.c	2006-07-01 16:51:43.000000000 +0200
@@ -313,7 +313,7 @@ static int __init apne_probe1(struct net
     dev->base_addr = ioaddr;
 
     /* Install the Interrupt handler */
-    i = request_irq(IRQ_AMIGA_PORTS, apne_interrupt, SA_SHIRQ, DRV_NAME, dev);
+    i = request_irq(IRQ_AMIGA_PORTS, apne_interrupt, IRQF_SHARED, DRV_NAME, dev);
     if (i) return i;
 
     for(i = 0; i < ETHER_ADDR_LEN; i++) {
Index: linux-2.6.git/drivers/net/ariadne.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ariadne.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ariadne.c	2006-07-01 16:51:43.000000000 +0200
@@ -320,7 +320,7 @@ static int ariadne_open(struct net_devic
 
     netif_start_queue(dev);
 
-    i = request_irq(IRQ_AMIGA_PORTS, ariadne_interrupt, SA_SHIRQ,
+    i = request_irq(IRQ_AMIGA_PORTS, ariadne_interrupt, IRQF_SHARED,
                     dev->name, dev);
     if (i) return i;
 
Index: linux-2.6.git/drivers/net/b44.c
===================================================================
--- linux-2.6.git.orig/drivers/net/b44.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/b44.c	2006-07-01 16:51:43.000000000 +0200
@@ -1421,7 +1421,7 @@ static int b44_open(struct net_device *d
 
 	b44_check_phy(bp);
 
-	err = request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev);
+	err = request_irq(dev->irq, b44_interrupt, IRQF_SHARED, 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 *pd
 	if (!netif_running(dev))
 		return 0;
 
-	if (request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev))
+	if (request_irq(dev->irq, b44_interrupt, IRQF_SHARED, dev->name, dev))
 		printk(KERN_ERR PFX "%s: request_irq failed\n", dev->name);
 
 	spin_lock_irq(&bp->lock);
Index: linux-2.6.git/drivers/net/bnx2.c
===================================================================
--- linux-2.6.git.orig/drivers/net/bnx2.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/bnx2.c	2006-07-01 16:51:43.000000000 +0200
@@ -4260,11 +4260,11 @@ bnx2_open(struct net_device *dev)
 		}
 		else {
 			rc = request_irq(bp->pdev->irq, bnx2_interrupt,
-					SA_SHIRQ, dev->name, dev);
+					IRQF_SHARED, dev->name, dev);
 		}
 	}
 	else {
-		rc = request_irq(bp->pdev->irq, bnx2_interrupt, SA_SHIRQ,
+		rc = request_irq(bp->pdev->irq, bnx2_interrupt, IRQF_SHARED,
 				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,
-					SA_SHIRQ, dev->name, dev);
+					IRQF_SHARED, dev->name, dev);
 			}
 			if (rc) {
 				bnx2_free_skbs(bp);
Index: linux-2.6.git/drivers/net/cassini.c
===================================================================
--- linux-2.6.git.orig/drivers/net/cassini.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/cassini.c	2006-07-01 16:51:43.000000000 +0200
@@ -4349,7 +4349,7 @@ static int cas_open(struct net_device *d
 	 * mapping to expose them
 	 */
 	if (request_irq(cp->pdev->irq, cas_interrupt,
-			SA_SHIRQ, dev->name, (void *) dev)) {
+			IRQF_SHARED, dev->name, (void *) dev)) {
 		printk(KERN_ERR "%s: failed to request irq !\n", 
 		       cp->dev->name);
 		err = -EAGAIN;
Index: linux-2.6.git/drivers/net/defxx.c
===================================================================
--- linux-2.6.git.orig/drivers/net/defxx.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/defxx.c	2006-07-01 16:51:43.000000000 +0200
@@ -1228,7 +1228,7 @@ static int dfx_open(struct net_device *d
 	
 	/* Register IRQ - support shared interrupts by passing device ptr */
 
-	ret = request_irq(dev->irq, dfx_interrupt, SA_SHIRQ, dev->name, dev);
+	ret = request_irq(dev->irq, dfx_interrupt, IRQF_SHARED, dev->name, dev);
 	if (ret) {
 		printk(KERN_ERR "%s: Requested IRQ %d is busy\n", dev->name, dev->irq);
 		return ret;
Index: linux-2.6.git/drivers/net/dgrs.c
===================================================================
--- linux-2.6.git.orig/drivers/net/dgrs.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/dgrs.c	2006-07-01 16:51:43.000000000 +0200
@@ -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, SA_SHIRQ, "RightSwitch", dev);
+	rc = request_irq(dev->irq, &dgrs_intr, IRQF_SHARED, "RightSwitch", dev);
 	if (rc)
 		goto err_out;
 
Index: linux-2.6.git/drivers/net/dl2k.c
===================================================================
--- linux-2.6.git.orig/drivers/net/dl2k.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/dl2k.c	2006-07-01 16:51:43.000000000 +0200
@@ -440,7 +440,7 @@ rio_open (struct net_device *dev)
 	int i;
 	u16 macctrl;
 	
-	i = request_irq (dev->irq, &rio_interrupt, SA_SHIRQ, dev->name, dev);
+	i = request_irq (dev->irq, &rio_interrupt, IRQF_SHARED, dev->name, dev);
 	if (i)
 		return i;
 	
Index: linux-2.6.git/drivers/net/dm9000.c
===================================================================
--- linux-2.6.git.orig/drivers/net/dm9000.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/dm9000.c	2006-07-01 16:51:43.000000000 +0200
@@ -603,7 +603,7 @@ dm9000_open(struct net_device *dev)
 
 	PRINTK2("entering dm9000_open\n");
 
-	if (request_irq(dev->irq, &dm9000_interrupt, SA_SHIRQ, dev->name, dev))
+	if (request_irq(dev->irq, &dm9000_interrupt, IRQF_SHARED, dev->name, dev))
 		return -EAGAIN;
 
 	/* Initialize DM9000 board */
Index: linux-2.6.git/drivers/net/e100.c
===================================================================
--- linux-2.6.git.orig/drivers/net/e100.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/e100.c	2006-07-01 16:51:43.000000000 +0200
@@ -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, SA_SHIRQ,
+	if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED,
 		nic->netdev->name, nic->netdev)))
 		goto err_no_irq;
 	netif_wake_queue(nic->netdev);
Index: linux-2.6.git/drivers/net/eepro100.c
===================================================================
--- linux-2.6.git.orig/drivers/net/eepro100.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/eepro100.c	2006-07-01 16:51:43.000000000 +0200
@@ -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, SA_SHIRQ, dev->name, dev);
+	retval = request_irq(dev->irq, &speedo_interrupt, IRQF_SHARED, dev->name, dev);
 	if (retval) {
 		return retval;
 	}
Index: linux-2.6.git/drivers/net/eepro.c
===================================================================
--- linux-2.6.git.orig/drivers/net/eepro.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/eepro.c	2006-07-01 16:51:43.000000000 +0200
@@ -920,7 +920,7 @@ static int	eepro_grab_irq(struct net_dev
 
 		eepro_sw2bank0(ioaddr); /* Switch back to Bank 0 */
 
-		if (request_irq (*irqp, NULL, SA_SHIRQ, "bogus", dev) != EBUSY) {
+		if (request_irq (*irqp, NULL, IRQF_SHARED, "bogus", dev) != EBUSY) {
 			unsigned long irq_mask;
 			/* Twinkle the interrupt, and check if it's seen */
 			irq_mask = probe_irq_on();
Index: linux-2.6.git/drivers/net/epic100.c
===================================================================
--- linux-2.6.git.orig/drivers/net/epic100.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/epic100.c	2006-07-01 16:51:43.000000000 +0200
@@ -713,7 +713,7 @@ static int epic_open(struct net_device *
 	/* Soft reset the chip. */
 	outl(0x4001, ioaddr + GENCTL);
 
-	if ((retval = request_irq(dev->irq, &epic_interrupt, SA_SHIRQ, dev->name, dev)))
+	if ((retval = request_irq(dev->irq, &epic_interrupt, IRQF_SHARED, dev->name, dev)))
 		return retval;
 
 	epic_init_ring(dev);
Index: linux-2.6.git/drivers/net/fealnx.c
===================================================================
--- linux-2.6.git.orig/drivers/net/fealnx.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/fealnx.c	2006-07-01 16:51:43.000000000 +0200
@@ -834,7 +834,7 @@ static int netdev_open(struct net_device
 
 	iowrite32(0x00000001, ioaddr + BCR);	/* Reset */
 
-	if (request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev))
+	if (request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev))
 		return -EAGAIN;
 
 	for (i = 0; i < 3; i++)
Index: linux-2.6.git/drivers/net/forcedeth.c
===================================================================
--- linux-2.6.git.orig/drivers/net/forcedeth.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/forcedeth.c	2006-07-01 16:51:43.000000000 +0200
@@ -2622,21 +2622,21 @@ static int nv_request_irq(struct net_dev
 			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, SA_SHIRQ, dev->name, dev) != 0) {
+				if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector, &nv_nic_irq_rx, IRQF_SHARED, 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, SA_SHIRQ, dev->name, dev) != 0) {
+				if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector, &nv_nic_irq_tx, IRQF_SHARED, 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, SA_SHIRQ, dev->name, dev) != 0) {
+				if (request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector, &nv_nic_irq_other, IRQF_SHARED, 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_dev
 			} else {
 				/* Request irq for all interrupts */
 				if ((!intr_test &&
-				     request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq, SA_SHIRQ, dev->name, dev) != 0) ||
+				     request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq, IRQF_SHARED, dev->name, dev) != 0) ||
 				    (intr_test &&
-				     request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq_test, SA_SHIRQ, dev->name, dev) != 0)) {
+				     request_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector, &nv_nic_irq_test, IRQF_SHARED, 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_dev
 	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, SA_SHIRQ, dev->name, dev) != 0) ||
-			    (intr_test && request_irq(np->pci_dev->irq, &nv_nic_irq_test, SA_SHIRQ, dev->name, dev) != 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)) {
 				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_dev
 		}
 	}
 	if (ret != 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))
+		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))
 			goto out_err;
 
 	}
Index: linux-2.6.git/drivers/net/gt96100eth.c
===================================================================
--- linux-2.6.git.orig/drivers/net/gt96100eth.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/gt96100eth.c	2006-07-01 16:51:43.000000000 +0200
@@ -1030,7 +1030,7 @@ gt96100_open(struct net_device *dev)
 	}
 
 	if ((retval = request_irq(dev->irq, &gt96100_interrupt,
-				  SA_SHIRQ, dev->name, dev))) {
+				  IRQF_SHARED, dev->name, dev))) {
 		err("unable to get IRQ %d\n", dev->irq);
 		return retval;
 	}
Index: linux-2.6.git/drivers/net/hamachi.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hamachi.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hamachi.c	2006-07-01 16:51:43.000000000 +0200
@@ -871,7 +871,7 @@ static int hamachi_open(struct net_devic
 	u32 rx_int_var, tx_int_var;
 	u16 fifo_info;
 
-	i = request_irq(dev->irq, &hamachi_interrupt, SA_SHIRQ, dev->name, dev);
+	i = request_irq(dev->irq, &hamachi_interrupt, IRQF_SHARED, dev->name, dev);
 	if (i)
 		return i;
 
Index: linux-2.6.git/drivers/net/hp100.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hp100.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hp100.c	2006-07-01 16:51:43.000000000 +0200
@@ -1079,7 +1079,7 @@ static int hp100_open(struct net_device 
 	/* 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 ? SA_SHIRQ : SA_INTERRUPT,
+			HP100_BUS_EISA ? IRQF_SHARED : IRQF_DISABLED,
 			"hp100", dev)) {
 		printk("hp100: %s: unable to get IRQ %d\n", dev->name, dev->irq);
 		return -EAGAIN;
Index: linux-2.6.git/drivers/net/hydra.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hydra.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hydra.c	2006-07-01 16:51:43.000000000 +0200
@@ -117,7 +117,7 @@ static int __devinit hydra_init(struct z
     dev->irq = IRQ_AMIGA_PORTS;
 
     /* Install the Interrupt handler */
-    if (request_irq(IRQ_AMIGA_PORTS, ei_interrupt, SA_SHIRQ, "Hydra Ethernet",
+    if (request_irq(IRQ_AMIGA_PORTS, ei_interrupt, IRQF_SHARED, "Hydra Ethernet",
 		    dev)) {
 	free_netdev(dev);
 	return -EAGAIN;
Index: linux-2.6.git/drivers/net/ibmlana.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ibmlana.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ibmlana.c	2006-07-01 16:51:43.000000000 +0200
@@ -782,7 +782,7 @@ static int ibmlana_open(struct net_devic
 
 	/* register resources - only necessary for IRQ */
 
-	result = request_irq(priv->realirq, irq_handler, SA_SHIRQ | SA_SAMPLE_RANDOM, dev->name, dev);
+	result = request_irq(priv->realirq, irq_handler, IRQF_SHARED | IRQF_SAMPLE_RANDOM, dev->name, dev);
 	if (result != 0) {
 		printk(KERN_ERR "%s: failed to register irq %d\n", dev->name, dev->irq);
 		return result;
Index: linux-2.6.git/drivers/net/ioc3-eth.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ioc3-eth.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ioc3-eth.c	2006-07-01 16:51:43.000000000 +0200
@@ -1063,7 +1063,7 @@ static int ioc3_open(struct net_device *
 {
 	struct ioc3_private *ip = netdev_priv(dev);
 
-	if (request_irq(dev->irq, ioc3_interrupt, SA_SHIRQ, ioc3_str, dev)) {
+	if (request_irq(dev->irq, ioc3_interrupt, IRQF_SHARED, ioc3_str, dev)) {
 		printk(KERN_ERR "%s: Can't get irq %d\n", dev->name, dev->irq);
 
 		return -EAGAIN;
Index: linux-2.6.git/drivers/net/jazzsonic.c
===================================================================
--- linux-2.6.git.orig/drivers/net/jazzsonic.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/jazzsonic.c	2006-07-01 16:51:43.000000000 +0200
@@ -260,7 +260,7 @@ MODULE_DESCRIPTION("Jazz SONIC ethernet 
 module_param(sonic_debug, int, 0);
 MODULE_PARM_DESC(sonic_debug, "jazzsonic debug level (1-4)");
 
-#define SONIC_IRQ_FLAG SA_INTERRUPT
+#define SONIC_IRQ_FLAG IRQF_DISABLED
 
 #include "sonic.c"
 
Index: linux-2.6.git/drivers/net/lp486e.c
===================================================================
--- linux-2.6.git.orig/drivers/net/lp486e.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/lp486e.c	2006-07-01 16:51:43.000000000 +0200
@@ -851,7 +851,7 @@ static int i596_open(struct net_device *
 {
 	int i;
 
-	i = request_irq(dev->irq, &i596_interrupt, SA_SHIRQ, dev->name, dev);
+	i = request_irq(dev->irq, &i596_interrupt, IRQF_SHARED, dev->name, dev);
 	if (i) {
 		printk(KERN_ERR "%s: IRQ %d not free\n", dev->name, dev->irq);
 		return i;
Index: linux-2.6.git/drivers/net/mipsnet.c
===================================================================
--- linux-2.6.git.orig/drivers/net/mipsnet.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/mipsnet.c	2006-07-01 16:51:43.000000000 +0200
@@ -179,7 +179,7 @@ static int mipsnet_open(struct net_devic
 	pr_debug("%s: mipsnet_open\n", dev->name);
 
 	err = request_irq(dev->irq, &mipsnet_interrupt,
-			  SA_SHIRQ, dev->name, (void *) dev);
+			  IRQF_SHARED, dev->name, (void *) dev);
 
 	if (err) {
 		pr_debug("%s: %s(): can't get irq %d\n",
Index: linux-2.6.git/drivers/net/mv643xx_eth.c
===================================================================
--- linux-2.6.git.orig/drivers/net/mv643xx_eth.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/mv643xx_eth.c	2006-07-01 16:51:43.000000000 +0200
@@ -778,7 +778,7 @@ static int mv643xx_eth_open(struct net_d
 	int err;
 
 	err = request_irq(dev->irq, mv643xx_eth_int_handler,
-			SA_SHIRQ | SA_SAMPLE_RANDOM, dev->name, dev);
+			IRQF_SHARED | IRQF_SAMPLE_RANDOM, dev->name, dev);
 	if (err) {
 		printk(KERN_ERR "Can not assign IRQ number to MV643XX_eth%d\n",
 								port_num);
Index: linux-2.6.git/drivers/net/myri_sbus.c
===================================================================
--- linux-2.6.git.orig/drivers/net/myri_sbus.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/myri_sbus.c	2006-07-01 16:51:43.000000000 +0200
@@ -1069,7 +1069,7 @@ static int __init myri_ether_init(struct
 	/* Register interrupt handler now. */
 	DET(("Requesting MYRIcom IRQ line.\n"));
 	if (request_irq(dev->irq, &myri_interrupt,
-			SA_SHIRQ, "MyriCOM Ethernet", (void *) dev)) {
+			IRQF_SHARED, "MyriCOM Ethernet", (void *) dev)) {
 		printk("MyriCOM: Cannot register interrupt handler.\n");
 		goto err;
 	}
Index: linux-2.6.git/drivers/net/natsemi.c
===================================================================
--- linux-2.6.git.orig/drivers/net/natsemi.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/natsemi.c	2006-07-01 16:51:43.000000000 +0200
@@ -1574,7 +1574,7 @@ static int netdev_open(struct net_device
 	/* Reset the chip, just in case. */
 	natsemi_reset(dev);
 
-	i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
+	i = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
 	if (i) return i;
 
 	if (netif_msg_ifup(np))
Index: linux-2.6.git/drivers/net/ne2k-pci.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ne2k-pci.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ne2k-pci.c	2006-07-01 16:51:43.000000000 +0200
@@ -420,7 +420,7 @@ static int ne2k_pci_set_fdx(struct net_d
 
 static int ne2k_pci_open(struct net_device *dev)
 {
-	int ret = request_irq(dev->irq, ei_interrupt, SA_SHIRQ, dev->name, dev);
+	int ret = request_irq(dev->irq, ei_interrupt, IRQF_SHARED, dev->name, dev);
 	if (ret)
 		return ret;
 
Index: linux-2.6.git/drivers/net/netx-eth.c
===================================================================
--- linux-2.6.git.orig/drivers/net/netx-eth.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/netx-eth.c	2006-07-01 16:51:43.000000000 +0200
@@ -223,7 +223,7 @@ static int netx_eth_open(struct net_devi
 	struct netx_eth_priv *priv = netdev_priv(ndev);
 
 	if (request_irq
-	    (ndev->irq, &netx_eth_interrupt, SA_SHIRQ, ndev->name, ndev))
+	    (ndev->irq, &netx_eth_interrupt, IRQF_SHARED, ndev->name, ndev))
 		return -EAGAIN;
 
 	writel(ndev->dev_addr[0] |
Index: linux-2.6.git/drivers/net/ns83820.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ns83820.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ns83820.c	2006-07-01 16:51:43.000000000 +0200
@@ -1881,7 +1881,7 @@ static int __devinit ns83820_init_one(st
 
 	dev->IMR_cache = 0;
 
-	err = request_irq(pci_dev->irq, ns83820_irq, SA_SHIRQ,
+	err = request_irq(pci_dev->irq, ns83820_irq, IRQF_SHARED,
 			  DRV_NAME, ndev);
 	if (err) {
 		printk(KERN_INFO "ns83820: unable to register irq %d\n",
Index: linux-2.6.git/drivers/net/pci-skeleton.c
===================================================================
--- linux-2.6.git.orig/drivers/net/pci-skeleton.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/pci-skeleton.c	2006-07-01 16:51:43.000000000 +0200
@@ -1075,7 +1075,7 @@ static int netdrv_open (struct net_devic
 
 	DPRINTK ("ENTER\n");
 
-	retval = request_irq (dev->irq, netdrv_interrupt, SA_SHIRQ, dev->name, dev);
+	retval = request_irq (dev->irq, netdrv_interrupt, IRQF_SHARED, dev->name, dev);
 	if (retval) {
 		DPRINTK ("EXIT, returning %d\n", retval);
 		return retval;
Index: linux-2.6.git/drivers/net/pcnet32.c
===================================================================
--- linux-2.6.git.orig/drivers/net/pcnet32.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/pcnet32.c	2006-07-01 16:51:43.000000000 +0200
@@ -1541,7 +1541,7 @@ static int pcnet32_open(struct net_devic
 	unsigned long flags;
 
 	if (request_irq(dev->irq, &pcnet32_interrupt,
-			lp->shared_irq ? SA_SHIRQ : 0, dev->name,
+			lp->shared_irq ? IRQF_SHARED : 0, dev->name,
 			(void *)dev)) {
 		return -EAGAIN;
 	}
Index: linux-2.6.git/drivers/net/r8169.c
===================================================================
--- linux-2.6.git.orig/drivers/net/r8169.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/r8169.c	2006-07-01 16:51:43.000000000 +0200
@@ -1726,7 +1726,7 @@ static int rtl8169_open(struct net_devic
 	rtl8169_set_rxbufsize(tp, dev);
 
 	retval =
-	    request_irq(dev->irq, rtl8169_interrupt, SA_SHIRQ, dev->name, dev);
+	    request_irq(dev->irq, rtl8169_interrupt, IRQF_SHARED, dev->name, dev);
 	if (retval < 0)
 		goto out;
 
Index: linux-2.6.git/drivers/net/rrunner.c
===================================================================
--- linux-2.6.git.orig/drivers/net/rrunner.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/rrunner.c	2006-07-01 16:51:43.000000000 +0200
@@ -1252,7 +1252,7 @@ static int rr_open(struct net_device *de
 	readl(&regs->HostCtrl);
 	spin_unlock_irqrestore(&rrpriv->lock, flags);
 
-	if (request_irq(dev->irq, rr_interrupt, SA_SHIRQ, dev->name, dev)) {
+	if (request_irq(dev->irq, rr_interrupt, IRQF_SHARED, dev->name, dev)) {
 		printk(KERN_WARNING "%s: Requested IRQ %d is busy\n",
 		       dev->name, dev->irq);
 		ecode = -EAGAIN;
Index: linux-2.6.git/drivers/net/s2io.c
===================================================================
--- linux-2.6.git.orig/drivers/net/s2io.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/s2io.c	2006-07-01 16:51:43.000000000 +0200
@@ -3761,7 +3761,7 @@ static int s2io_open(struct net_device *
 	/* After proper initialization of H/W, register ISR */
 	if (sp->intr_type == MSI) {
 		err = request_irq((int) sp->pdev->irq, s2io_msi_handle, 
-			SA_SHIRQ, sp->name, dev);
+			IRQF_SHARED, 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, SA_SHIRQ,
+		err = request_irq((int) sp->pdev->irq, s2io_isr, IRQF_SHARED,
 				sp->name, dev);
 		if (err) {
 			DBG_PRINT(ERR_DBG, "%s: ISR registration failed\n",
Index: linux-2.6.git/drivers/net/sb1250-mac.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sb1250-mac.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sb1250-mac.c	2006-07-01 16:51:43.000000000 +0200
@@ -2450,7 +2450,7 @@ static int sbmac_open(struct net_device 
 	 */
 
 	__raw_readq(sc->sbm_isr);
-	if (request_irq(dev->irq, &sbmac_intr, SA_SHIRQ, dev->name, dev))
+	if (request_irq(dev->irq, &sbmac_intr, IRQF_SHARED, dev->name, dev))
 		return -EBUSY;
 
 	/*
Index: linux-2.6.git/drivers/net/sis190.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sis190.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sis190.c	2006-07-01 16:51:43.000000000 +0200
@@ -1054,7 +1054,7 @@ static int sis190_open(struct net_device
 
 	sis190_request_timer(dev);
 
-	rc = request_irq(dev->irq, sis190_interrupt, SA_SHIRQ, dev->name, dev);
+	rc = request_irq(dev->irq, sis190_interrupt, IRQF_SHARED, dev->name, dev);
 	if (rc < 0)
 		goto err_release_timer_2;
 
Index: linux-2.6.git/drivers/net/sis900.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sis900.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sis900.c	2006-07-01 16:51:43.000000000 +0200
@@ -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, SA_SHIRQ,
+	ret = request_irq(net_dev->irq, &sis900_interrupt, IRQF_SHARED,
 						net_dev->name, net_dev);
 	if (ret)
 		return ret;
Index: linux-2.6.git/drivers/net/skge.c
===================================================================
--- linux-2.6.git.orig/drivers/net/skge.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/skge.c	2006-07-01 16:51:43.000000000 +0200
@@ -3341,7 +3341,7 @@ static int __devinit skge_probe(struct p
 		goto err_out_free_hw;
 	}
 
-	err = request_irq(pdev->irq, skge_intr, SA_SHIRQ, DRV_NAME, hw);
+	err = request_irq(pdev->irq, skge_intr, IRQF_SHARED, DRV_NAME, hw);
 	if (err) {
 		printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
 		       pci_name(pdev), pdev->irq);
Index: linux-2.6.git/drivers/net/sk_mca.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sk_mca.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sk_mca.c	2006-07-01 16:51:43.000000000 +0200
@@ -824,7 +824,7 @@ static int skmca_open(struct net_device 
 	/* register resources - only necessary for IRQ */
 	result =
 	    request_irq(priv->realirq, irq_handler,
-			SA_SHIRQ | SA_SAMPLE_RANDOM, "sk_mca", dev);
+			IRQF_SHARED | IRQF_SAMPLE_RANDOM, "sk_mca", dev);
 	if (result != 0) {
 		printk("%s: failed to register irq %d\n", dev->name,
 		       dev->irq);
Index: linux-2.6.git/drivers/net/sky2.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sky2.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sky2.c	2006-07-01 16:51:43.000000000 +0200
@@ -3188,7 +3188,7 @@ static int __devinit sky2_test_msi(struc
 
 	sky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW);
 
-	err = request_irq(pdev->irq, sky2_test_intr, SA_SHIRQ, DRV_NAME, hw);
+	err = request_irq(pdev->irq, sky2_test_intr, IRQF_SHARED, 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 p
 			goto err_out_unregister;
  	}
 
-	err = request_irq(pdev->irq,  sky2_intr, SA_SHIRQ, DRV_NAME, hw);
+	err = request_irq(pdev->irq,  sky2_intr, IRQF_SHARED, DRV_NAME, hw);
 	if (err) {
 		printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
 		       pci_name(pdev), pdev->irq);
Index: linux-2.6.git/drivers/net/smc911x.c
===================================================================
--- linux-2.6.git.orig/drivers/net/smc911x.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/smc911x.c	2006-07-01 16:51:43.000000000 +0200
@@ -2081,7 +2081,7 @@ static int __init smc911x_probe(struct n
 	lp->ctl_rspeed = 100;
 
 	/* Grab the IRQ */
-	retval = request_irq(dev->irq, &smc911x_interrupt, SA_SHIRQ, dev->name, dev);
+	retval = request_irq(dev->irq, &smc911x_interrupt, IRQF_SHARED, dev->name, dev);
 	if (retval)
 		goto err_out;
 
Index: linux-2.6.git/drivers/net/smc91x.h
===================================================================
--- linux-2.6.git.orig/drivers/net/smc91x.h	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/smc91x.h	2006-07-01 16:51:43.000000000 +0200
@@ -207,7 +207,7 @@ SMC_outw(u16 val, void __iomem *ioaddr, 
 		   machine_is_omap_h2() \
 		|| machine_is_omap_h3() \
 		|| (machine_is_omap_innovator() && !cpu_is_omap1510()) \
-	) ? SA_TRIGGER_FALLING : SA_TRIGGER_RISING)
+	) ? IRQF_TRIGGER_FALLING : IRQF_TRIGGER_RISING)
 
 
 #elif	defined(CONFIG_SH_SH4202_MICRODEV)
@@ -540,7 +540,7 @@ smc_pxa_dma_irq(int dma, void *dummy, st
 #endif
 
 #ifndef	SMC_IRQ_FLAGS
-#define	SMC_IRQ_FLAGS		SA_TRIGGER_RISING
+#define	SMC_IRQ_FLAGS		IRQF_TRIGGER_RISING
 #endif
 
 #ifndef SMC_INTERRUPT_PREAMBLE
Index: linux-2.6.git/drivers/net/smc-ultra32.c
===================================================================
--- linux-2.6.git.orig/drivers/net/smc-ultra32.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/smc-ultra32.c	2006-07-01 16:51:43.000000000 +0200
@@ -290,7 +290,7 @@ out:
 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 : SA_SHIRQ;
+	int irq_flags = (inb(ioaddr + ULTRA32_CFG5) & 0x08) ? 0 : IRQF_SHARED;
 	int retval;
 
 	retval = request_irq(dev->irq, ei_interrupt, irq_flags, dev->name, dev);
Index: linux-2.6.git/drivers/net/spider_net.c
===================================================================
--- linux-2.6.git.orig/drivers/net/spider_net.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/spider_net.c	2006-07-01 16:51:43.000000000 +0200
@@ -1744,7 +1744,7 @@ spider_net_open(struct net_device *netde
 
 	result = -EBUSY;
 	if (request_irq(netdev->irq, spider_net_interrupt,
-			     SA_SHIRQ, netdev->name, netdev))
+			     IRQF_SHARED, netdev->name, netdev))
 		goto register_int_failed;
 
 	spider_net_enable_card(card);
Index: linux-2.6.git/drivers/net/starfire.c
===================================================================
--- linux-2.6.git.orig/drivers/net/starfire.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/starfire.c	2006-07-01 16:51:43.000000000 +0200
@@ -1070,7 +1070,7 @@ static int netdev_open(struct net_device
 
 	/* Do we ever need to reset the chip??? */
 
-	retval = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
+	retval = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
 	if (retval)
 		return retval;
 
Index: linux-2.6.git/drivers/net/sun3lance.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sun3lance.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sun3lance.c	2006-07-01 16:51:43.000000000 +0200
@@ -341,7 +341,7 @@ static int __init lance_probe( struct ne
 
 	REGA(CSR0) = CSR0_STOP; 
 
-	request_irq(LANCE_IRQ, lance_interrupt, SA_INTERRUPT, "SUN3 Lance", dev);
+	request_irq(LANCE_IRQ, lance_interrupt, IRQF_DISABLED, "SUN3 Lance", dev);
 	dev->irq = (unsigned short)LANCE_IRQ;
 
 
Index: linux-2.6.git/drivers/net/sunbmac.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sunbmac.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sunbmac.c	2006-07-01 16:51:43.000000000 +0200
@@ -918,7 +918,7 @@ static int bigmac_open(struct net_device
 	struct bigmac *bp = (struct bigmac *) dev->priv;
 	int ret;
 
-	ret = request_irq(dev->irq, &bigmac_interrupt, SA_SHIRQ, dev->name, bp);
+	ret = request_irq(dev->irq, &bigmac_interrupt, IRQF_SHARED, dev->name, bp);
 	if (ret) {
 		printk(KERN_ERR "BIGMAC: Can't order irq %d to go.\n", dev->irq);
 		return ret;
Index: linux-2.6.git/drivers/net/sundance.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sundance.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sundance.c	2006-07-01 16:51:43.000000000 +0200
@@ -870,7 +870,7 @@ static int netdev_open(struct net_device
 
 	/* Do we need to reset the chip??? */
 
-	i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
+	i = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
 	if (i)
 		return i;
 
Index: linux-2.6.git/drivers/net/sungem.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sungem.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sungem.c	2006-07-01 16:51:43.000000000 +0200
@@ -2220,7 +2220,7 @@ static int gem_do_start(struct net_devic
 	spin_unlock_irqrestore(&gp->lock, flags);
 
 	if (request_irq(gp->pdev->irq, gem_interrupt,
-				   SA_SHIRQ, dev->name, (void *)dev)) {
+				   IRQF_SHARED, dev->name, (void *)dev)) {
 		printk(KERN_ERR "%s: failed to request irq !\n", gp->dev->name);
 
 		spin_lock_irqsave(&gp->lock, flags);
Index: linux-2.6.git/drivers/net/sunhme.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sunhme.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sunhme.c	2006-07-01 16:51:43.000000000 +0200
@@ -2194,7 +2194,7 @@ static int happy_meal_open(struct net_de
 	 */
 	if ((hp->happy_flags & (HFLAG_QUATTRO|HFLAG_PCI)) != HFLAG_QUATTRO) {
 		if (request_irq(dev->irq, &happy_meal_interrupt,
-				SA_SHIRQ, dev->name, (void *)dev)) {
+				IRQF_SHARED, 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
 
 		err = request_irq(sdev->irqs[0],
 				  quattro_sbus_interrupt,
-				  SA_SHIRQ, "Quattro",
+				  IRQF_SHARED, "Quattro",
 				  qp);
 		if (err != 0) {
 			printk(KERN_ERR "Quattro: Fatal IRQ registery error %d.\n", err);
Index: linux-2.6.git/drivers/net/sunlance.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sunlance.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sunlance.c	2006-07-01 16:51:43.000000000 +0200
@@ -930,7 +930,7 @@ static int lance_open(struct net_device 
 
 	STOP_LANCE(lp);
 
-	if (request_irq(dev->irq, &lance_interrupt, SA_SHIRQ,
+	if (request_irq(dev->irq, &lance_interrupt, IRQF_SHARED,
 			lancestr, (void *) dev)) {
 		printk(KERN_ERR "Lance: Can't get irq %d\n", dev->irq);
 		return -EAGAIN;
Index: linux-2.6.git/drivers/net/sunqe.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sunqe.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sunqe.c	2006-07-01 16:51:43.000000000 +0200
@@ -811,7 +811,7 @@ static struct sunqec * __init get_qec(st
 			qec_init_once(qecp, qec_sdev);
 
 			if (request_irq(qec_sdev->irqs[0], &qec_interrupt,
-					SA_SHIRQ, "qec", (void *) qecp)) {
+					IRQF_SHARED, "qec", (void *) qecp)) {
 				printk(KERN_ERR "qec: Can't register irq.\n");
 				goto fail;
 			}
Index: linux-2.6.git/drivers/net/tc35815.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tc35815.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tc35815.c	2006-07-01 16:51:43.000000000 +0200
@@ -880,7 +880,7 @@ tc35815_open(struct net_device *dev)
 	 */
 
 	if (dev->irq == 0  ||
-	    request_irq(dev->irq, &tc35815_interrupt, SA_SHIRQ, cardname, dev)) {
+	    request_irq(dev->irq, &tc35815_interrupt, IRQF_SHARED, cardname, dev)) {
 		return -EAGAIN;
 	}
 
Index: linux-2.6.git/drivers/net/tg3.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tg3.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tg3.c	2006-07-01 16:51:43.000000000 +0200
@@ -6702,12 +6702,12 @@ static int tg3_request_irq(struct tg3 *t
 		fn = tg3_msi;
 		if (tp->tg3_flags2 & TG3_FLG2_1SHOT_MSI)
 			fn = tg3_msi_1shot;
-		flags = SA_SAMPLE_RANDOM;
+		flags = IRQF_SAMPLE_RANDOM;
 	} else {
 		fn = tg3_interrupt;
 		if (tp->tg3_flags & TG3_FLAG_TAGGED_STATUS)
 			fn = tg3_interrupt_tagged;
-		flags = SA_SHIRQ | SA_SAMPLE_RANDOM;
+		flags = IRQF_SHARED | IRQF_SAMPLE_RANDOM;
 	}
 	return (request_irq(tp->pdev->irq, fn, flags, dev->name, dev));
 }
@@ -6726,7 +6726,7 @@ static int tg3_test_interrupt(struct tg3
 	free_irq(tp->pdev->irq, dev);
 
 	err = request_irq(tp->pdev->irq, tg3_test_isr,
-			  SA_SHIRQ | SA_SAMPLE_RANDOM, dev->name, dev);
+			  IRQF_SHARED | IRQF_SAMPLE_RANDOM, dev->name, dev);
 	if (err)
 		return err;
 
Index: linux-2.6.git/drivers/net/tlan.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tlan.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tlan.c	2006-07-01 16:51:43.000000000 +0200
@@ -943,7 +943,7 @@ static int TLan_Open( struct net_device 
 	int		err;
 	
 	priv->tlanRev = TLan_DioRead8( dev->base_addr, TLAN_DEF_REVISION );
-	err = request_irq( dev->irq, TLan_HandleInterrupt, SA_SHIRQ, TLanSignature, dev );
+	err = request_irq( dev->irq, TLan_HandleInterrupt, IRQF_SHARED, TLanSignature, dev );
 	
 	if ( err ) {
 		printk(KERN_ERR "TLAN:  Cannot open %s because IRQ %d is already in use.\n", dev->name, dev->irq );
Index: linux-2.6.git/drivers/net/typhoon.c
===================================================================
--- linux-2.6.git.orig/drivers/net/typhoon.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/typhoon.c	2006-07-01 16:51:43.000000000 +0200
@@ -2131,7 +2131,7 @@ typhoon_open(struct net_device *dev)
 		goto out_sleep;
 	}
 
-	err = request_irq(dev->irq, &typhoon_interrupt, SA_SHIRQ,
+	err = request_irq(dev->irq, &typhoon_interrupt, IRQF_SHARED,
 				dev->name, dev);
 	if(err < 0)
 		goto out_sleep;
Index: linux-2.6.git/drivers/net/via-rhine.c
===================================================================
--- linux-2.6.git.orig/drivers/net/via-rhine.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/via-rhine.c	2006-07-01 16:51:43.000000000 +0200
@@ -1210,7 +1210,7 @@ static int rhine_open(struct net_device 
 	void __iomem *ioaddr = rp->base;
 	int rc;
 
-	rc = request_irq(rp->pdev->irq, &rhine_interrupt, SA_SHIRQ, dev->name,
+	rc = request_irq(rp->pdev->irq, &rhine_interrupt, IRQF_SHARED, dev->name,
 			dev);
 	if (rc)
 		return rc;
@@ -1999,7 +1999,7 @@ static int rhine_resume(struct pci_dev *
 	if (!netif_running(dev))
 		return 0;
 
-        if (request_irq(dev->irq, rhine_interrupt, SA_SHIRQ, dev->name, dev))
+        if (request_irq(dev->irq, rhine_interrupt, IRQF_SHARED, dev->name, dev))
 		printk(KERN_ERR "via-rhine %s: request_irq failed\n", dev->name);
 
 	ret = pci_set_power_state(pdev, PCI_D0);
Index: linux-2.6.git/drivers/net/via-velocity.c
===================================================================
--- linux-2.6.git.orig/drivers/net/via-velocity.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/via-velocity.c	2006-07-01 16:51:43.000000000 +0200
@@ -1750,7 +1750,7 @@ static int velocity_open(struct net_devi
 	
 	velocity_init_registers(vptr, VELOCITY_INIT_COLD);
 
-	ret = request_irq(vptr->pdev->irq, &velocity_intr, SA_SHIRQ,
+	ret = request_irq(vptr->pdev->irq, &velocity_intr, IRQF_SHARED,
 			  dev->name, dev);
 	if (ret < 0) {
 		/* Power down the chip */
Index: linux-2.6.git/drivers/net/yellowfin.c
===================================================================
--- linux-2.6.git.orig/drivers/net/yellowfin.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/yellowfin.c	2006-07-01 16:51:43.000000000 +0200
@@ -602,7 +602,7 @@ static int yellowfin_open(struct net_dev
 	/* Reset the chip. */
 	iowrite32(0x80000000, ioaddr + DMACtrl);
 
-	i = request_irq(dev->irq, &yellowfin_interrupt, SA_SHIRQ, dev->name, dev);
+	i = request_irq(dev->irq, &yellowfin_interrupt, IRQF_SHARED, dev->name, dev);
 	if (i) return i;
 
 	if (yellowfin_debug > 1)
Index: linux-2.6.git/drivers/net/zorro8390.c
===================================================================
--- linux-2.6.git.orig/drivers/net/zorro8390.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/zorro8390.c	2006-07-01 16:51:43.000000000 +0200
@@ -201,7 +201,7 @@ static int __devinit zorro8390_init(stru
     dev->irq = IRQ_AMIGA_PORTS;
 
     /* Install the Interrupt handler */
-    i = request_irq(IRQ_AMIGA_PORTS, ei_interrupt, SA_SHIRQ, DRV_NAME, dev);
+    i = request_irq(IRQ_AMIGA_PORTS, ei_interrupt, IRQF_SHARED, DRV_NAME, dev);
     if (i) return i;
 
     for(i = 0; i < ETHER_ADDR_LEN; i++) {
Index: linux-2.6.git/drivers/net/arcnet/com20020-pci.c
===================================================================
--- linux-2.6.git.orig/drivers/net/arcnet/com20020-pci.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/arcnet/com20020-pci.c	2006-07-01 16:51:43.000000000 +0200
@@ -120,7 +120,7 @@ static int __devinit com20020pci_probe(s
 		goto out_port;
 	}
 
-	if ((err = com20020_found(dev, SA_SHIRQ)) != 0)
+	if ((err = com20020_found(dev, IRQF_SHARED)) != 0)
 	        goto out_port;
 
 	return 0;
Index: linux-2.6.git/drivers/net/chelsio/cxgb2.c
===================================================================
--- linux-2.6.git.orig/drivers/net/chelsio/cxgb2.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/chelsio/cxgb2.c	2006-07-01 16:51:43.000000000 +0200
@@ -218,7 +218,7 @@ static int cxgb_up(struct adapter *adapt
 
 	t1_interrupts_clear(adapter);
 	if ((err = request_irq(adapter->pdev->irq,
-			       t1_select_intr_handler(adapter), SA_SHIRQ,
+			       t1_select_intr_handler(adapter), IRQF_SHARED,
 			       adapter->name, adapter))) {
 		goto out_err;
 	}
Index: linux-2.6.git/drivers/net/cris/eth_v10.c
===================================================================
--- linux-2.6.git.orig/drivers/net/cris/eth_v10.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/cris/eth_v10.c	2006-07-01 16:51:43.000000000 +0200
@@ -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,
-			SA_SAMPLE_RANDOM, cardname, (void *)dev)) {
+			IRQF_SAMPLE_RANDOM, cardname, (void *)dev)) {
 		goto grace_exit0;
 	}
 
Index: linux-2.6.git/drivers/net/e1000/e1000_ethtool.c
===================================================================
--- linux-2.6.git.orig/drivers/net/e1000/e1000_ethtool.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/e1000/e1000_ethtool.c	2006-07-01 16:51:43.000000000 +0200
@@ -871,10 +871,10 @@ e1000_intr_test(struct e1000_adapter *ad
 	*data = 0;
 
 	/* Hook up test interrupt handler just for this test */
-	if (!request_irq(irq, &e1000_test_intr, SA_PROBEIRQ, netdev->name,
-	                 netdev)) {
+	if (!request_irq(irq, &e1000_test_intr, IRQF_PROBE_SHARED,
+			 netdev->name, netdev)) {
  		shared_int = FALSE;
- 	} else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ,
+ 	} else if (request_irq(irq, &e1000_test_intr, IRQF_SHARED,
 			      netdev->name, netdev)){
 		*data = 1;
 		return -1;
Index: linux-2.6.git/drivers/net/e1000/e1000_main.c
===================================================================
--- linux-2.6.git.orig/drivers/net/e1000/e1000_main.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/e1000/e1000_main.c	2006-07-01 16:51:43.000000000 +0200
@@ -426,7 +426,7 @@ e1000_up(struct e1000_adapter *adapter)
 	}
 #endif
 	if ((err = request_irq(adapter->pdev->irq, &e1000_intr,
-		              SA_SHIRQ | SA_SAMPLE_RANDOM,
+		              IRQF_SHARED | IRQF_SAMPLE_RANDOM,
 		              netdev->name, netdev))) {
 		DPRINTK(PROBE, ERR,
 		    "Unable to allocate interrupt Error: %d\n", err);
Index: linux-2.6.git/drivers/net/fs_enet/fs_enet-main.c
===================================================================
--- linux-2.6.git.orig/drivers/net/fs_enet/fs_enet-main.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/fs_enet/fs_enet-main.c	2006-07-01 16:51:43.000000000 +0200
@@ -671,7 +671,7 @@ static int fs_request_irq(struct net_dev
 	struct fs_enet_private *fep = netdev_priv(dev);
 
 	(*fep->ops->pre_request_irq)(dev, irq);
-	return request_irq(irq, irqf, SA_SHIRQ, name, dev);
+	return request_irq(irq, irqf, IRQF_SHARED, name, dev);
 }
 
 static void fs_free_irq(struct net_device *dev, int irq)
Index: linux-2.6.git/drivers/net/hamradio/baycom_ser_fdx.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hamradio/baycom_ser_fdx.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hamradio/baycom_ser_fdx.c	2006-07-01 16:51:43.000000000 +0200
@@ -434,7 +434,7 @@ static int ser12_open(struct net_device 
 	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, SA_INTERRUPT | SA_SHIRQ,
+	if (request_irq(dev->irq, ser12_interrupt, IRQF_DISABLED | IRQF_SHARED,
 			"baycom_ser_fdx", dev)) {
 		release_region(dev->base_addr, SER12_EXTENT);
 		return -EBUSY;
Index: linux-2.6.git/drivers/net/hamradio/baycom_ser_hdx.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hamradio/baycom_ser_hdx.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hamradio/baycom_ser_hdx.c	2006-07-01 16:51:43.000000000 +0200
@@ -488,7 +488,7 @@ static int ser12_open(struct net_device 
 	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, SA_INTERRUPT | SA_SHIRQ,
+	if (request_irq(dev->irq, ser12_interrupt, IRQF_DISABLED | IRQF_SHARED,
 			"baycom_ser12", dev)) {
 		release_region(dev->base_addr, SER12_EXTENT);       
 		return -EBUSY;
Index: linux-2.6.git/drivers/net/hamradio/scc.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hamradio/scc.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hamradio/scc.c	2006-07-01 16:51:43.000000000 +0200
@@ -1736,7 +1736,7 @@ static int scc_net_ioctl(struct net_devi
 				
 			if (!Ivec[hwcfg.irq].used && hwcfg.irq)
 			{
-				if (request_irq(hwcfg.irq, scc_isr, SA_INTERRUPT, "AX.25 SCC", NULL))
+				if (request_irq(hwcfg.irq, scc_isr, IRQF_DISABLED, "AX.25 SCC", NULL))
 					printk(KERN_WARNING "z8530drv: warning, cannot get IRQ %d\n", hwcfg.irq);
 				else
 					Ivec[hwcfg.irq].used = 1;
Index: linux-2.6.git/drivers/net/hamradio/yam.c
===================================================================
--- linux-2.6.git.orig/drivers/net/hamradio/yam.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/hamradio/yam.c	2006-07-01 16:51:43.000000000 +0200
@@ -873,7 +873,7 @@ static int yam_open(struct net_device *d
 		goto out_release_base;
 	}
 	outb(0, IER(dev->base_addr));
-	if (request_irq(dev->irq, yam_interrupt, SA_INTERRUPT | SA_SHIRQ, dev->name, dev)) {
+	if (request_irq(dev->irq, yam_interrupt, IRQF_DISABLED | IRQF_SHARED, dev->name, dev)) {
 		printk(KERN_ERR "%s: irq %d busy\n", dev->name, dev->irq);
 		ret = -EBUSY;
 		goto out_release_base;
Index: linux-2.6.git/drivers/net/irda/donauboe.c
===================================================================
--- linux-2.6.git.orig/drivers/net/irda/donauboe.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/irda/donauboe.c	2006-07-01 16:51:43.000000000 +0200
@@ -1372,7 +1372,7 @@ toshoboe_net_open (struct net_device *de
     return 0;
 
   if (request_irq (self->io.irq, toshoboe_interrupt,
-                   SA_SHIRQ | SA_INTERRUPT, dev->name, (void *) self))
+                   IRQF_SHARED | IRQF_DISABLED, dev->name, (void *) self))
     {
       return -EAGAIN;
     }
@@ -1573,7 +1573,7 @@ toshoboe_open (struct pci_dev *pci_dev, 
   self->io.fir_base = self->base;
   self->io.fir_ext = OBOE_IO_EXTENT;
   self->io.irq = pci_dev->irq;
-  self->io.irqflags = SA_SHIRQ | SA_INTERRUPT;
+  self->io.irqflags = IRQF_SHARED | IRQF_DISABLED;
 
   self->speed = self->io.speed = 9600;
   self->async = 0;
Index: linux-2.6.git/drivers/net/irda/vlsi_ir.c
===================================================================
--- linux-2.6.git.orig/drivers/net/irda/vlsi_ir.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/irda/vlsi_ir.c	2006-07-01 16:51:43.000000000 +0200
@@ -1517,7 +1517,7 @@ static int vlsi_open(struct net_device *
 
 	outb(IRINTR_INT_MASK, ndev->base_addr+VLSI_PIO_IRINTR);
 
-	if (request_irq(ndev->irq, vlsi_interrupt, SA_SHIRQ,
+	if (request_irq(ndev->irq, vlsi_interrupt, IRQF_SHARED,
 			drivername, ndev)) {
 		IRDA_WARNING("%s: couldn't get IRQ: %d\n",
 			     __FUNCTION__, ndev->irq);
Index: linux-2.6.git/drivers/net/ixgb/ixgb_main.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ixgb/ixgb_main.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ixgb/ixgb_main.c	2006-07-01 16:51:43.000000000 +0200
@@ -253,7 +253,7 @@ ixgb_up(struct ixgb_adapter *adapter)
 
 #endif
 	if((err = request_irq(adapter->pdev->irq, &ixgb_intr,
-				  SA_SHIRQ | SA_SAMPLE_RANDOM,
+				  IRQF_SHARED | IRQF_SAMPLE_RANDOM,
 			          netdev->name, netdev))) {
 		DPRINTK(PROBE, ERR,
 		 "Unable to allocate interrupt Error: %d\n", err);
Index: linux-2.6.git/drivers/net/ixp2000/ixpdev.c
===================================================================
--- linux-2.6.git.orig/drivers/net/ixp2000/ixpdev.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/ixp2000/ixpdev.c	2006-07-01 16:51:43.000000000 +0200
@@ -235,7 +235,7 @@ static int ixpdev_open(struct net_device
 
 	if (!nds_open++) {
 		err = request_irq(IRQ_IXP2000_THDA0, ixpdev_interrupt,
-					SA_SHIRQ, "ixp2000_eth", nds);
+					IRQF_SHARED, "ixp2000_eth", nds);
 		if (err) {
 			nds_open--;
 			return err;
Index: linux-2.6.git/drivers/net/myri10ge/myri10ge.c
===================================================================
--- linux-2.6.git.orig/drivers/net/myri10ge/myri10ge.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/myri10ge/myri10ge.c	2006-07-01 16:51:43.000000000 +0200
@@ -2413,7 +2413,7 @@ static int myri10ge_resume(struct pci_de
 	pci_enable_device(pdev);
 	pci_set_master(pdev);
 
-	status = request_irq(pdev->irq, myri10ge_intr, SA_SHIRQ,
+	status = request_irq(pdev->irq, myri10ge_intr, IRQF_SHARED,
 			     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
 			mgp->msi_enabled = 1;
 	}
 
-	status = request_irq(pdev->irq, myri10ge_intr, SA_SHIRQ,
+	status = request_irq(pdev->irq, myri10ge_intr, IRQF_SHARED,
 			     netdev->name, mgp);
 	if (status != 0) {
 		dev_err(&pdev->dev, "failed to allocate IRQ\n");
Index: linux-2.6.git/drivers/net/pcmcia/axnet_cs.c
===================================================================
--- linux-2.6.git.orig/drivers/net/pcmcia/axnet_cs.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/pcmcia/axnet_cs.c	2006-07-01 16:51:43.000000000 +0200
@@ -535,7 +535,7 @@ static int axnet_open(struct net_device 
 
     link->open++;
 
-    request_irq(dev->irq, ei_irq_wrapper, SA_SHIRQ, "axnet_cs", dev);
+    request_irq(dev->irq, ei_irq_wrapper, IRQF_SHARED, "axnet_cs", dev);
 
     info->link_status = 0x00;
     init_timer(&info->watchdog);
Index: linux-2.6.git/drivers/net/pcmcia/pcnet_cs.c
===================================================================
--- linux-2.6.git.orig/drivers/net/pcmcia/pcnet_cs.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/pcmcia/pcnet_cs.c	2006-07-01 16:51:43.000000000 +0200
@@ -998,7 +998,7 @@ static int pcnet_open(struct net_device 
     link->open++;
 
     set_misc_reg(dev);
-    request_irq(dev->irq, ei_irq_wrapper, SA_SHIRQ, dev_info, dev);
+    request_irq(dev->irq, ei_irq_wrapper, IRQF_SHARED, dev_info, dev);
 
     info->phy_id = info->eth_phy;
     info->link_status = 0x00;
Index: linux-2.6.git/drivers/net/phy/phy.c
===================================================================
--- linux-2.6.git.orig/drivers/net/phy/phy.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/phy/phy.c	2006-07-01 16:51:43.000000000 +0200
@@ -556,7 +556,7 @@ int phy_start_interrupts(struct phy_devi
 	INIT_WORK(&phydev->phy_queue, phy_change, phydev);
 
 	if (request_irq(phydev->irq, phy_interrupt,
-				SA_SHIRQ,
+				IRQF_SHARED,
 				"phy_interrupt",
 				phydev) < 0) {
 		printk(KERN_WARNING "%s: Can't get IRQ %d (PHY)\n",
Index: linux-2.6.git/drivers/net/sk98lin/skge.c
===================================================================
--- linux-2.6.git.orig/drivers/net/sk98lin/skge.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/sk98lin/skge.c	2006-07-01 16:51:43.000000000 +0200
@@ -570,9 +570,9 @@ SK_BOOL	DualNet;
 	spin_unlock_irqrestore(&pAC->SlowPathLock, Flags);
 
 	if (pAC->GIni.GIMacsFound == 2) {
-		 Ret = request_irq(dev->irq, SkGeIsr, SA_SHIRQ, "sk98lin", dev);
+		 Ret = request_irq(dev->irq, SkGeIsr, IRQF_SHARED, "sk98lin", dev);
 	} else if (pAC->GIni.GIMacsFound == 1) {
-		Ret = request_irq(dev->irq, SkGeIsrOnePort, SA_SHIRQ,
+		Ret = request_irq(dev->irq, SkGeIsrOnePort, IRQF_SHARED,
 			"sk98lin", dev);
 	} else {
 		printk(KERN_WARNING "sk98lin: Illegal number of ports: %d\n",
@@ -5073,9 +5073,9 @@ static int skge_resume(struct pci_dev *p
 	pci_enable_device(pdev);
 	pci_set_master(pdev);
 	if (pAC->GIni.GIMacsFound == 2)
-		ret = request_irq(dev->irq, SkGeIsr, SA_SHIRQ, "sk98lin", dev);
+		ret = request_irq(dev->irq, SkGeIsr, IRQF_SHARED, "sk98lin", dev);
 	else
-		ret = request_irq(dev->irq, SkGeIsrOnePort, SA_SHIRQ, "sk98lin", dev);
+		ret = request_irq(dev->irq, SkGeIsrOnePort, IRQF_SHARED, "sk98lin", dev);
 	if (ret) {
 		printk(KERN_WARNING "sk98lin: unable to acquire IRQ %d\n", dev->irq);
 		pAC->AllocFlag &= ~SK_ALLOC_IRQ;
Index: linux-2.6.git/drivers/net/skfp/skfddi.c
===================================================================
--- linux-2.6.git.orig/drivers/net/skfp/skfddi.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/skfp/skfddi.c	2006-07-01 16:51:43.000000000 +0200
@@ -497,7 +497,7 @@ static int skfp_open(struct net_device *
 
 	PRINTK(KERN_INFO "entering skfp_open\n");
 	/* Register IRQ - support shared interrupts by passing device ptr */
-	err = request_irq(dev->irq, (void *) skfp_interrupt, SA_SHIRQ,
+	err = request_irq(dev->irq, (void *) skfp_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (err)
 		return err;
Index: linux-2.6.git/drivers/net/tokenring/3c359.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/3c359.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/3c359.c	2006-07-01 16:51:43.000000000 +0200
@@ -576,7 +576,7 @@ static int xl_open(struct net_device *de
 
 	u16 switchsettings, switchsettings_eeprom  ;
  
-	if(request_irq(dev->irq, &xl_interrupt, SA_SHIRQ , "3c359", dev)) {
+	if(request_irq(dev->irq, &xl_interrupt, IRQF_SHARED , "3c359", dev)) {
 		return -EAGAIN;
 	}
 
Index: linux-2.6.git/drivers/net/tokenring/abyss.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/abyss.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/abyss.c	2006-07-01 16:51:43.000000000 +0200
@@ -123,7 +123,7 @@ static int __devinit abyss_attach(struct
 		goto err_out_trdev;
 	}
 		
-	ret = request_irq(pdev->irq, tms380tr_interrupt, SA_SHIRQ,
+	ret = request_irq(pdev->irq, tms380tr_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (ret)
 		goto err_out_region;
Index: linux-2.6.git/drivers/net/tokenring/lanstreamer.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/lanstreamer.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/lanstreamer.c	2006-07-01 16:51:43.000000000 +0200
@@ -601,7 +601,7 @@ static int streamer_open(struct net_devi
 	        rc=streamer_reset(dev);
 	}
 
-	if (request_irq(dev->irq, &streamer_interrupt, SA_SHIRQ, "lanstreamer", dev)) {
+	if (request_irq(dev->irq, &streamer_interrupt, IRQF_SHARED, "lanstreamer", dev)) {
 		return -EAGAIN;
 	}
 #if STREAMER_DEBUG
Index: linux-2.6.git/drivers/net/tokenring/madgemc.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/madgemc.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/madgemc.c	2006-07-01 16:51:43.000000000 +0200
@@ -311,7 +311,7 @@ static int __devinit madgemc_probe(struc
 	 */ 
 	outb(0, dev->base_addr + MC_CONTROL_REG0); /* sanity */
 	madgemc_setsifsel(dev, 1);
-	if (request_irq(dev->irq, madgemc_interrupt, SA_SHIRQ,
+	if (request_irq(dev->irq, madgemc_interrupt, IRQF_SHARED,
 		       "madgemc", dev)) {
 		ret = -EBUSY;
 		goto getout3;
Index: linux-2.6.git/drivers/net/tokenring/olympic.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/olympic.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/olympic.c	2006-07-01 16:51:43.000000000 +0200
@@ -445,7 +445,7 @@ static int olympic_open(struct net_devic
 
 	olympic_init(dev);
 
-	if(request_irq(dev->irq, &olympic_interrupt, SA_SHIRQ , "olympic", dev)) {
+	if(request_irq(dev->irq, &olympic_interrupt, IRQF_SHARED , "olympic", dev)) {
 		return -EAGAIN;
 	}
 
Index: linux-2.6.git/drivers/net/tokenring/smctr.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/smctr.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/smctr.c	2006-07-01 16:51:43.000000000 +0200
@@ -531,7 +531,7 @@ static int __init smctr_chk_mca(struct n
 			dev->irq = 15;
                		break;
 	}
-	if (request_irq(dev->irq, smctr_interrupt, SA_SHIRQ, smctr_name, dev)) {
+	if (request_irq(dev->irq, smctr_interrupt, IRQF_SHARED, smctr_name, dev)) {
 		release_region(dev->base_addr, SMCTR_IO_EXTENT);
 		return -ENODEV;
 	}
@@ -1061,7 +1061,7 @@ static int __init smctr_chk_isa(struct n
                         goto out2;
          }
 
-        if (request_irq(dev->irq, smctr_interrupt, SA_SHIRQ, smctr_name, dev))
+        if (request_irq(dev->irq, smctr_interrupt, IRQF_SHARED, smctr_name, dev))
                 goto out2;
 
         /* Get 58x Rom Base */
Index: linux-2.6.git/drivers/net/tokenring/tmspci.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tokenring/tmspci.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tokenring/tmspci.c	2006-07-01 16:51:43.000000000 +0200
@@ -122,7 +122,7 @@ static int __devinit tms_pci_attach(stru
 		goto err_out_trdev;
 	}
 
-	ret = request_irq(pdev->irq, tms380tr_interrupt, SA_SHIRQ,
+	ret = request_irq(pdev->irq, tms380tr_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (ret)
 		goto err_out_region;
Index: linux-2.6.git/drivers/net/tulip/de2104x.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/de2104x.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/de2104x.c	2006-07-01 16:51:43.000000000 +0200
@@ -1371,7 +1371,7 @@ static int de_open (struct net_device *d
 
 	dw32(IntrMask, 0);
 
-	rc = request_irq(dev->irq, de_interrupt, SA_SHIRQ, dev->name, dev);
+	rc = request_irq(dev->irq, de_interrupt, IRQF_SHARED, dev->name, dev);
 	if (rc) {
 		printk(KERN_ERR "%s: IRQ %d request failure, err=%d\n",
 		       dev->name, dev->irq, rc);
Index: linux-2.6.git/drivers/net/tulip/de4x5.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/de4x5.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/de4x5.c	2006-07-01 16:51:43.000000000 +0200
@@ -292,7 +292,7 @@
       0.41    21-Mar-96   Don't check for get_hw_addr checksum unless DEC card
                           only <niles@axp745gsfc.nasa.gov>
 			  Fix for multiple PCI cards reported by <jos@xos.nl>
-			  Duh, put the SA_SHIRQ flag into request_interrupt().
+			  Duh, put the IRQF_SHARED 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 <phil@tazenda.demon.co.uk>
-			  Added SA_INTERRUPT temporary fix from
+			  Added IRQF_DISABLED temporary fix from
 			   <mjacob@feral.com>.
       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, SA_SHIRQ,
+    if (request_irq(dev->irq, (void *)de4x5_interrupt, IRQF_SHARED,
 		                                     lp->adapter_name, dev)) {
 	printk("de4x5_open(): Requested IRQ%d is busy - attemping FAST/SHARE...", dev->irq);
-	if (request_irq(dev->irq, de4x5_interrupt, SA_INTERRUPT | SA_SHIRQ,
+	if (request_irq(dev->irq, de4x5_interrupt, IRQF_DISABLED | IRQF_SHARED,
 			                             lp->adapter_name, dev)) {
 	    printk("\n              Cannot get IRQ- reconfigure your hardware.\n");
 	    disable_ast(dev);
Index: linux-2.6.git/drivers/net/tulip/dmfe.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/dmfe.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/dmfe.c	2006-07-01 16:51:43.000000000 +0200
@@ -506,7 +506,7 @@ static int dmfe_open(struct DEVICE *dev)
 
 	DMFE_DBUG(0, "dmfe_open", 0);
 
-	ret = request_irq(dev->irq, &dmfe_interrupt, SA_SHIRQ, dev->name, dev);
+	ret = request_irq(dev->irq, &dmfe_interrupt, IRQF_SHARED, dev->name, dev);
 	if (ret)
 		return ret;
 
Index: linux-2.6.git/drivers/net/tulip/tulip_core.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/tulip_core.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/tulip_core.c	2006-07-01 16:51:43.000000000 +0200
@@ -489,7 +489,7 @@ tulip_open(struct net_device *dev)
 {
 	int retval;
 
-	if ((retval = request_irq(dev->irq, &tulip_interrupt, SA_SHIRQ, dev->name, dev)))
+	if ((retval = request_irq(dev->irq, &tulip_interrupt, IRQF_SHARED, dev->name, dev)))
 		return retval;
 
 	tulip_init_ring (dev);
@@ -1770,7 +1770,7 @@ static int tulip_resume(struct pci_dev *
 
 	pci_enable_device(pdev);
 
-	if ((retval = request_irq(dev->irq, &tulip_interrupt, SA_SHIRQ, dev->name, dev))) {
+	if ((retval = request_irq(dev->irq, &tulip_interrupt, IRQF_SHARED, dev->name, dev))) {
 		printk (KERN_ERR "tulip: request_irq failed in resume\n");
 		return retval;
 	}
Index: linux-2.6.git/drivers/net/tulip/uli526x.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/uli526x.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/uli526x.c	2006-07-01 16:51:43.000000000 +0200
@@ -436,7 +436,7 @@ static int uli526x_open(struct net_devic
 
 	ULI526X_DBUG(0, "uli526x_open", 0);
 
-	ret = request_irq(dev->irq, &uli526x_interrupt, SA_SHIRQ, dev->name, dev);
+	ret = request_irq(dev->irq, &uli526x_interrupt, IRQF_SHARED, dev->name, dev);
 	if (ret)
 		return ret;
 
Index: linux-2.6.git/drivers/net/tulip/winbond-840.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/winbond-840.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/winbond-840.c	2006-07-01 16:51:43.000000000 +0200
@@ -658,7 +658,7 @@ static int netdev_open(struct net_device
 	iowrite32(0x00000001, ioaddr + PCIBusCfg);		/* Reset */
 
 	netif_device_detach(dev);
-	i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
+	i = request_irq(dev->irq, &intr_handler, IRQF_SHARED, dev->name, dev);
 	if (i)
 		goto out_err;
 
Index: linux-2.6.git/drivers/net/tulip/xircom_cb.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/xircom_cb.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/xircom_cb.c	2006-07-01 16:51:43.000000000 +0200
@@ -457,7 +457,7 @@ static int xircom_open(struct net_device
 	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, SA_SHIRQ, dev->name, dev);
+	retval = request_irq(dev->irq, &xircom_interrupt, IRQF_SHARED, dev->name, dev);
 	if (retval) {
 		leave("xircom_open - No IRQ");
 		return retval;
Index: linux-2.6.git/drivers/net/tulip/xircom_tulip_cb.c
===================================================================
--- linux-2.6.git.orig/drivers/net/tulip/xircom_tulip_cb.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/tulip/xircom_tulip_cb.c	2006-07-01 16:51:43.000000000 +0200
@@ -807,7 +807,7 @@ xircom_open(struct net_device *dev)
 {
 	struct xircom_private *tp = netdev_priv(dev);
 
-	if (request_irq(dev->irq, &xircom_interrupt, SA_SHIRQ, dev->name, dev))
+	if (request_irq(dev->irq, &xircom_interrupt, IRQF_SHARED, dev->name, dev))
 		return -EAGAIN;
 
 	xircom_up(dev);
Index: linux-2.6.git/drivers/net/wan/dscc4.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/dscc4.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/dscc4.c	2006-07-01 16:51:43.000000000 +0200
@@ -752,7 +752,7 @@ static int __devinit dscc4_init_one(stru
 
 	priv = pci_get_drvdata(pdev);
 
-	rc = request_irq(pdev->irq, dscc4_irq, SA_SHIRQ, DRV_NAME, priv->root);
+	rc = request_irq(pdev->irq, dscc4_irq, IRQF_SHARED, DRV_NAME, priv->root);
 	if (rc < 0) {
 		printk(KERN_WARNING "%s: IRQ %d busy\n", DRV_NAME, pdev->irq);
 		goto err_release_4;
Index: linux-2.6.git/drivers/net/wan/farsync.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/farsync.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/farsync.c	2006-07-01 16:51:43.000000000 +0200
@@ -2519,7 +2519,7 @@ fst_add_one(struct pci_dev *pdev, const 
 	dbg(DBG_PCI, "kernel mem %p, ctlmem %p\n", card->mem, card->ctlmem);
 
 	/* Register the interrupt handler */
-	if (request_irq(pdev->irq, fst_intr, SA_SHIRQ, FST_DEV_NAME, card)) {
+	if (request_irq(pdev->irq, fst_intr, IRQF_SHARED, FST_DEV_NAME, card)) {
 		printk_err("Unable to register interrupt %d\n", card->irq);
 		pci_release_regions(pdev);
 		pci_disable_device(pdev);
Index: linux-2.6.git/drivers/net/wan/hostess_sv11.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/hostess_sv11.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/hostess_sv11.c	2006-07-01 16:51:43.000000000 +0200
@@ -264,7 +264,7 @@ static struct sv11_device *sv11_init(int
 	/* 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, SA_INTERRUPT, "Hostess SV11", dev)<0)
+	if(request_irq(irq, &z8530_interrupt, IRQF_DISABLED, "Hostess SV11", dev)<0)
 	{
 		printk(KERN_WARNING "hostess: IRQ %d already in use.\n", irq);
 		goto fail1;
Index: linux-2.6.git/drivers/net/wan/pc300_drv.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/pc300_drv.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/pc300_drv.c	2006-07-01 16:51:43.000000000 +0200
@@ -3600,7 +3600,7 @@ cpc_init_one(struct pci_dev *pdev, const
 	}
 
 	/* Allocate IRQ */
-	if (request_irq(card->hw.irq, cpc_intr, SA_SHIRQ, "Cyclades-PC300", card)) {
+	if (request_irq(card->hw.irq, cpc_intr, IRQF_SHARED, "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;
Index: linux-2.6.git/drivers/net/wan/pci200syn.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/pci200syn.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/pci200syn.c	2006-07-01 16:51:43.000000000 +0200
@@ -402,7 +402,7 @@ static int __devinit pci200_pci_init_one
 	writew(readw(p) | 0x0040, p);
 
 	/* Allocate IRQ */
-	if (request_irq(pdev->irq, sca_intr, SA_SHIRQ, devname, card)) {
+	if (request_irq(pdev->irq, sca_intr, IRQF_SHARED, devname, card)) {
 		printk(KERN_WARNING "pci200syn: could not allocate IRQ%d.\n",
 		       pdev->irq);
 		pci200_pci_remove_one(pdev);
Index: linux-2.6.git/drivers/net/wan/sbni.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/sbni.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/sbni.c	2006-07-01 16:51:43.000000000 +0200
@@ -1192,7 +1192,7 @@ sbni_open( struct net_device  *dev )
 			}
 	}
 
-	if( request_irq(dev->irq, sbni_interrupt, SA_SHIRQ, dev->name, dev) ) {
+	if( request_irq(dev->irq, sbni_interrupt, IRQF_SHARED, dev->name, dev) ) {
 		printk( KERN_ERR "%s: unable to get IRQ %d.\n",
 			dev->name, dev->irq );
 		return  -EAGAIN;
Index: linux-2.6.git/drivers/net/wan/sealevel.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/sealevel.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/sealevel.c	2006-07-01 16:51:43.000000000 +0200
@@ -322,7 +322,7 @@ static __init struct slvl_board *slvl_in
 	/* 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, SA_INTERRUPT, "SeaLevel", dev)<0)
+	if(request_irq(irq, &z8530_interrupt, IRQF_DISABLED, "SeaLevel", dev)<0)
 	{
 		printk(KERN_WARNING "sealevel: IRQ %d already in use.\n", irq);
 		goto fail1_1;
Index: linux-2.6.git/drivers/net/wan/wanxl.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/wanxl.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/wanxl.c	2006-07-01 16:51:43.000000000 +0200
@@ -755,7 +755,7 @@ static int __devinit wanxl_pci_init_one(
 	       pci_name(pdev), plx_phy, ramsize / 1024, mem_phy, pdev->irq);
 
 	/* Allocate IRQ */
-	if (request_irq(pdev->irq, wanxl_intr, SA_SHIRQ, "wanXL", card)) {
+	if (request_irq(pdev->irq, wanxl_intr, IRQF_SHARED, "wanXL", card)) {
 		printk(KERN_WARNING "wanXL %s: could not allocate IRQ%i.\n",
 		       pci_name(pdev), pdev->irq);
 		wanxl_pci_remove_one(pdev);
Index: linux-2.6.git/drivers/net/wan/lmc/lmc_main.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wan/lmc/lmc_main.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wan/lmc/lmc_main.c	2006-07-01 16:51:43.000000000 +0200
@@ -1058,7 +1058,7 @@ static int lmc_open (struct net_device *
     lmc_softreset (sc);
 
     /* Since we have to use PCI bus, this should work on x86,alpha,ppc */
-    if (request_irq (dev->irq, &lmc_interrupt, SA_SHIRQ, dev->name, dev)){
+    if (request_irq (dev->irq, &lmc_interrupt, IRQF_SHARED, 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;
Index: linux-2.6.git/drivers/net/wireless/airo.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/airo.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/airo.c	2006-07-01 16:51:43.000000000 +0200
@@ -2848,7 +2848,7 @@ static struct net_device *_init_airo_car
 	reset_card (dev, 1);
 	msleep(400);
 
-	rc = request_irq( dev->irq, airo_interrupt, SA_SHIRQ, dev->name, dev );
+	rc = request_irq( dev->irq, airo_interrupt, IRQF_SHARED, dev->name, dev );
 	if (rc) {
 		airo_print_err(dev->name, "register interrupt %d failed, rc %d",
 				irq, rc);
Index: linux-2.6.git/drivers/net/wireless/atmel.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/atmel.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/atmel.c	2006-07-01 16:51:43.000000000 +0200
@@ -1577,7 +1577,7 @@ struct net_device *init_atmel_card(unsig
 
 	SET_NETDEV_DEV(dev, sys_dev);
 
-	if ((rc = request_irq(dev->irq, service_interrupt, SA_SHIRQ, dev->name, dev))) {
+	if ((rc = request_irq(dev->irq, service_interrupt, IRQF_SHARED, dev->name, dev))) {
 		printk(KERN_ERR "%s: register interrupt %d failed, rc %d\n", dev->name, irq, rc);
 		goto err_out_free;
 	}
Index: linux-2.6.git/drivers/net/wireless/ipw2100.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/ipw2100.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/ipw2100.c	2006-07-01 16:51:43.000000000 +0200
@@ -6229,7 +6229,7 @@ static int ipw2100_pci_init_one(struct p
 	ipw2100_queues_initialize(priv);
 
 	err = request_irq(pci_dev->irq,
-			  ipw2100_interrupt, SA_SHIRQ, dev->name, priv);
+			  ipw2100_interrupt, IRQF_SHARED, dev->name, priv);
 	if (err) {
 		printk(KERN_WARNING DRV_NAME
 		       "Error calling request_irq: %d.\n", pci_dev->irq);
Index: linux-2.6.git/drivers/net/wireless/ipw2200.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/ipw2200.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/ipw2200.c	2006-07-01 16:51:43.000000000 +0200
@@ -11545,7 +11545,7 @@ static int ipw_pci_probe(struct pci_dev 
 
 	ipw_sw_reset(priv, 1);
 
-	err = request_irq(pdev->irq, ipw_isr, SA_SHIRQ, DRV_NAME, priv);
+	err = request_irq(pdev->irq, ipw_isr, IRQF_SHARED, DRV_NAME, priv);
 	if (err) {
 		IPW_ERROR("Error allocating IRQ %d\n", pdev->irq);
 		goto out_destroy_workqueue;
Index: linux-2.6.git/drivers/net/wireless/orinoco_nortel.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/orinoco_nortel.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/orinoco_nortel.c	2006-07-01 16:51:43.000000000 +0200
@@ -198,7 +198,7 @@ static int orinoco_nortel_init_one(struc
 
 	hermes_struct_init(&priv->hw, hermes_io, HERMES_16BIT_REGSPACING);
 
-	err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
+	err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (err) {
 		printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
Index: linux-2.6.git/drivers/net/wireless/orinoco_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/orinoco_pci.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/orinoco_pci.c	2006-07-01 16:51:43.000000000 +0200
@@ -153,7 +153,7 @@ static int orinoco_pci_init_one(struct p
 
 	hermes_struct_init(&priv->hw, hermes_io, HERMES_32BIT_REGSPACING);
 
-	err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
+	err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (err) {
 		printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
Index: linux-2.6.git/drivers/net/wireless/orinoco_pci.h
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/orinoco_pci.h	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/orinoco_pci.h	2006-07-01 16:51:43.000000000 +0200
@@ -63,7 +63,7 @@ static int orinoco_pci_resume(struct pci
 	pci_enable_device(pdev);
 	pci_restore_state(pdev);
 
-	err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
+	err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (err) {
 		printk(KERN_ERR "%s: cannot re-allocate IRQ on resume\n",
Index: linux-2.6.git/drivers/net/wireless/orinoco_plx.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/orinoco_plx.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/orinoco_plx.c	2006-07-01 16:51:43.000000000 +0200
@@ -237,7 +237,7 @@ static int orinoco_plx_init_one(struct p
 
 	hermes_struct_init(&priv->hw, hermes_io, HERMES_16BIT_REGSPACING);
 
-	err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
+	err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (err) {
 		printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
Index: linux-2.6.git/drivers/net/wireless/orinoco_tmd.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/orinoco_tmd.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/orinoco_tmd.c	2006-07-01 16:51:43.000000000 +0200
@@ -139,7 +139,7 @@ static int orinoco_tmd_init_one(struct p
 
 	hermes_struct_init(&priv->hw, hermes_io, HERMES_16BIT_REGSPACING);
 
-	err = request_irq(pdev->irq, orinoco_interrupt, SA_SHIRQ,
+	err = request_irq(pdev->irq, orinoco_interrupt, IRQF_SHARED,
 			  dev->name, dev);
 	if (err) {
 		printk(KERN_ERR PFX "Cannot allocate IRQ %d\n", pdev->irq);
Index: linux-2.6.git/drivers/net/wireless/bcm43xx/bcm43xx_main.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/bcm43xx/bcm43xx_main.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/bcm43xx/bcm43xx_main.c	2006-07-01 16:51:43.000000000 +0200
@@ -2175,7 +2175,7 @@ static int bcm43xx_initialize_irq(struct
 	}
 #endif
 	res = request_irq(bcm->irq, bcm43xx_interrupt_handler,
-			  SA_SHIRQ, KBUILD_MODNAME, bcm);
+			  IRQF_SHARED, KBUILD_MODNAME, bcm);
 	if (res) {
 		printk(KERN_ERR PFX "Cannot register IRQ%d\n", bcm->irq);
 		return -ENODEV;
Index: linux-2.6.git/drivers/net/wireless/hostap/hostap_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/hostap/hostap_pci.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/hostap/hostap_pci.c	2006-07-01 16:51:43.000000000 +0200
@@ -337,7 +337,7 @@ static int prism2_pci_probe(struct pci_d
 
 	pci_set_drvdata(pdev, dev);
 
-	if (request_irq(dev->irq, prism2_interrupt, SA_SHIRQ, dev->name,
+	if (request_irq(dev->irq, prism2_interrupt, IRQF_SHARED, dev->name,
 			dev)) {
 		printk(KERN_WARNING "%s: request_irq failed\n", dev->name);
 		goto fail;
Index: linux-2.6.git/drivers/net/wireless/hostap/hostap_plx.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/hostap/hostap_plx.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/hostap/hostap_plx.c	2006-07-01 16:51:43.000000000 +0200
@@ -550,7 +550,7 @@ static int prism2_plx_probe(struct pci_d
 
 	pci_set_drvdata(pdev, dev);
 
-	if (request_irq(dev->irq, prism2_interrupt, SA_SHIRQ, dev->name,
+	if (request_irq(dev->irq, prism2_interrupt, IRQF_SHARED, dev->name,
 			dev)) {
 		printk(KERN_WARNING "%s: request_irq failed\n", dev->name);
 		goto fail;
Index: linux-2.6.git/drivers/net/wireless/prism54/islpci_hotplug.c
===================================================================
--- linux-2.6.git.orig/drivers/net/wireless/prism54/islpci_hotplug.c	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/drivers/net/wireless/prism54/islpci_hotplug.c	2006-07-01 16:51:43.000000000 +0200
@@ -189,7 +189,7 @@ prism54_probe(struct pci_dev *pdev, cons
 
 	/* request for the interrupt before uploading the firmware */
 	rvalue = request_irq(pdev->irq, &islpci_interrupt,
-			     SA_SHIRQ, ndev->name, priv);
+			     IRQF_SHARED, ndev->name, priv);
 
 	if (rvalue) {
 		/* error, could not hook the handler to the irq */
Index: linux-2.6.git/include/net/irda/irda_device.h
===================================================================
--- linux-2.6.git.orig/include/net/irda/irda_device.h	2006-07-01 16:51:15.000000000 +0200
+++ linux-2.6.git/include/net/irda/irda_device.h	2006-07-01 16:51:43.000000000 +0200
@@ -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, SA_SHIRQ|SA_INTERRUPT) */
+        int irqflags;         /* interrupt flags (ie, IRQF_SHARED|IRQF_DISABLED) */
 	int direction;        /* Link direction, used by some FIR drivers */
 	int enabled;          /* Powered on? */
 	int suspended;        /* Suspended by APM */

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 36/44] PARISC: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (34 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 35/44] drivers/net: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 37/44] pci: " Thomas Gleixner
                   ` (8 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	matthew

[-- Attachment #1: irqflags-drivers-parisc.patch --]
[-- Type: text/plain, Size: 1459 bytes --]


Use the new IRQF_ constants and remove the SA_INTERRUPT define

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/parisc/eisa.c    |    2 +-
 drivers/parisc/superio.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Index: linux-2.6.git/drivers/parisc/eisa.c
===================================================================
--- linux-2.6.git.orig/drivers/parisc/eisa.c	2006-07-01 16:51:13.000000000 +0200
+++ linux-2.6.git/drivers/parisc/eisa.c	2006-07-01 16:51:46.000000000 +0200
@@ -340,7 +340,7 @@ static int __devinit eisa_probe(struct p
 	}
 	pcibios_register_hba(&eisa_dev.hba);
 
-	result = request_irq(dev->irq, eisa_irq, SA_SHIRQ, "EISA", &eisa_dev);
+	result = request_irq(dev->irq, eisa_irq, IRQF_SHARED, "EISA", &eisa_dev);
 	if (result) {
 		printk(KERN_ERR "EISA: request_irq failed!\n");
 		return result;
Index: linux-2.6.git/drivers/parisc/superio.c
===================================================================
--- linux-2.6.git.orig/drivers/parisc/superio.c	2006-07-01 16:51:13.000000000 +0200
+++ linux-2.6.git/drivers/parisc/superio.c	2006-07-01 16:51:46.000000000 +0200
@@ -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, SA_INTERRUPT,
+	if (request_irq(pdev->irq, superio_interrupt, IRQF_DISABLED,
 			SUPERIO, (void *)sio)) {
 
 		printk(KERN_ERR PFX "could not get irq\n");

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 37/44] pci: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (35 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 36/44] PARISC: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 38/44] rio: " Thomas Gleixner
                   ` (7 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, greg

[-- Attachment #1: irqflags-drivers-pci.patch --]
[-- Type: text/plain, Size: 4162 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/pci/hotplug/cpci_hotplug_core.c |    2 +-
 drivers/pci/hotplug/cpcihp_zt5550.c     |    4 ++--
 drivers/pci/hotplug/cpqphp_core.c       |    2 +-
 drivers/pci/hotplug/pciehp_hpc.c        |    2 +-
 drivers/pci/hotplug/shpchp_hpc.c        |    2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

Index: linux-2.6.git/drivers/pci/hotplug/cpci_hotplug_core.c
===================================================================
--- linux-2.6.git.orig/drivers/pci/hotplug/cpci_hotplug_core.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/pci/hotplug/cpci_hotplug_core.c	2006-07-01 16:51:46.000000000 +0200
@@ -347,7 +347,7 @@ cpci_hp_intr(int irq, void *data, struct
 	dbg("entered cpci_hp_intr");
 
 	/* Check to see if it was our interrupt */
-	if ((controller->irq_flags & SA_SHIRQ) &&
+	if ((controller->irq_flags & IRQF_SHARED) &&
 	    !controller->ops->check_irq(controller->dev_id)) {
 		dbg("exited cpci_hp_intr, not our interrupt");
 		return IRQ_NONE;
Index: linux-2.6.git/drivers/pci/hotplug/cpcihp_zt5550.c
===================================================================
--- linux-2.6.git.orig/drivers/pci/hotplug/cpcihp_zt5550.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/pci/hotplug/cpcihp_zt5550.c	2006-07-01 16:51:46.000000000 +0200
@@ -35,7 +35,7 @@
 #include <linux/init.h>
 #include <linux/errno.h>
 #include <linux/pci.h>
-#include <linux/signal.h>	/* SA_SHIRQ */
+#include <linux/signal.h>	/* IRQF_SHARED */
 #include "cpci_hotplug.h"
 #include "cpcihp_zt5550.h"
 
@@ -219,7 +219,7 @@ static int zt5550_hc_init_one (struct pc
 	zt5550_hpc.ops = &zt5550_hpc_ops;
 	if(!poll) {
 		zt5550_hpc.irq = hc_dev->irq;
-		zt5550_hpc.irq_flags = SA_SHIRQ;
+		zt5550_hpc.irq_flags = IRQF_SHARED;
 		zt5550_hpc.dev_id = hc_dev;
 
 		zt5550_hpc_ops.enable_irq = zt5550_hc_enable_irq;
Index: linux-2.6.git/drivers/pci/hotplug/cpqphp_core.c
===================================================================
--- linux-2.6.git.orig/drivers/pci/hotplug/cpqphp_core.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/pci/hotplug/cpqphp_core.c	2006-07-01 16:51:46.000000000 +0200
@@ -1188,7 +1188,7 @@ static int cpqhpc_probe(struct pci_dev *
 	/* set up the interrupt */
 	dbg("HPC interrupt = %d \n", ctrl->interrupt);
 	if (request_irq(ctrl->interrupt, cpqhp_ctrl_intr,
-			SA_SHIRQ, MY_NAME, ctrl)) {
+			IRQF_SHARED, MY_NAME, ctrl)) {
 		err("Can't get irq %d for the hotplug pci controller\n",
 			ctrl->interrupt);
 		rc = -ENODEV;
Index: linux-2.6.git/drivers/pci/hotplug/pciehp_hpc.c
===================================================================
--- linux-2.6.git.orig/drivers/pci/hotplug/pciehp_hpc.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/pci/hotplug/pciehp_hpc.c	2006-07-01 16:51:46.000000000 +0200
@@ -1458,7 +1458,7 @@ int pcie_init(struct controller * ctrl, 
 		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, SA_SHIRQ, MY_NAME, (void *) ctrl);
+		rc = request_irq(php_ctlr->irq, pcie_isr, IRQF_SHARED, 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);
Index: linux-2.6.git/drivers/pci/hotplug/shpchp_hpc.c
===================================================================
--- linux-2.6.git.orig/drivers/pci/hotplug/shpchp_hpc.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/pci/hotplug/shpchp_hpc.c	2006-07-01 16:51:46.000000000 +0200
@@ -1246,7 +1246,7 @@ int shpc_init(struct controller * ctrl, 
 		} else
 			php_ctlr->irq = pdev->irq;
 		
-		rc = request_irq(php_ctlr->irq, shpc_isr, SA_SHIRQ, MY_NAME, (void *) ctrl);
+		rc = request_irq(php_ctlr->irq, shpc_isr, IRQF_SHARED, 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);

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 38/44] rio: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (36 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 37/44] pci: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 39/44] scsi: " Thomas Gleixner
                   ` (6 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-drivers-rio.patch --]
[-- Type: text/plain, Size: 697 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/char/rio/rio_linux.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.git/drivers/char/rio/rio_linux.c
===================================================================
--- linux-2.6.git.orig/drivers/char/rio/rio_linux.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/char/rio/rio_linux.c	2006-07-01 16:51:46.000000000 +0200
@@ -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 = SA_SHIRQ;
+			int mode = IRQF_SHARED;
 			if (hp->Ivec & 0x8000) {
 				mode = 0;
 				hp->Ivec &= 0x7fff;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 39/44] scsi: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (37 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 38/44] rio: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 40/44] serial: " Thomas Gleixner
                   ` (5 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	James.Bottomley

[-- Attachment #1: irqflags-drivers-scsi.patch --]
[-- Type: text/plain, Size: 66465 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/scsi/3w-9xxx.c                 |    2 +-
 drivers/scsi/3w-xxxx.c                 |    2 +-
 drivers/scsi/53c7xx.c                  |    4 ++--
 drivers/scsi/BusLogic.c                |    2 +-
 drivers/scsi/NCR5380.c                 |    2 +-
 drivers/scsi/NCR_D700.c                |    2 +-
 drivers/scsi/NCR_Q720.c                |    2 +-
 drivers/scsi/a100u2w.c                 |    2 +-
 drivers/scsi/a2091.c                   |    2 +-
 drivers/scsi/a3000.c                   |    2 +-
 drivers/scsi/aacraid/rkt.c             |    2 +-
 drivers/scsi/aacraid/rx.c              |    2 +-
 drivers/scsi/aacraid/sa.c              |    2 +-
 drivers/scsi/advansys.c                |   18 +++++++++---------
 drivers/scsi/aha152x.c                 |    4 ++--
 drivers/scsi/aha1740.c                 |    2 +-
 drivers/scsi/ahci.c                    |    2 +-
 drivers/scsi/aic7xxx/aic7770_osm.c     |    2 +-
 drivers/scsi/aic7xxx/aic79xx_osm_pci.c |    2 +-
 drivers/scsi/aic7xxx/aic7xxx_osm_pci.c |    2 +-
 drivers/scsi/aic7xxx_old.c             |    4 ++--
 drivers/scsi/arm/acornscsi.c           |    2 +-
 drivers/scsi/arm/cumana_1.c            |    2 +-
 drivers/scsi/arm/cumana_2.c            |    2 +-
 drivers/scsi/arm/powertec.c            |    2 +-
 drivers/scsi/atp870u.c                 |    6 +++---
 drivers/scsi/blz1230.c                 |    2 +-
 drivers/scsi/blz2060.c                 |    2 +-
 drivers/scsi/cyberstorm.c              |    2 +-
 drivers/scsi/cyberstormII.c            |    2 +-
 drivers/scsi/dc395x.c                  |    2 +-
 drivers/scsi/dec_esp.c                 |   10 +++++-----
 drivers/scsi/dmx3191d.c                |    2 +-
 drivers/scsi/dpt_i2o.c                 |    2 +-
 drivers/scsi/dtc.c                     |    2 +-
 drivers/scsi/eata.c                    |    2 +-
 drivers/scsi/eata_pio.c                |    4 ++--
 drivers/scsi/esp.c                     |    2 +-
 drivers/scsi/fastlane.c                |    2 +-
 drivers/scsi/fd_mcs.c                  |    2 +-
 drivers/scsi/fdomain.c                 |    2 +-
 drivers/scsi/g_NCR5380.c               |    2 +-
 drivers/scsi/gdth.c                    |    6 +++---
 drivers/scsi/gvp11.c                   |    2 +-
 drivers/scsi/hptiop.c                  |    2 +-
 drivers/scsi/ibmmca.c                  |    6 +++---
 drivers/scsi/in2000.c                  |    2 +-
 drivers/scsi/initio.c                  |    2 +-
 drivers/scsi/ipr.c                     |    2 +-
 drivers/scsi/ips.c                     |    4 ++--
 drivers/scsi/jazz_esp.c                |    2 +-
 drivers/scsi/lasi700.c                 |    2 +-
 drivers/scsi/libata-bmdma.c            |    2 +-
 drivers/scsi/lpfc/lpfc_init.c          |    2 +-
 drivers/scsi/megaraid.c                |    2 +-
 drivers/scsi/megaraid/megaraid_mbox.c  |    2 +-
 drivers/scsi/megaraid/megaraid_sas.c   |    2 +-
 drivers/scsi/nsp32.c                   |    2 +-
 drivers/scsi/oktagon_esp.c             |    2 +-
 drivers/scsi/pas16.c                   |    2 +-
 drivers/scsi/pcmcia/nsp_cs.c           |    2 +-
 drivers/scsi/pcmcia/sym53c500_cs.c     |    2 +-
 drivers/scsi/pdc_adma.c                |    2 +-
 drivers/scsi/qla1280.c                 |    4 ++--
 drivers/scsi/qla2xxx/qla_os.c          |    2 +-
 drivers/scsi/qlogicpti.c               |    2 +-
 drivers/scsi/sata_mv.c                 |    2 +-
 drivers/scsi/sata_promise.c            |    2 +-
 drivers/scsi/sata_qstor.c              |    2 +-
 drivers/scsi/sata_sil.c                |    2 +-
 drivers/scsi/sata_sil24.c              |    2 +-
 drivers/scsi/sata_svw.c                |    2 +-
 drivers/scsi/sata_sx4.c                |    2 +-
 drivers/scsi/sata_via.c                |    2 +-
 drivers/scsi/sata_vsc.c                |    2 +-
 drivers/scsi/seagate.c                 |    2 +-
 drivers/scsi/sim710.c                  |    2 +-
 drivers/scsi/sun3x_esp.c               |    2 +-
 drivers/scsi/sym53c8xx_2/sym_glue.c    |    2 +-
 drivers/scsi/t128.c                    |    2 +-
 drivers/scsi/tmscsim.c                 |    2 +-
 drivers/scsi/u14-34f.c                 |    2 +-
 drivers/scsi/wd7000.c                  |    2 +-
 drivers/scsi/zalon.c                   |    2 +-
 84 files changed, 108 insertions(+), 108 deletions(-)

Index: linux-2.6.git/drivers/scsi/3w-9xxx.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/3w-9xxx.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/3w-9xxx.c	2006-07-01 16:51:47.000000000 +0200
@@ -2122,7 +2122,7 @@ static int __devinit twa_probe(struct pc
 				     TW_PARAM_PORTCOUNT, TW_PARAM_PORTCOUNT_LENGTH)));
 
 	/* Now setup the interrupt handler */
-	retval = request_irq(pdev->irq, twa_interrupt, SA_SHIRQ, "3w-9xxx", tw_dev);
+	retval = request_irq(pdev->irq, twa_interrupt, IRQF_SHARED, "3w-9xxx", tw_dev);
 	if (retval) {
 		TW_PRINTK(tw_dev->host, TW_DRIVER, 0x30, "Error requesting IRQ");
 		goto out_remove_host;
Index: linux-2.6.git/drivers/scsi/3w-xxxx.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/3w-xxxx.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/3w-xxxx.c	2006-07-01 16:51:47.000000000 +0200
@@ -2397,7 +2397,7 @@ static int __devinit tw_probe(struct pci
 	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, SA_SHIRQ, "3w-xxxx", tw_dev);
+	retval = request_irq(pdev->irq, tw_interrupt, IRQF_SHARED, "3w-xxxx", tw_dev);
 	if (retval) {
 		printk(KERN_WARNING "3w-xxxx: Error requesting IRQ.");
 		goto out_remove_host;
Index: linux-2.6.git/drivers/scsi/53c7xx.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/53c7xx.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/53c7xx.c	2006-07-01 16:51:47.000000000 +0200
@@ -1070,7 +1070,7 @@ NCR53c7x0_init (struct Scsi_Host *host) 
 
     NCR53c7x0_driver_init (host);
 
-    if (request_irq(host->irq, NCR53c7x0_intr, SA_SHIRQ, "53c7xx", host))
+    if (request_irq(host->irq, NCR53c7x0_intr, IRQF_SHARED, "53c7xx", host))
     {
 	printk("scsi%d : IRQ%d not free, detaching\n",
 		host->host_no, host->irq);
@@ -4232,7 +4232,7 @@ restart:
  * Purpose : handle NCR53c7x0 interrupts for all NCR devices sharing
  *	the same IRQ line.  
  * 
- * Inputs : Since we're using the SA_INTERRUPT interrupt handler
+ * Inputs : Since we're using the IRQF_DISABLED interrupt handler
  *	semantics, irq indicates the interrupt which invoked 
  *	this handler.  
  *
Index: linux-2.6.git/drivers/scsi/a100u2w.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/a100u2w.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/a100u2w.c	2006-07-01 16:51:47.000000000 +0200
@@ -1120,7 +1120,7 @@ static int __devinit inia100_probe_one(s
 	shost->sg_tablesize = TOTAL_SG_ENTRY;
 
 	/* Initial orc chip           */
-	error = request_irq(pdev->irq, inia100_intr, SA_SHIRQ,
+	error = request_irq(pdev->irq, inia100_intr, IRQF_SHARED,
 			"inia100", shost);
 	if (error < 0) {
 		printk(KERN_WARNING "inia100: unable to get irq %d\n",
Index: linux-2.6.git/drivers/scsi/a2091.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/a2091.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/a2091.c	2006-07-01 16:51:47.000000000 +0200
@@ -208,7 +208,7 @@ int __init a2091_detect(struct scsi_host
 	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, SA_SHIRQ, "A2091 SCSI",
+	request_irq(IRQ_AMIGA_PORTS, a2091_intr, IRQF_SHARED, "A2091 SCSI",
 		    instance);
 	DMA(instance)->CNTR = CNTR_PDMD | CNTR_INTEN;
 	num_a2091++;
Index: linux-2.6.git/drivers/scsi/a3000.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/a3000.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/a3000.c	2006-07-01 16:51:47.000000000 +0200
@@ -190,7 +190,7 @@ int __init a3000_detect(struct scsi_host
     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, SA_SHIRQ, "A3000 SCSI",
+    if (request_irq(IRQ_AMIGA_PORTS, a3000_intr, IRQF_SHARED, "A3000 SCSI",
 		    a3000_intr))
         goto fail_irq;
     DMA(a3000_host)->CNTR = CNTR_PDMD | CNTR_INTEN;
Index: linux-2.6.git/drivers/scsi/advansys.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/advansys.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/advansys.c	2006-07-01 16:51:47.000000000 +0200
@@ -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 SA_SHIRQ flag for
+         2. Add support for IRQ sharing by setting the IRQF_SHARED 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 SA_INTERRUPT
+         5. Try allocating an IRQ both with and without the IRQF_DISABLED
             flag set to allow IRQ sharing with drivers that do not set
-            the SA_INTERRUPT flag. Also display a more descriptive error
+            the IRQF_DISABLED 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_templat
             /* Register IRQ Number. */
             ASC_DBG1(2, "advansys_detect: request_irq() %d\n", shp->irq);
            /*
-            * If request_irq() fails with the SA_INTERRUPT flag set,
-            * then try again without the SA_INTERRUPT flag set. This
+            * If request_irq() fails with the IRQF_DISABLED flag set,
+            * then try again without the IRQF_DISABLED flag set. This
             * allows IRQ sharing to work even with other drivers that
-            * do not set the SA_INTERRUPT flag.
+            * do not set the IRQF_DISABLED flag.
             *
-            * If SA_INTERRUPT is not set, then interrupts are enabled
+            * If IRQF_DISABLED is not set, then interrupts are enabled
             * before the driver interrupt function is called.
             */
             if (((ret = request_irq(shp->irq, advansys_interrupt,
-                            SA_INTERRUPT | (share_irq == TRUE ? SA_SHIRQ : 0),
+                            IRQF_DISABLED | (share_irq == TRUE ? IRQF_SHARED : 0),
                             "advansys", boardp)) != 0) &&
                 ((ret = request_irq(shp->irq, advansys_interrupt,
-                            (share_irq == TRUE ? SA_SHIRQ : 0),
+                            (share_irq == TRUE ? IRQF_SHARED : 0),
                             "advansys", boardp)) != 0))
             {
                 if (ret == -EBUSY) {
Index: linux-2.6.git/drivers/scsi/aha152x.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aha152x.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aha152x.c	2006-07-01 16:51:47.000000000 +0200
@@ -855,7 +855,7 @@ struct Scsi_Host *aha152x_probe_one(stru
 	SETPORT(SIMODE0, 0);
 	SETPORT(SIMODE1, 0);
 
-	if( request_irq(shpnt->irq, swintr, SA_INTERRUPT|SA_SHIRQ, "aha152x", shpnt) ) {
+	if( request_irq(shpnt->irq, swintr, IRQF_DISABLED|IRQF_SHARED, "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(stru
 	SETPORT(SSTAT0, 0x7f);
 	SETPORT(SSTAT1, 0xef);
 
-	if ( request_irq(shpnt->irq, intr, SA_INTERRUPT|SA_SHIRQ, "aha152x", shpnt) ) {
+	if ( request_irq(shpnt->irq, intr, IRQF_DISABLED|IRQF_SHARED, "aha152x", shpnt) ) {
 		printk(KERN_ERR "aha152x%d: failed to reassign irq %d.\n", shpnt->host_no, shpnt->irq);
 		goto out_host_put;
 	}
Index: linux-2.6.git/drivers/scsi/aha1740.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aha1740.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aha1740.c	2006-07-01 16:51:47.000000000 +0200
@@ -634,7 +634,7 @@ static int aha1740_probe (struct device 
 	}
 	
 	DEB(printk("aha1740_probe: enable interrupt channel %d\n",irq_level));
-	if (request_irq(irq_level,aha1740_intr_handle,irq_type ? 0 : SA_SHIRQ,
+	if (request_irq(irq_level,aha1740_intr_handle,irq_type ? 0 : IRQF_SHARED,
 			"aha1740",shpnt)) {
 		printk(KERN_ERR "aha1740_probe: Unable to allocate IRQ %d.\n",
 		       irq_level);
Index: linux-2.6.git/drivers/scsi/ahci.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/ahci.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/ahci.c	2006-07-01 16:51:47.000000000 +0200
@@ -1371,7 +1371,7 @@ static int ahci_init_one (struct pci_dev
 	probe_ent->port_ops	= ahci_port_info[board_idx].port_ops;
 
        	probe_ent->irq = pdev->irq;
-       	probe_ent->irq_flags = SA_SHIRQ;
+       	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = mmio_base;
 	probe_ent->private_data = hpriv;
 
Index: linux-2.6.git/drivers/scsi/aic7xxx_old.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aic7xxx_old.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aic7xxx_old.c	2006-07-01 16:51:47.000000000 +0200
@@ -8322,11 +8322,11 @@ aic7xxx_register(struct scsi_host_templa
   }
   else
   {
-    result = (request_irq(p->irq, do_aic7xxx_isr, SA_SHIRQ,
+    result = (request_irq(p->irq, do_aic7xxx_isr, IRQF_SHARED,
               "aic7xxx", p));
     if (result < 0)
     {
-      result = (request_irq(p->irq, do_aic7xxx_isr, SA_INTERRUPT | SA_SHIRQ,
+      result = (request_irq(p->irq, do_aic7xxx_isr, IRQF_DISABLED | IRQF_SHARED,
               "aic7xxx", p));
     }
   }
Index: linux-2.6.git/drivers/scsi/atp870u.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/atp870u.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/atp870u.c	2006-07-01 16:51:47.000000000 +0200
@@ -2751,7 +2751,7 @@ flash_ok_880:
 			goto unregister;
 		}
 
-		if (request_irq(pdev->irq, atp870u_intr_handle, SA_SHIRQ, "atp880i", shpnt)) {
+		if (request_irq(pdev->irq, atp870u_intr_handle, IRQF_SHARED, "atp880i", shpnt)) {
  			printk(KERN_ERR "Unable to allocate IRQ%d for Acard controller.\n", pdev->irq);
 			goto free_tables;
 		}
@@ -2822,7 +2822,7 @@ flash_ok_880:
 #ifdef ED_DBGP		
 	printk("request_irq() shpnt %p hostdata %p\n", shpnt, p);
 #endif	        
-		if (request_irq(pdev->irq, atp870u_intr_handle, SA_SHIRQ, "atp870u", shpnt)) {
+		if (request_irq(pdev->irq, atp870u_intr_handle, IRQF_SHARED, "atp870u", shpnt)) {
 				printk(KERN_ERR "Unable to allocate IRQ for Acard controller.\n");
 			goto free_tables;
 		}
@@ -3004,7 +3004,7 @@ flash_ok_885:
 		if (atp870u_init_tables(shpnt) < 0)
 			goto unregister;
 
-		if (request_irq(pdev->irq, atp870u_intr_handle, SA_SHIRQ, "atp870i", shpnt)) {
+		if (request_irq(pdev->irq, atp870u_intr_handle, IRQF_SHARED, "atp870i", shpnt)) {
 			printk(KERN_ERR "Unable to allocate IRQ%d for Acard controller.\n", pdev->irq);
 			goto free_tables;
 		}
Index: linux-2.6.git/drivers/scsi/blz1230.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/blz1230.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/blz1230.c	2006-07-01 16:51:47.000000000 +0200
@@ -172,7 +172,7 @@ int __init blz1230_esp_detect(struct scs
 
 		esp->irq = IRQ_AMIGA_PORTS;
 		esp->slot = board+REAL_BLZ1230_ESP_ADDR;
-		if (request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
+		if (request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
 				 "Blizzard 1230 SCSI IV", esp->ehost))
 			goto err_out;
 
Index: linux-2.6.git/drivers/scsi/blz2060.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/blz2060.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/blz2060.c	2006-07-01 16:51:47.000000000 +0200
@@ -146,7 +146,7 @@ int __init blz2060_esp_detect(struct scs
 		esp->esp_command_dvma = virt_to_bus((void *)cmd_buffer);
 
 		esp->irq = IRQ_AMIGA_PORTS;
-		request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
+		request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
 			    "Blizzard 2060 SCSI", esp->ehost);
 
 		/* Figure out our scsi ID on the bus */
Index: linux-2.6.git/drivers/scsi/BusLogic.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/BusLogic.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/BusLogic.c	2006-07-01 16:51:47.000000000 +0200
@@ -1844,7 +1844,7 @@ static boolean __init BusLogic_AcquireRe
 	/*
 	   Acquire shared access to the IRQ Channel.
 	 */
-	if (request_irq(HostAdapter->IRQ_Channel, BusLogic_InterruptHandler, SA_SHIRQ, HostAdapter->FullModelName, HostAdapter) < 0) {
+	if (request_irq(HostAdapter->IRQ_Channel, BusLogic_InterruptHandler, IRQF_SHARED, HostAdapter->FullModelName, HostAdapter) < 0) {
 		BusLogic_Error("UNABLE TO ACQUIRE IRQ CHANNEL %d - DETACHING\n", HostAdapter, HostAdapter->IRQ_Channel);
 		return false;
 	}
Index: linux-2.6.git/drivers/scsi/cyberstorm.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/cyberstorm.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/cyberstorm.c	2006-07-01 16:51:47.000000000 +0200
@@ -172,7 +172,7 @@ int __init cyber_esp_detect(struct scsi_
 		esp->esp_command_dvma = virt_to_bus((void *)cmd_buffer);
 
 		esp->irq = IRQ_AMIGA_PORTS;
-		request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
+		request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
 			    "CyberStorm SCSI", esp->ehost);
 		/* Figure out our scsi ID on the bus */
 		/* The DMA cond flag contains a hardcoded jumper bit
Index: linux-2.6.git/drivers/scsi/cyberstormII.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/cyberstormII.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/cyberstormII.c	2006-07-01 16:51:47.000000000 +0200
@@ -153,7 +153,7 @@ int __init cyberII_esp_detect(struct scs
 		esp->esp_command_dvma = virt_to_bus((void *)cmd_buffer);
 
 		esp->irq = IRQ_AMIGA_PORTS;
-		request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
+		request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
 			    "CyberStorm SCSI Mk II", esp->ehost);
 
 		/* Figure out our scsi ID on the bus */
Index: linux-2.6.git/drivers/scsi/dc395x.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/dc395x.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/dc395x.c	2006-07-01 16:51:47.000000000 +0200
@@ -4562,7 +4562,7 @@ static int __devinit adapter_init(struct
 	acb->io_port_base = io_port;
 	acb->io_port_len = io_port_len;
 	
-	if (request_irq(irq, dc395x_interrupt, SA_SHIRQ, DC395X_NAME, acb)) {
+	if (request_irq(irq, dc395x_interrupt, IRQF_SHARED, DC395X_NAME, acb)) {
 	    	/* release the region we just claimed */
 		dprintkl(KERN_INFO, "Failed to register IRQ\n");
 		goto failed;
Index: linux-2.6.git/drivers/scsi/dec_esp.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/dec_esp.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/dec_esp.c	2006-07-01 16:51:47.000000000 +0200
@@ -202,19 +202,19 @@ static int dec_esp_detect(struct scsi_ho
 
 		esp_initialize(esp);
 
-		if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
+		if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
 				"ncr53c94", esp->ehost))
 			goto err_dealloc;
 		if (request_irq(dec_interrupt[DEC_IRQ_ASC_MERR],
-				scsi_dma_merr_int, SA_INTERRUPT,
+				scsi_dma_merr_int, IRQF_DISABLED,
 				"ncr53c94 error", esp->ehost))
 			goto err_free_irq;
 		if (request_irq(dec_interrupt[DEC_IRQ_ASC_ERR],
-				scsi_dma_err_int, SA_INTERRUPT,
+				scsi_dma_err_int, IRQF_DISABLED,
 				"ncr53c94 overrun", esp->ehost))
 			goto err_free_irq_merr;
 		if (request_irq(dec_interrupt[DEC_IRQ_ASC_DMA],
-				scsi_dma_int, SA_INTERRUPT,
+				scsi_dma_int, IRQF_DISABLED,
 				"ncr53c94 dma", esp->ehost))
 			goto err_free_irq_err;
 
@@ -276,7 +276,7 @@ static int dec_esp_detect(struct scsi_ho
 			esp->dma_mmu_release_scsi_sgl = 0;
 			esp->dma_advance_sg = 0;
 
- 			if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
+ 			if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
  					 "PMAZ_AA", esp->ehost)) {
  				esp_deallocate(esp);
  				release_tc_card(slot);
Index: linux-2.6.git/drivers/scsi/dmx3191d.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/dmx3191d.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/dmx3191d.c	2006-07-01 16:51:47.000000000 +0200
@@ -94,7 +94,7 @@ static int __devinit dmx3191d_probe_one(
 
 	NCR5380_init(shost, FLAG_NO_PSEUDO_DMA | FLAG_DTC3181E);
 
-	if (request_irq(pdev->irq, NCR5380_intr, SA_SHIRQ,
+	if (request_irq(pdev->irq, NCR5380_intr, IRQF_SHARED,
 				DMX3191D_DRIVER_NAME, shost)) {
 		/*
 		 * Steam powered scsi controllers run without an IRQ anyway
Index: linux-2.6.git/drivers/scsi/dpt_i2o.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/dpt_i2o.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/dpt_i2o.c	2006-07-01 16:51:47.000000000 +0200
@@ -1009,7 +1009,7 @@ static int adpt_install_hba(struct scsi_
 		printk(KERN_INFO"     BAR1 %p - size= %x\n",msg_addr_virt,hba_map1_area_size);
 	}
 
-	if (request_irq (pDev->irq, adpt_isr, SA_SHIRQ, pHba->name, pHba)) {
+	if (request_irq (pDev->irq, adpt_isr, IRQF_SHARED, pHba->name, pHba)) {
 		printk(KERN_ERR"%s: Couldn't register IRQ %d\n", pHba->name, pDev->irq);
 		adpt_i2o_delete_hba(pHba);
 		return -EINVAL;
Index: linux-2.6.git/drivers/scsi/dtc.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/dtc.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/dtc.c	2006-07-01 16:51:47.000000000 +0200
@@ -280,7 +280,7 @@ found:
 		/* 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, SA_INTERRUPT, "dtc", instance)) {
+			if (request_irq(instance->irq, dtc_intr, IRQF_DISABLED, "dtc", instance)) {
 				printk(KERN_ERR "scsi%d : IRQ%d not free, interrupts disabled\n", instance->host_no, instance->irq);
 				instance->irq = SCSI_IRQ_NONE;
 			}
Index: linux-2.6.git/drivers/scsi/eata.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/eata.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/eata.c	2006-07-01 16:51:47.000000000 +0200
@@ -1221,7 +1221,7 @@ static int port_detect(unsigned long por
 
 	/* Board detected, allocate its IRQ */
 	if (request_irq(irq, do_interrupt_handler,
-			SA_INTERRUPT | ((subversion == ESA) ? SA_SHIRQ : 0),
+			IRQF_DISABLED | ((subversion == ESA) ? IRQF_SHARED : 0),
 			driver_name, (void *)&sha[j])) {
 		printk("%s: unable to allocate IRQ %u, detaching.\n", name,
 		       irq);
Index: linux-2.6.git/drivers/scsi/eata_pio.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/eata_pio.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/eata_pio.c	2006-07-01 16:51:47.000000000 +0200
@@ -731,7 +731,7 @@ static int register_pio_HBA(long base, s
 		return 0;
 
 	if (!reg_IRQ[gc->IRQ]) {	/* Interrupt already registered ? */
-		if (!request_irq(gc->IRQ, do_eata_pio_int_handler, SA_INTERRUPT, "EATA-PIO", sh)) {
+		if (!request_irq(gc->IRQ, do_eata_pio_int_handler, IRQF_DISABLED, "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_h
 
 	for (i = 0; i <= MAXIRQ; i++)
 		if (reg_IRQ[i])
-			request_irq(i, do_eata_pio_int_handler, SA_INTERRUPT, "EATA-PIO", NULL);
+			request_irq(i, do_eata_pio_int_handler, IRQF_DISABLED, "EATA-PIO", NULL);
 
 	HBA_ptr = first_HBA;
 
Index: linux-2.6.git/drivers/scsi/esp.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/esp.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/esp.c	2006-07-01 16:51:47.000000000 +0200
@@ -778,7 +778,7 @@ static int __init esp_register_irq(struc
 	 * sanely maintain.
 	 */
 	if (request_irq(esp->ehost->irq, esp_intr,
-			SA_SHIRQ, "ESP SCSI", esp)) {
+			IRQF_SHARED, "ESP SCSI", esp)) {
 		printk("esp%d: Cannot acquire irq line\n",
 		       esp->esp_id);
 		return -1;
Index: linux-2.6.git/drivers/scsi/fastlane.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/fastlane.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/fastlane.c	2006-07-01 16:51:47.000000000 +0200
@@ -210,7 +210,7 @@ int __init fastlane_esp_detect(struct sc
 
 		esp->irq = IRQ_AMIGA_PORTS;
 		esp->slot = board+FASTLANE_ESP_ADDR;
-		if (request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
+		if (request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
 				"Fastlane SCSI", esp->ehost)) {
 			printk(KERN_WARNING "Fastlane: Could not get IRQ%d, aborting.\n", IRQ_AMIGA_PORTS);
 			goto err_unmap;
Index: linux-2.6.git/drivers/scsi/fd_mcs.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/fd_mcs.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/fd_mcs.c	2006-07-01 16:51:47.000000000 +0200
@@ -400,7 +400,7 @@ static int fd_mcs_detect(struct scsi_hos
 				mca_set_adapter_name(slot - 1, fd_mcs_adapters[loop].name);
 
 				/* check irq/region */
-				if (request_irq(irq, fd_mcs_intr, SA_SHIRQ, "fd_mcs", hosts)) {
+				if (request_irq(irq, fd_mcs_intr, IRQF_SHARED, "fd_mcs", hosts)) {
 					printk(KERN_ERR "fd_mcs: interrupt is not available, skipping...\n");
 					continue;
 				}
Index: linux-2.6.git/drivers/scsi/fdomain.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/fdomain.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/fdomain.c	2006-07-01 16:51:47.000000000 +0200
@@ -949,7 +949,7 @@ struct Scsi_Host *__fdomain_16x0_detect(
       /* Register the IRQ with the kernel */
 
       retcode = request_irq( interrupt_level,
-			     do_fdomain_16x0_intr, pdev?SA_SHIRQ:0, "fdomain", shpnt);
+			     do_fdomain_16x0_intr, pdev?IRQF_SHARED:0, "fdomain", shpnt);
 
       if (retcode < 0) {
 	 if (retcode == -EINVAL) {
Index: linux-2.6.git/drivers/scsi/gdth.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/gdth.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/gdth.c	2006-07-01 16:51:47.000000000 +0200
@@ -4350,7 +4350,7 @@ static int __init gdth_detect(Scsi_Host_
                 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,SA_INTERRUPT,"gdth",ha)) {
+                if (request_irq(ha->irq,gdth_interrupt,IRQF_DISABLED,"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_
                 printk("Configuring GDT-EISA HA at Slot %d IRQ %u\n",
                        eisa_slot>>12,ha->irq);
 
-                if (request_irq(ha->irq,gdth_interrupt,SA_INTERRUPT,"gdth",ha)) {
+                if (request_irq(ha->irq,gdth_interrupt,IRQF_DISABLED,"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_
                pcistr[ctr].bus,PCI_SLOT(pcistr[ctr].device_fn),ha->irq);
 
         if (request_irq(ha->irq, gdth_interrupt,
-                        SA_INTERRUPT|SA_SHIRQ, "gdth", ha))
+                        IRQF_DISABLED|IRQF_SHARED, "gdth", ha))
         {
             printk("GDT-PCI: Unable to allocate IRQ\n");
             scsi_unregister(shp);
Index: linux-2.6.git/drivers/scsi/g_NCR5380.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/g_NCR5380.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/g_NCR5380.c	2006-07-01 16:51:47.000000000 +0200
@@ -461,7 +461,7 @@ int __init generic_NCR5380_detect(struct
 			instance->irq = NCR5380_probe_irq(instance, 0xffff);
 
 		if (instance->irq != SCSI_IRQ_NONE)
-			if (request_irq(instance->irq, generic_NCR5380_intr, SA_INTERRUPT, "NCR5380", instance)) {
+			if (request_irq(instance->irq, generic_NCR5380_intr, IRQF_DISABLED, "NCR5380", instance)) {
 				printk(KERN_WARNING "scsi%d : IRQ%d not free, interrupts disabled\n", instance->host_no, instance->irq);
 				instance->irq = SCSI_IRQ_NONE;
 			}
Index: linux-2.6.git/drivers/scsi/gvp11.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/gvp11.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/gvp11.c	2006-07-01 16:51:47.000000000 +0200
@@ -328,7 +328,7 @@ int __init gvp11_detect(struct scsi_host
 		     (epc & GVP_SCSICLKMASK) ? WD33C93_FS_8_10
 					     : WD33C93_FS_12_15);
 
-	request_irq(IRQ_AMIGA_PORTS, gvp11_intr, SA_SHIRQ, "GVP11 SCSI",
+	request_irq(IRQ_AMIGA_PORTS, gvp11_intr, IRQF_SHARED, "GVP11 SCSI",
 		    instance);
 	DMA(instance)->CNTR = GVP11_DMAC_INT_ENABLE;
 	num_gvp11++;
Index: linux-2.6.git/drivers/scsi/hptiop.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/hptiop.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/hptiop.c	2006-07-01 16:51:47.000000000 +0200
@@ -1304,7 +1304,7 @@ static int __devinit hptiop_probe(struct
 
 	pci_set_drvdata(pcidev, host);
 
-	if (request_irq(pcidev->irq, hptiop_intr, SA_SHIRQ,
+	if (request_irq(pcidev->irq, hptiop_intr, IRQF_SHARED,
 					driver_name, hba)) {
 		printk(KERN_ERR "scsi%d: request irq %d failed\n",
 					hba->host->host_no, pcidev->irq);
Index: linux-2.6.git/drivers/scsi/ibmmca.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/ibmmca.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/ibmmca.c	2006-07-01 16:51:47.000000000 +0200
@@ -1510,7 +1510,7 @@ int ibmmca_detect(struct scsi_host_templ
 #endif
 
 	/* get interrupt request level */
-	if (request_irq(IM_IRQ, interrupt_handler, SA_SHIRQ, "ibmmcascsi", hosts)) {
+	if (request_irq(IM_IRQ, interrupt_handler, IRQF_SHARED, "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_templ
 				/* 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, SA_SHIRQ, "ibmmcascsi", hosts)) {
+				if (request_irq(IM_IRQ_FW, interrupt_handler, IRQF_SHARED, "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_templ
 				/* 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, SA_SHIRQ, "ibmmcascsi", hosts))
+				if (request_irq(IM_IRQ_FW, interrupt_handler, IRQF_SHARED, "ibmmcascsi", hosts))
 					printk(KERN_ERR "IBM MCA SCSI: Unable to get shared IRQ %d.\n", IM_IRQ_FW);
 				else
 					IRQ11_registered++;
Index: linux-2.6.git/drivers/scsi/in2000.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/in2000.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/in2000.c	2006-07-01 16:51:47.000000000 +0200
@@ -2015,7 +2015,7 @@ static int __init in2000_detect(struct s
 		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, SA_INTERRUPT, "in2000", instance)) {
+		if (request_irq(x, in2000_intr, IRQF_DISABLED, "in2000", instance)) {
 			printk("in2000_detect: Unable to allocate IRQ.\n");
 			detect_count--;
 			continue;
Index: linux-2.6.git/drivers/scsi/initio.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/initio.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/initio.c	2006-07-01 16:51:47.000000000 +0200
@@ -2867,7 +2867,7 @@ static int i91u_detect(struct scsi_host_
 		hreg->sg_tablesize = TOTAL_SG_ENTRY;	/* Maximun support is 32 */
 
 		/* Initial tulip chip           */
-		ok = request_irq(pHCB->HCS_Intr, i91u_intr, SA_INTERRUPT | SA_SHIRQ, "i91u", hreg);
+		ok = request_irq(pHCB->HCS_Intr, i91u_intr, IRQF_DISABLED | IRQF_SHARED, "i91u", hreg);
 		if (ok < 0) {
 			printk(KERN_WARNING "i91u: unable to request IRQ %d\n\n", pHCB->HCS_Intr);
 			return 0;
Index: linux-2.6.git/drivers/scsi/ipr.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/ipr.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/ipr.c	2006-07-01 16:51:47.000000000 +0200
@@ -6428,7 +6428,7 @@ static int __devinit ipr_probe_ioa(struc
 		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, SA_SHIRQ, IPR_NAME, ioa_cfg);
+	rc = request_irq(pdev->irq, ipr_isr, IRQF_SHARED, IPR_NAME, ioa_cfg);
 
 	if (rc) {
 		dev_err(&pdev->dev, "Couldn't register IRQ %d! rc=%d\n",
Index: linux-2.6.git/drivers/scsi/ips.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/ips.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/ips.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ, ips_name, ha)) {
+	if (request_irq(ha->irq, do_ipsintr, IRQF_SHARED, 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, SA_SHIRQ, ips_name, ha)) {
+	if (request_irq(ha->irq, do_ipsintr, IRQF_SHARED, ips_name, ha)) {
 		IPS_PRINTK(KERN_WARNING, ha->pcidev,
 			   "Unable to install interrupt handler\n");
 		return ips_abort_init(ha, index);
Index: linux-2.6.git/drivers/scsi/jazz_esp.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/jazz_esp.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/jazz_esp.c	2006-07-01 16:51:47.000000000 +0200
@@ -131,7 +131,7 @@ static int jazz_esp_detect(struct scsi_h
 	esp->esp_command_dvma = vdma_alloc(CPHYSADDR(cmd_buffer), sizeof (cmd_buffer));
 	
 	esp->irq = JAZZ_SCSI_IRQ;
-	request_irq(JAZZ_SCSI_IRQ, esp_intr, SA_INTERRUPT, "JAZZ SCSI",
+	request_irq(JAZZ_SCSI_IRQ, esp_intr, IRQF_DISABLED, "JAZZ SCSI",
 	            esp->ehost);
 
 	/*
Index: linux-2.6.git/drivers/scsi/lasi700.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/lasi700.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/lasi700.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ, "lasi700", host)) {
+	if(request_irq(dev->irq, NCR_700_intr, IRQF_SHARED, "lasi700", host)) {
 		printk(KERN_ERR "lasi700: request_irq failed!\n");
 		goto out_put_host;
 	}
Index: linux-2.6.git/drivers/scsi/libata-bmdma.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/libata-bmdma.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/libata-bmdma.c	2006-07-01 16:51:47.000000000 +0200
@@ -853,7 +853,7 @@ ata_pci_init_native_mode(struct pci_dev 
 		return NULL;
 
 	probe_ent->irq = pdev->irq;
-	probe_ent->irq_flags = SA_SHIRQ;
+	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->private_data = port[0]->private_data;
 
 	if (ports & ATA_PORT_PRIMARY) {
Index: linux-2.6.git/drivers/scsi/megaraid.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/megaraid.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/megaraid.c	2006-07-01 16:51:47.000000000 +0200
@@ -4714,7 +4714,7 @@ megaraid_probe_one(struct pci_dev *pdev,
 
 	if (request_irq(irq, (adapter->flag & BOARD_MEMMAP) ?
 				megaraid_isr_memmapped : megaraid_isr_iomapped,
-					SA_SHIRQ, "megaraid", adapter)) {
+					IRQF_SHARED, "megaraid", adapter)) {
 		printk(KERN_WARNING
 			"megaraid: Couldn't register IRQ %d!\n", irq);
 		goto out_free_scb_list;
Index: linux-2.6.git/drivers/scsi/NCR5380.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/NCR5380.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/NCR5380.c	2006-07-01 16:51:47.000000000 +0200
@@ -585,7 +585,7 @@ static int __init NCR5380_probe_irq(stru
 	NCR5380_setup(instance);
 
 	for (trying_irqs = i = 0, mask = 1; i < 16; ++i, mask <<= 1)
-		if ((mask & possible) && (request_irq(i, &probe_intr, SA_INTERRUPT, "NCR-probe", NULL) == 0))
+		if ((mask & possible) && (request_irq(i, &probe_intr, IRQF_DISABLED, "NCR-probe", NULL) == 0))
 			trying_irqs |= mask;
 
 	timeout = jiffies + (250 * HZ / 1000);
Index: linux-2.6.git/drivers/scsi/NCR_D700.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/NCR_D700.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/NCR_D700.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ, p->name, p)) {
+	if (request_irq(irq, NCR_D700_intr, IRQF_SHARED, p->name, p)) {
 		printk(KERN_ERR "D700: request_irq failed\n");
 		kfree(p);
 		return -EBUSY;
Index: linux-2.6.git/drivers/scsi/NCR_Q720.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/NCR_Q720.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/NCR_Q720.c	2006-07-01 16:51:47.000000000 +0200
@@ -265,7 +265,7 @@ NCR_Q720_probe(struct device *dev)
 	p->irq = irq;
 	p->siops = siops;
 
-	if (request_irq(irq, NCR_Q720_intr, SA_SHIRQ, "NCR_Q720", p)) {
+	if (request_irq(irq, NCR_Q720_intr, IRQF_SHARED, "NCR_Q720", p)) {
 		printk(KERN_ERR "NCR_Q720: request irq %d failed\n", irq);
 		goto out_release;
 	}
Index: linux-2.6.git/drivers/scsi/nsp32.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/nsp32.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/nsp32.c	2006-07-01 16:51:47.000000000 +0200
@@ -2867,7 +2867,7 @@ static int nsp32_detect(struct scsi_host
 	nsp32_do_bus_reset(data);
 
 	ret = request_irq(host->irq, do_nsp32_isr,
-			  SA_SHIRQ | SA_SAMPLE_RANDOM, "nsp32", data);
+			  IRQF_SHARED | IRQF_SAMPLE_RANDOM, "nsp32", data);
 	if (ret < 0) {
 		nsp32_msg(KERN_ERR, "Unable to allocate IRQ for NinjaSCSI32 "
 			  "SCSI PCI controller. Interrupt: %d", host->irq);
Index: linux-2.6.git/drivers/scsi/oktagon_esp.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/oktagon_esp.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/oktagon_esp.c	2006-07-01 16:51:47.000000000 +0200
@@ -197,7 +197,7 @@ int oktagon_esp_detect(struct scsi_host_
 		esp->esp_command_dvma = (__u32) cmd_buffer;
 
 		esp->irq = IRQ_AMIGA_PORTS;
-		request_irq(IRQ_AMIGA_PORTS, esp_intr, SA_SHIRQ,
+		request_irq(IRQ_AMIGA_PORTS, esp_intr, IRQF_SHARED,
 			    "BSC Oktagon SCSI", esp->ehost);
 
 		/* Figure out our scsi ID on the bus */
Index: linux-2.6.git/drivers/scsi/pas16.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/pas16.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/pas16.c	2006-07-01 16:51:47.000000000 +0200
@@ -454,7 +454,7 @@ int __init pas16_detect(struct scsi_host
 	    instance->irq = NCR5380_probe_irq(instance, PAS16_IRQS);
 
 	if (instance->irq != SCSI_IRQ_NONE) 
-	    if (request_irq(instance->irq, pas16_intr, SA_INTERRUPT, "pas16", instance)) {
+	    if (request_irq(instance->irq, pas16_intr, IRQF_DISABLED, "pas16", instance)) {
 		printk("scsi%d : IRQ%d not free, interrupts disabled\n", 
 		    instance->host_no, instance->irq);
 		instance->irq = SCSI_IRQ_NONE;
Index: linux-2.6.git/drivers/scsi/pdc_adma.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/pdc_adma.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/pdc_adma.c	2006-07-01 16:51:47.000000000 +0200
@@ -690,7 +690,7 @@ static int adma_ata_init_one(struct pci_
 	probe_ent->port_ops	= adma_port_info[board_idx].port_ops;
 
 	probe_ent->irq		= pdev->irq;
-	probe_ent->irq_flags	= SA_SHIRQ;
+	probe_ent->irq_flags	= IRQF_SHARED;
 	probe_ent->mmio_base	= mmio_base;
 	probe_ent->n_ports	= ADMA_PORTS;
 
Index: linux-2.6.git/drivers/scsi/qla1280.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/qla1280.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/qla1280.c	2006-07-01 16:51:47.000000000 +0200
@@ -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 SA_INTERRUPT, it's use is deprecated for this kinda driver
+	- Don't use IRQF_DISABLED, 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, 
 	/* Disable ISP interrupts. */
 	qla1280_disable_intrs(ha);
 
-	if (request_irq(pdev->irq, qla1280_intr_handler, SA_SHIRQ,
+	if (request_irq(pdev->irq, qla1280_intr_handler, IRQF_SHARED,
 				"qla1280", ha)) {
 		printk("qla1280 : Failed to reserve interrupt %d already "
 		       "in use\n", pdev->irq);
Index: linux-2.6.git/drivers/scsi/qlogicpti.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/qlogicpti.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/qlogicpti.c	2006-07-01 16:51:47.000000000 +0200
@@ -718,7 +718,7 @@ static int __init qpti_register_irq(stru
 	 * sanely maintain.
 	 */
 	if (request_irq(qpti->irq, qpti_intr,
-			SA_SHIRQ, "Qlogic/PTI", qpti))
+			IRQF_SHARED, "Qlogic/PTI", qpti))
 		goto fail;
 
 	printk("qpti%d: IRQ %d ", qpti->qpti_id, qpti->irq);
Index: linux-2.6.git/drivers/scsi/sata_mv.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_mv.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_mv.c	2006-07-01 16:51:47.000000000 +0200
@@ -2395,7 +2395,7 @@ static int mv_init_one(struct pci_dev *p
 	probe_ent->port_ops = mv_port_info[board_idx].port_ops;
 
 	probe_ent->irq = pdev->irq;
-	probe_ent->irq_flags = SA_SHIRQ;
+	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = mmio_base;
 	probe_ent->private_data = hpriv;
 
Index: linux-2.6.git/drivers/scsi/sata_promise.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_promise.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_promise.c	2006-07-01 16:51:47.000000000 +0200
@@ -743,7 +743,7 @@ static int pdc_ata_init_one (struct pci_
 	probe_ent->port_ops	= pdc_port_info[board_idx].port_ops;
 
        	probe_ent->irq = pdev->irq;
-       	probe_ent->irq_flags = SA_SHIRQ;
+       	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = mmio_base;
 
 	pdc_ata_setup_port(&probe_ent->port[0], base + 0x200);
Index: linux-2.6.git/drivers/scsi/sata_qstor.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_qstor.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_qstor.c	2006-07-01 16:51:47.000000000 +0200
@@ -680,7 +680,7 @@ static int qs_ata_init_one(struct pci_de
 	probe_ent->port_ops	= qs_port_info[board_idx].port_ops;
 
 	probe_ent->irq		= pdev->irq;
-	probe_ent->irq_flags	= SA_SHIRQ;
+	probe_ent->irq_flags	= IRQF_SHARED;
 	probe_ent->mmio_base	= mmio_base;
 	probe_ent->n_ports	= QS_PORTS;
 
Index: linux-2.6.git/drivers/scsi/sata_sil24.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_sil24.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_sil24.c	2006-07-01 16:51:47.000000000 +0200
@@ -1041,7 +1041,7 @@ static int sil24_init_one(struct pci_dev
 	probe_ent->n_ports	= SIL24_FLAG2NPORTS(pinfo->host_flags);
 
 	probe_ent->irq = pdev->irq;
-	probe_ent->irq_flags = SA_SHIRQ;
+	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = port_base;
 	probe_ent->private_data = hpriv;
 
Index: linux-2.6.git/drivers/scsi/sata_sil.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_sil.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_sil.c	2006-07-01 16:51:47.000000000 +0200
@@ -608,7 +608,7 @@ static int sil_init_one (struct pci_dev 
 	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 = SA_SHIRQ;
+       	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->host_flags = sil_port_info[ent->driver_data].host_flags;
 
 	mmio_base = pci_iomap(pdev, 5, 0);
Index: linux-2.6.git/drivers/scsi/sata_svw.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_svw.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_svw.c	2006-07-01 16:51:47.000000000 +0200
@@ -428,7 +428,7 @@ static int k2_sata_init_one (struct pci_
 	probe_ent->port_ops = &k2_sata_ops;
 	probe_ent->n_ports = 4;
 	probe_ent->irq = pdev->irq;
-	probe_ent->irq_flags = SA_SHIRQ;
+	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = mmio_base;
 
 	/* We don't care much about the PIO/UDMA masks, but the core won't like us
Index: linux-2.6.git/drivers/scsi/sata_sx4.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_sx4.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_sx4.c	2006-07-01 16:51:47.000000000 +0200
@@ -1436,7 +1436,7 @@ static int pdc_sata_init_one (struct pci
 	probe_ent->port_ops	= pdc_port_info[board_idx].port_ops;
 
        	probe_ent->irq = pdev->irq;
-       	probe_ent->irq_flags = SA_SHIRQ;
+       	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = mmio_base;
 
 	probe_ent->private_data = hpriv;
Index: linux-2.6.git/drivers/scsi/sata_via.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_via.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_via.c	2006-07-01 16:51:47.000000000 +0200
@@ -242,7 +242,7 @@ static struct ata_probe_ent *vt6421_init
 	probe_ent->port_ops	= &svia_sata_ops;
 	probe_ent->n_ports	= N_PORTS;
 	probe_ent->irq		= pdev->irq;
-	probe_ent->irq_flags	= SA_SHIRQ;
+	probe_ent->irq_flags	= IRQF_SHARED;
 	probe_ent->pio_mask	= 0x1f;
 	probe_ent->mwdma_mask	= 0x07;
 	probe_ent->udma_mask	= 0x7f;
Index: linux-2.6.git/drivers/scsi/sata_vsc.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sata_vsc.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sata_vsc.c	2006-07-01 16:51:47.000000000 +0200
@@ -400,7 +400,7 @@ static int __devinit vsc_sata_init_one (
 	probe_ent->port_ops = &vsc_sata_ops;
 	probe_ent->n_ports = 4;
 	probe_ent->irq = pdev->irq;
-	probe_ent->irq_flags = SA_SHIRQ;
+	probe_ent->irq_flags = IRQF_SHARED;
 	probe_ent->mmio_base = mmio_base;
 
 	/* We don't care much about the PIO/UDMA masks, but the core won't like us
Index: linux-2.6.git/drivers/scsi/seagate.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/seagate.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/seagate.c	2006-07-01 16:51:47.000000000 +0200
@@ -497,7 +497,7 @@ int __init seagate_st0x_detect (struct s
 		return 0;
 
 	hostno = instance->host_no;
-	if (request_irq (irq, do_seagate_reconnect_intr, SA_INTERRUPT, (controller_type == SEAGATE) ? "seagate" : "tmc-8xx", instance)) {
+	if (request_irq (irq, do_seagate_reconnect_intr, IRQF_DISABLED, (controller_type == SEAGATE) ? "seagate" : "tmc-8xx", instance)) {
 		printk(KERN_ERR "scsi%d : unable to allocate IRQ%d\n", hostno, irq);
 		return 0;
 	}
Index: linux-2.6.git/drivers/scsi/sim710.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sim710.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sim710.c	2006-07-01 16:51:47.000000000 +0200
@@ -133,7 +133,7 @@ sim710_probe_common(struct device *dev, 
 	host->this_id = scsi_id;
 	host->base = base_addr;
 	host->irq = irq;
-	if (request_irq(irq, NCR_700_intr, SA_SHIRQ, "sim710", host)) {
+	if (request_irq(irq, NCR_700_intr, IRQF_SHARED, "sim710", host)) {
 		printk(KERN_ERR "sim710: request_irq failed\n");
 		goto out_put_host;
 	}
Index: linux-2.6.git/drivers/scsi/sun3x_esp.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sun3x_esp.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sun3x_esp.c	2006-07-01 16:51:47.000000000 +0200
@@ -97,7 +97,7 @@ int sun3x_esp_detect(struct scsi_host_te
 	esp->esp_command_dvma = dvma_vtob((unsigned long)esp->esp_command);
 
 	esp->irq = 2;
-	if (request_irq(esp->irq, esp_intr, SA_INTERRUPT, 
+	if (request_irq(esp->irq, esp_intr, IRQF_DISABLED, 
 			"SUN3X SCSI", esp->ehost)) {
 		esp_deallocate(esp);
 		return 0;
Index: linux-2.6.git/drivers/scsi/t128.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/t128.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/t128.c	2006-07-01 16:51:47.000000000 +0200
@@ -260,7 +260,7 @@ found:
 	    instance->irq = NCR5380_probe_irq(instance, T128_IRQS);
 
 	if (instance->irq != SCSI_IRQ_NONE) 
-	    if (request_irq(instance->irq, t128_intr, SA_INTERRUPT, "t128", instance)) {
+	    if (request_irq(instance->irq, t128_intr, IRQF_DISABLED, "t128", instance)) {
 		printk("scsi%d : IRQ%d not free, interrupts disabled\n", 
 		    instance->host_no, instance->irq);
 		instance->irq = SCSI_IRQ_NONE;
Index: linux-2.6.git/drivers/scsi/tmscsim.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/tmscsim.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/tmscsim.c	2006-07-01 16:51:47.000000000 +0200
@@ -2584,7 +2584,7 @@ static int __devinit dc390_probe_one(str
 	/* Reset Pending INT */
 	DC390_read8_(INT_Status, io_port);
 
-	if (request_irq(pdev->irq, do_DC390_Interrupt, SA_SHIRQ,
+	if (request_irq(pdev->irq, do_DC390_Interrupt, IRQF_SHARED,
 				"tmscsim", pACB)) {
 		printk(KERN_ERR "DC390: register IRQ error!\n");
 		goto out_release_region;
Index: linux-2.6.git/drivers/scsi/u14-34f.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/u14-34f.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/u14-34f.c	2006-07-01 16:51:47.000000000 +0200
@@ -872,7 +872,7 @@ static int port_detect \
 
    /* Board detected, allocate its IRQ */
    if (request_irq(irq, do_interrupt_handler,
-             SA_INTERRUPT | ((subversion == ESA) ? SA_SHIRQ : 0),
+             IRQF_DISABLED | ((subversion == ESA) ? IRQF_SHARED : 0),
              driver_name, (void *) &sha[j])) {
       printk("%s: unable to allocate IRQ %u, detaching.\n", name, irq);
       goto freelock;
Index: linux-2.6.git/drivers/scsi/wd7000.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/wd7000.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/wd7000.c	2006-07-01 16:51:47.000000000 +0200
@@ -1250,7 +1250,7 @@ static int wd7000_init(Adapter * host)
 		return 0;
 
 
-	if (request_irq(host->irq, wd7000_intr, SA_INTERRUPT, "wd7000", host)) {
+	if (request_irq(host->irq, wd7000_intr, IRQF_DISABLED, "wd7000", host)) {
 		printk("wd7000_init: can't get IRQ %d.\n", host->irq);
 		return (0);
 	}
Index: linux-2.6.git/drivers/scsi/zalon.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/zalon.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/zalon.c	2006-07-01 16:51:47.000000000 +0200
@@ -136,7 +136,7 @@ zalon_probe(struct parisc_device *dev)
 	if (!host)
 		goto fail;
 
-	if (request_irq(dev->irq, ncr53c8xx_intr, SA_SHIRQ, "zalon", host)) {
+	if (request_irq(dev->irq, ncr53c8xx_intr, IRQF_SHARED, "zalon", host)) {
 		printk(KERN_ERR "%s: irq problem with %d, detaching\n ",
 			dev->dev.bus_id, dev->irq);
 		goto fail;
Index: linux-2.6.git/drivers/scsi/aacraid/rkt.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aacraid/rkt.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aacraid/rkt.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ|SA_INTERRUPT, "aacraid", (void *)dev)<0) 
+	if (request_irq(dev->scsi_host_ptr->irq, aac_rkt_intr, IRQF_SHARED|IRQF_DISABLED, "aacraid", (void *)dev)<0) 
 	{
 		printk(KERN_ERR "%s%d: Interrupt unavailable.\n", name, instance);
 		goto error_iounmap;
Index: linux-2.6.git/drivers/scsi/aacraid/rx.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aacraid/rx.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aacraid/rx.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ|SA_INTERRUPT, "aacraid", (void *)dev)<0) 
+	if (request_irq(dev->scsi_host_ptr->irq, aac_rx_intr, IRQF_SHARED|IRQF_DISABLED, "aacraid", (void *)dev)<0) 
 	{
 		printk(KERN_ERR "%s%d: Interrupt unavailable.\n", name, instance);
 		goto error_iounmap;
Index: linux-2.6.git/drivers/scsi/aacraid/sa.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aacraid/sa.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aacraid/sa.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ|SA_INTERRUPT, "aacraid", (void *)dev ) < 0) {
+	if (request_irq(dev->scsi_host_ptr->irq, aac_sa_intr, IRQF_SHARED|IRQF_DISABLED, "aacraid", (void *)dev ) < 0) {
 		printk(KERN_WARNING "%s%d: Interrupt unavailable.\n", name, instance);
 		goto error_iounmap;
 	}
Index: linux-2.6.git/drivers/scsi/aic7xxx/aic7770_osm.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aic7xxx/aic7770_osm.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aic7xxx/aic7770_osm.c	2006-07-01 16:51:47.000000000 +0200
@@ -65,7 +65,7 @@ aic7770_map_int(struct ahc_softc *ahc, u
 
 	shared = 0;
 	if ((ahc->flags & AHC_EDGE_INTERRUPT) == 0)
-		shared = SA_SHIRQ;
+		shared = IRQF_SHARED;
 
 	error = request_irq(irq, ahc_linux_isr, shared, "aic7xxx", ahc);
 	if (error == 0)
Index: linux-2.6.git/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aic7xxx/aic79xx_osm_pci.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aic7xxx/aic79xx_osm_pci.c	2006-07-01 16:51:47.000000000 +0200
@@ -342,7 +342,7 @@ ahd_pci_map_int(struct ahd_softc *ahd)
 	int error;
 
 	error = request_irq(ahd->dev_softc->irq, ahd_linux_isr,
-			    SA_SHIRQ, "aic79xx", ahd);
+			    IRQF_SHARED, "aic79xx", ahd);
 	if (!error)
 		ahd->platform_data->irq = ahd->dev_softc->irq;
 	
Index: linux-2.6.git/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c	2006-07-01 16:51:47.000000000 +0200
@@ -375,7 +375,7 @@ ahc_pci_map_int(struct ahc_softc *ahc)
 	int error;
 
 	error = request_irq(ahc->dev_softc->irq, ahc_linux_isr,
-			    SA_SHIRQ, "aic7xxx", ahc);
+			    IRQF_SHARED, "aic7xxx", ahc);
 	if (error == 0)
 		ahc->platform_data->irq = ahc->dev_softc->irq;
 	
Index: linux-2.6.git/drivers/scsi/arm/acornscsi.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/arm/acornscsi.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/arm/acornscsi.c	2006-07-01 16:51:47.000000000 +0200
@@ -3030,7 +3030,7 @@ acornscsi_probe(struct expansion_card *e
 	if (!request_region(host->io_port, 2048, "acornscsi(ram)"))
 		goto err_5;
 
-	ret = request_irq(host->irq, acornscsi_intr, SA_INTERRUPT, "acornscsi", ashost);
+	ret = request_irq(host->irq, acornscsi_intr, IRQF_DISABLED, "acornscsi", ashost);
 	if (ret) {
 		printk(KERN_CRIT "scsi%d: IRQ%d not free: %d\n",
 			host->host_no, ashost->scsi.irq, ret);
Index: linux-2.6.git/drivers/scsi/arm/cumana_1.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/arm/cumana_1.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/arm/cumana_1.c	2006-07-01 16:51:47.000000000 +0200
@@ -277,7 +277,7 @@ cumanascsi1_probe(struct expansion_card 
         ((struct NCR5380_hostdata *)host->hostdata)->ctrl = 0;
         outb(0x00, host->io_port - 577);
 
-	ret = request_irq(host->irq, cumanascsi_intr, SA_INTERRUPT,
+	ret = request_irq(host->irq, cumanascsi_intr, IRQF_DISABLED,
 			  "CumanaSCSI-1", host);
 	if (ret) {
 		printk("scsi%d: IRQ%d not free: %d\n",
Index: linux-2.6.git/drivers/scsi/arm/cumana_2.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/arm/cumana_2.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/arm/cumana_2.c	2006-07-01 16:51:47.000000000 +0200
@@ -460,7 +460,7 @@ cumanascsi2_probe(struct expansion_card 
 		goto out_free;
 
 	ret = request_irq(ec->irq, cumanascsi_2_intr,
-			  SA_INTERRUPT, "cumanascsi2", info);
+			  IRQF_DISABLED, "cumanascsi2", info);
 	if (ret) {
 		printk("scsi%d: IRQ%d not free: %d\n",
 		       host->host_no, ec->irq, ret);
Index: linux-2.6.git/drivers/scsi/arm/powertec.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/arm/powertec.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/arm/powertec.c	2006-07-01 16:51:47.000000000 +0200
@@ -373,7 +373,7 @@ powertecscsi_probe(struct expansion_card
 		goto out_free;
 
 	ret = request_irq(ec->irq, powertecscsi_intr,
-			  SA_INTERRUPT, "powertec", info);
+			  IRQF_DISABLED, "powertec", info);
 	if (ret) {
 		printk("scsi%d: IRQ%d not free: %d\n",
 		       host->host_no, ec->irq, ret);
Index: linux-2.6.git/drivers/scsi/lpfc/lpfc_init.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/lpfc/lpfc_init.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/lpfc/lpfc_init.c	2006-07-01 16:51:47.000000000 +0200
@@ -1620,7 +1620,7 @@ lpfc_pci_probe_one(struct pci_dev *pdev,
 	if (error)
 		goto out_remove_host;
 
-	error =	request_irq(phba->pcidev->irq, lpfc_intr_handler, SA_SHIRQ,
+	error =	request_irq(phba->pcidev->irq, lpfc_intr_handler, IRQF_SHARED,
 							LPFC_DRIVER_NAME, phba);
 	if (error) {
 		lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
Index: linux-2.6.git/drivers/scsi/megaraid/megaraid_mbox.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/megaraid/megaraid_mbox.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/megaraid/megaraid_mbox.c	2006-07-01 16:51:47.000000000 +0200
@@ -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, SA_SHIRQ, "megaraid",
+	if (request_irq(adapter->irq, megaraid_isr, IRQF_SHARED, "megaraid",
 		adapter)) {
 
 		con_log(CL_ANN, (KERN_WARNING
Index: linux-2.6.git/drivers/scsi/megaraid/megaraid_sas.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/megaraid/megaraid_sas.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/megaraid/megaraid_sas.c	2006-07-01 16:51:47.000000000 +0200
@@ -2191,7 +2191,7 @@ megasas_probe_one(struct pci_dev *pdev, 
 	/*
 	 * Register IRQ
 	 */
-	if (request_irq(pdev->irq, megasas_isr, SA_SHIRQ, "megasas", instance)) {
+	if (request_irq(pdev->irq, megasas_isr, IRQF_SHARED, "megasas", instance)) {
 		printk(KERN_DEBUG "megasas: Failed to register IRQ\n");
 		goto fail_irq;
 	}
Index: linux-2.6.git/drivers/scsi/pcmcia/nsp_cs.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/pcmcia/nsp_cs.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/pcmcia/nsp_cs.c	2006-07-01 16:51:47.000000000 +0200
@@ -1623,7 +1623,7 @@ static int nsp_cs_probe(struct pcmcia_de
 	/* Interrupt handler */
 	link->irq.Handler	 = &nspintr;
 	link->irq.Instance       = info;
-	link->irq.Attributes     |= (SA_SHIRQ | SA_SAMPLE_RANDOM);
+	link->irq.Attributes     |= (IRQF_SHARED | IRQF_SAMPLE_RANDOM);
 
 	/* General socket configuration */
 	link->conf.Attributes	 = CONF_ENABLE_IRQ;
Index: linux-2.6.git/drivers/scsi/pcmcia/sym53c500_cs.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/pcmcia/sym53c500_cs.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/pcmcia/sym53c500_cs.c	2006-07-01 16:51:47.000000000 +0200
@@ -799,7 +799,7 @@ next_entry:
 	data = (struct sym53c500_data *)host->hostdata;
 
 	if (irq_level > 0) {
-		if (request_irq(irq_level, SYM53C500_intr, SA_SHIRQ, "SYM53C500", host)) {
+		if (request_irq(irq_level, SYM53C500_intr, IRQF_SHARED, "SYM53C500", host)) {
 			printk("SYM53C500: unable to allocate IRQ %d\n", irq_level);
 			goto err_free_scsi;
 		}
Index: linux-2.6.git/drivers/scsi/qla2xxx/qla_os.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/qla2xxx/qla_os.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/qla2xxx/qla_os.c	2006-07-01 16:51:47.000000000 +0200
@@ -1541,7 +1541,7 @@ static int qla2x00_probe_one(struct pci_
 	host->transportt = qla2xxx_transport_template;
 
 	ret = request_irq(pdev->irq, ha->isp_ops.intr_handler,
-	    SA_INTERRUPT|SA_SHIRQ, QLA2XXX_DRIVER_NAME, ha);
+	    IRQF_DISABLED|IRQF_SHARED, QLA2XXX_DRIVER_NAME, ha);
 	if (ret) {
 		qla_printk(KERN_WARNING, ha,
 		    "Failed to reserve interrupt %d already in use.\n",
Index: linux-2.6.git/drivers/scsi/sym53c8xx_2/sym_glue.c
===================================================================
--- linux-2.6.git.orig/drivers/scsi/sym53c8xx_2/sym_glue.c	2006-07-01 16:51:12.000000000 +0200
+++ linux-2.6.git/drivers/scsi/sym53c8xx_2/sym_glue.c	2006-07-01 16:51:47.000000000 +0200
@@ -1547,7 +1547,7 @@ static struct Scsi_Host * __devinit sym_
 	 *  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, SA_SHIRQ, NAME53C8XX, np)) {
+	if (request_irq(pdev->irq, sym53c8xx_intr, IRQF_SHARED, NAME53C8XX, np)) {
 		printf_err("%s: request irq %d failure\n",
 			sym_name(np), pdev->irq);
 		goto attach_failed;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 40/44] serial: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (38 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 39/44] scsi: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 41/44] usb: " Thomas Gleixner
                   ` (4 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller,
	rmk+serial

[-- Attachment #1: irqflags-drivers-serial.patch --]
[-- Type: text/plain, Size: 17597 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/serial/8250.c           |    4 ++--
 drivers/serial/at91_serial.c    |    2 +-
 drivers/serial/crisv10.c        |   22 +++++++++++-----------
 drivers/serial/dz.c             |    2 +-
 drivers/serial/icom.c           |    2 +-
 drivers/serial/imx.c            |    2 +-
 drivers/serial/ioc4_serial.c    |    2 +-
 drivers/serial/jsm/jsm_driver.c |    2 +-
 drivers/serial/m32r_sio.c       |    2 +-
 drivers/serial/mcfserial.c      |    2 +-
 drivers/serial/mpc52xx_uart.c   |    2 +-
 drivers/serial/mpsc.c           |    2 +-
 drivers/serial/pmac_zilog.c     |    2 +-
 drivers/serial/serial_txx9.c    |    2 +-
 drivers/serial/sh-sci.c         |    4 ++--
 drivers/serial/sn_console.c     |    2 +-
 drivers/serial/sunsab.c         |    2 +-
 drivers/serial/sunsu.c          |    4 ++--
 drivers/serial/sunzilog.c       |    2 +-
 drivers/serial/v850e_uart.c     |    4 ++--
 20 files changed, 34 insertions(+), 34 deletions(-)

Index: linux-2.6.git/drivers/serial/8250.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/8250.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/8250.c	2006-07-01 16:51:48.000000000 +0200
@@ -48,7 +48,7 @@
 
 /*
  * Configuration:
- *   share_irqs - whether we pass SA_SHIRQ to request_irq().  This option
+ *   share_irqs - whether we pass IRQF_SHARED 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_
 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 ? SA_SHIRQ : 0;
+	int ret, irq_flags = up->port.flags & UPF_SHARE_IRQ ? IRQF_SHARED : 0;
 
 	spin_lock_irq(&i->lock);
 
Index: linux-2.6.git/drivers/serial/at91_serial.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/at91_serial.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/at91_serial.c	2006-07-01 16:51:48.000000000 +0200
@@ -387,7 +387,7 @@ static int at91_startup(struct uart_port
 	/*
 	 * Allocate the IRQ
 	 */
-	retval = request_irq(port->irq, at91_interrupt, SA_SHIRQ, "at91_serial", port);
+	retval = request_irq(port->irq, at91_interrupt, IRQF_SHARED, "at91_serial", port);
 	if (retval) {
 		printk("at91_serial: at91_startup - Can't get irq\n");
 		return retval;
Index: linux-2.6.git/drivers/serial/crisv10.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/crisv10.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/crisv10.c	2006-07-01 16:51:48.000000000 +0200
@@ -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 SA_SHIRQ when request_irq() for ser2 and ser3 (shared with) par0 and par1.
+ * Use IRQF_SHARED 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, SA_SHIRQ | SA_INTERRUPT, "serial ", NULL))
+	if (request_irq(SERIAL_IRQ_NBR, ser_interrupt, IRQF_SHARED | IRQF_DISABLED, "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, SA_INTERRUPT, "serial 0 dma tr", NULL))
+	if (request_irq(SER0_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_DISABLED, "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, SA_INTERRUPT, "serial 0 dma rec", NULL))
+	if (request_irq(SER0_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_DISABLED, "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, SA_INTERRUPT, "serial 1 dma tr", NULL))
+	if (request_irq(SER1_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_DISABLED, "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, SA_INTERRUPT, "serial 1 dma rec", NULL))
+	if (request_irq(SER1_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_DISABLED, "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, SA_SHIRQ | SA_INTERRUPT, "serial 2 dma tr", NULL))
+	if (request_irq(SER2_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_SHARED | IRQF_DISABLED, "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, SA_SHIRQ | SA_INTERRUPT, "serial 2 dma rec", NULL))
+	if (request_irq(SER2_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_SHARED | IRQF_DISABLED, "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, SA_SHIRQ | SA_INTERRUPT, "serial 3 dma tr", NULL))
+	if (request_irq(SER3_DMA_TX_IRQ_NBR, tr_interrupt, IRQF_SHARED | IRQF_DISABLED, "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, SA_SHIRQ | SA_INTERRUPT, "serial 3 dma rec", NULL))
+	if (request_irq(SER3_DMA_RX_IRQ_NBR, rec_interrupt, IRQF_SHARED | IRQF_DISABLED, "serial 3 dma rec", NULL))
 		panic("irq21");
 #endif
 #endif
 
 #ifdef CONFIG_ETRAX_SERIAL_FLUSH_DMA_FAST
-	if (request_irq(TIMER1_IRQ_NBR, timeout_interrupt, SA_SHIRQ | SA_INTERRUPT,
+	if (request_irq(TIMER1_IRQ_NBR, timeout_interrupt, IRQF_SHARED | IRQF_DISABLED,
 		       "fast serial dma timeout", NULL)) {
 		printk(KERN_CRIT "err: timer1 irq\n");
 	}
Index: linux-2.6.git/drivers/serial/dz.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/dz.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/dz.c	2006-07-01 16:51:48.000000000 +0200
@@ -797,7 +797,7 @@ int __init dz_init(void)
 	restore_flags(flags);
 
 	if (request_irq(dz_ports[0].port.irq, dz_interrupt,
-			SA_INTERRUPT, "DZ", &dz_ports[0]))
+			IRQF_DISABLED, "DZ", &dz_ports[0]))
 		panic("Unable to register DZ interrupt");
 
 	ret = uart_register_driver(&dz_reg);
Index: linux-2.6.git/drivers/serial/icom.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/icom.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/icom.c	2006-07-01 16:51:48.000000000 +0200
@@ -1563,7 +1563,7 @@ static int __devinit icom_probe(struct p
 
 	 /* save off irq and request irq line */
 	 if ( (retval = request_irq(dev->irq, icom_interrupt,
-				   SA_INTERRUPT | SA_SHIRQ, ICOM_DRIVER_NAME,
+				   IRQF_DISABLED | IRQF_SHARED, ICOM_DRIVER_NAME,
 				   (void *) icom_adapter))) {
 		  goto probe_exit2;
 	 }
Index: linux-2.6.git/drivers/serial/imx.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/imx.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/imx.c	2006-07-01 16:51:48.000000000 +0200
@@ -404,7 +404,7 @@ static int imx_startup(struct uart_port 
 	if (retval) goto error_out2;
 
 	retval = request_irq(sport->rtsirq, imx_rtsint,
-			     SA_TRIGGER_FALLING | SA_TRIGGER_RISING,
+			     IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
 			     DRIVER_NAME, sport);
 	if (retval) goto error_out3;
 
Index: linux-2.6.git/drivers/serial/ioc4_serial.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/ioc4_serial.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/ioc4_serial.c	2006-07-01 16:51:48.000000000 +0200
@@ -2855,7 +2855,7 @@ ioc4_serial_attach_one(struct ioc4_drive
 	control->ic_soft = soft;
 
 	/* Hook up interrupt handler */
-	if (!request_irq(idd->idd_pdev->irq, ioc4_intr, SA_SHIRQ,
+	if (!request_irq(idd->idd_pdev->irq, ioc4_intr, IRQF_SHARED,
 				"sgi-ioc4serial", soft)) {
 		control->ic_irq = idd->idd_pdev->irq;
 	} else {
Index: linux-2.6.git/drivers/serial/m32r_sio.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/m32r_sio.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/m32r_sio.c	2006-07-01 16:51:48.000000000 +0200
@@ -542,7 +542,7 @@ static void serial_do_unlink(struct irq_
 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 ? SA_SHIRQ : 0;
+	int ret, irq_flags = up->port.flags & UPF_SHARE_IRQ ? IRQF_SHARED : 0;
 
 	spin_lock_irq(&i->lock);
 
Index: linux-2.6.git/drivers/serial/mcfserial.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/mcfserial.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/mcfserial.c	2006-07-01 16:51:48.000000000 +0200
@@ -1596,7 +1596,7 @@ static void mcfrs_irqinit(struct mcf_ser
 	/* Clear mask, so no surprise interrupts. */
 	uartp[MCFUART_UIMR] = 0;
 
-	if (request_irq(info->irq, mcfrs_interrupt, SA_INTERRUPT,
+	if (request_irq(info->irq, mcfrs_interrupt, IRQF_DISABLED,
 	    "ColdFire UART", NULL)) {
 		printk("MCFRS: Unable to attach ColdFire UART %d interrupt "
 			"vector=%d\n", info->line, info->irq);
Index: linux-2.6.git/drivers/serial/mpc52xx_uart.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/mpc52xx_uart.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/mpc52xx_uart.c	2006-07-01 16:51:48.000000000 +0200
@@ -190,7 +190,7 @@ mpc52xx_uart_startup(struct uart_port *p
 
 	/* Request IRQ */
 	ret = request_irq(port->irq, mpc52xx_uart_int,
-		SA_INTERRUPT | SA_SAMPLE_RANDOM, "mpc52xx_psc_uart", port);
+		IRQF_DISABLED | IRQF_SAMPLE_RANDOM, "mpc52xx_psc_uart", port);
 	if (ret)
 		return ret;
 
Index: linux-2.6.git/drivers/serial/mpsc.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/mpsc.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/mpsc.c	2006-07-01 16:51:48.000000000 +0200
@@ -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 = SA_SHIRQ;
+			flag = IRQF_SHARED;
 
 		if (request_irq(pi->port.irq, mpsc_sdma_intr, flag,
 				"mpsc-sdma", pi))
Index: linux-2.6.git/drivers/serial/pmac_zilog.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/pmac_zilog.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/pmac_zilog.c	2006-07-01 16:51:48.000000000 +0200
@@ -934,7 +934,7 @@ static int pmz_startup(struct uart_port 
 	}	
 
 	pmz_get_port_A(uap)->flags |= PMACZILOG_FLAG_IS_IRQ_ON;
-	if (request_irq(uap->port.irq, pmz_interrupt, SA_SHIRQ, "PowerMac Zilog", uap)) {
+	if (request_irq(uap->port.irq, pmz_interrupt, IRQF_SHARED, "PowerMac Zilog", uap)) {
 		dev_err(&uap->dev->ofdev.dev,
 			"Unable to register zs interrupt handler.\n");
 		pmz_set_scc_power(uap, 0);
Index: linux-2.6.git/drivers/serial/serial_txx9.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/serial_txx9.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/serial_txx9.c	2006-07-01 16:51:48.000000000 +0200
@@ -495,7 +495,7 @@ static int serial_txx9_startup(struct ua
 	sio_out(up, TXX9_SIDISR, 0);
 
 	retval = request_irq(up->port.irq, serial_txx9_interrupt,
-			     SA_SHIRQ, "serial_txx9", up);
+			     IRQF_SHARED, "serial_txx9", up);
 	if (retval)
 		return retval;
 
Index: linux-2.6.git/drivers/serial/sh-sci.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/sh-sci.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/sh-sci.c	2006-07-01 16:51:48.000000000 +0200
@@ -841,7 +841,7 @@ static int sci_request_irq(struct sci_po
 			printk(KERN_ERR "sci: Cannot allocate irq.(IRQ=0)\n");
 			return -ENODEV;
 		}
-		if (request_irq(port->irqs[0], sci_mpxed_interrupt, SA_INTERRUPT,
+		if (request_irq(port->irqs[0], sci_mpxed_interrupt, IRQF_DISABLED,
 				"sci", port)) {
 			printk(KERN_ERR "sci: Cannot allocate irq.\n");
 			return -ENODEV;
@@ -850,7 +850,7 @@ static int sci_request_irq(struct sci_po
 		for (i = 0; i < ARRAY_SIZE(handlers); i++) {
 			if (!port->irqs[i])
 				continue;
-			if (request_irq(port->irqs[i], handlers[i], SA_INTERRUPT,
+			if (request_irq(port->irqs[i], handlers[i], IRQF_DISABLED,
 					desc[i], port)) {
 				printk(KERN_ERR "sci: Cannot allocate irq.\n");
 				return -ENODEV;
Index: linux-2.6.git/drivers/serial/sn_console.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/sn_console.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/sn_console.c	2006-07-01 16:51:48.000000000 +0200
@@ -648,7 +648,7 @@ static irqreturn_t sn_sal_interrupt(int 
 static int sn_sal_connect_interrupt(struct sn_cons_port *port)
 {
 	if (request_irq(SGI_UART_VECTOR, sn_sal_interrupt,
-			SA_INTERRUPT | SA_SHIRQ,
+			IRQF_DISABLED | IRQF_SHARED,
 			"SAL console driver", port) >= 0) {
 		return SGI_UART_VECTOR;
 	}
Index: linux-2.6.git/drivers/serial/sunsab.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/sunsab.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/sunsab.c	2006-07-01 16:51:48.000000000 +0200
@@ -1027,7 +1027,7 @@ static int __devinit sunsab_init_one(str
 		int err;
 
 		err = request_irq(up->port.irq, sunsab_interrupt,
-				  SA_SHIRQ, "sab", up);
+				  IRQF_SHARED, "sab", up);
 		if (err) {
 			of_iounmap(up->port.membase,
 				   sizeof(union sab82532_async_regs));
Index: linux-2.6.git/drivers/serial/sunsu.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/sunsu.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/sunsu.c	2006-07-01 16:51:48.000000000 +0200
@@ -667,10 +667,10 @@ static int sunsu_startup(struct uart_por
 
 	if (up->su_type != SU_PORT_PORT) {
 		retval = request_irq(up->port.irq, sunsu_kbd_ms_interrupt,
-				     SA_SHIRQ, su_typev[up->su_type], up);
+				     IRQF_SHARED, su_typev[up->su_type], up);
 	} else {
 		retval = request_irq(up->port.irq, sunsu_serial_interrupt,
-				     SA_SHIRQ, su_typev[up->su_type], up);
+				     IRQF_SHARED, su_typev[up->su_type], up);
 	}
 	if (retval) {
 		printk("su: Cannot register IRQ %d\n", up->port.irq);
Index: linux-2.6.git/drivers/serial/sunzilog.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/sunzilog.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/sunzilog.c	2006-07-01 16:51:48.000000000 +0200
@@ -1354,7 +1354,7 @@ static int __devinit zs_probe(struct of_
 
 	if (zilog_irq == -1) {
 		zilog_irq = op->irqs[0];
-		err = request_irq(zilog_irq, sunzilog_interrupt, SA_SHIRQ,
+		err = request_irq(zilog_irq, sunzilog_interrupt, IRQF_SHARED,
 				  "zs", sunzilog_irq_chain);
 		if (err) {
 			of_iounmap(rp, sizeof(struct zilog_layout));
Index: linux-2.6.git/drivers/serial/v850e_uart.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/v850e_uart.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/v850e_uart.c	2006-07-01 16:51:48.000000000 +0200
@@ -372,13 +372,13 @@ static int v850e_uart_startup (struct ua
 
 	/* Alloc RX irq.  */
 	err = request_irq (V850E_UART_RX_IRQ (port->line), v850e_uart_rx_irq,
-			   SA_INTERRUPT, "v850e_uart", port);
+			   IRQF_DISABLED, "v850e_uart", port);
 	if (err)
 		return err;
 
 	/* Alloc TX irq.  */
 	err = request_irq (V850E_UART_TX_IRQ (port->line), v850e_uart_tx_irq,
-			   SA_INTERRUPT, "v850e_uart", port);
+			   IRQF_DISABLED, "v850e_uart", port);
 	if (err) {
 		free_irq (V850E_UART_RX_IRQ (port->line), port);
 		return err;
Index: linux-2.6.git/drivers/serial/jsm/jsm_driver.c
===================================================================
--- linux-2.6.git.orig/drivers/serial/jsm/jsm_driver.c	2006-07-01 16:51:10.000000000 +0200
+++ linux-2.6.git/drivers/serial/jsm/jsm_driver.c	2006-07-01 16:51:48.000000000 +0200
@@ -121,7 +121,7 @@ static int jsm_probe_one(struct pci_dev 
 	}
 
 	rc = request_irq(brd->irq, brd->bd_ops->intr,
-			SA_INTERRUPT|SA_SHIRQ, "JSM", brd);
+			IRQF_DISABLED|IRQF_SHARED, "JSM", brd);
 	if (rc) {
 		printk(KERN_WARNING "Failed to hook IRQ %d\n",brd->irq);
 		goto out_iounmap;

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 41/44] usb: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (39 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 40/44] serial: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 42/44] video: " Thomas Gleixner
                   ` (3 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, greg

[-- Attachment #1: irqflags-drivers-usb.patch --]
[-- Type: text/plain, Size: 14135 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/usb/core/hcd-pci.c       |    2 +-
 drivers/usb/gadget/at91_udc.c    |    4 ++--
 drivers/usb/gadget/goku_udc.c    |    2 +-
 drivers/usb/gadget/lh7a40x_udc.c |    2 +-
 drivers/usb/gadget/net2280.c     |    2 +-
 drivers/usb/gadget/omap_udc.c    |    6 +++---
 drivers/usb/gadget/pxa2xx_udc.c  |    6 +++---
 drivers/usb/host/ehci-au1xxx.c   |    2 +-
 drivers/usb/host/ehci-fsl.c      |    2 +-
 drivers/usb/host/isp116x-hcd.c   |    2 +-
 drivers/usb/host/ohci-at91.c     |    2 +-
 drivers/usb/host/ohci-au1xxx.c   |    2 +-
 drivers/usb/host/ohci-lh7a404.c  |    2 +-
 drivers/usb/host/ohci-omap.c     |    4 ++--
 drivers/usb/host/ohci-ppc-soc.c  |    2 +-
 drivers/usb/host/ohci-pxa27x.c   |    2 +-
 drivers/usb/host/ohci-s3c2410.c  |    2 +-
 drivers/usb/host/ohci-sa1111.c   |    2 +-
 drivers/usb/host/sl811-hcd.c     |    2 +-
 19 files changed, 25 insertions(+), 25 deletions(-)

Index: linux-2.6.git/drivers/usb/core/hcd-pci.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/core/hcd-pci.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/core/hcd-pci.c	2006-07-01 16:51:49.000000000 +0200
@@ -125,7 +125,7 @@ int usb_hcd_pci_probe (struct pci_dev *d
 
 	pci_set_master (dev);
 
-	retval = usb_add_hcd (hcd, dev->irq, SA_SHIRQ);
+	retval = usb_add_hcd (hcd, dev->irq, IRQF_SHARED);
 	if (retval != 0)
 		goto err4;
 	return retval;
Index: linux-2.6.git/drivers/usb/gadget/at91_udc.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/gadget/at91_udc.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/gadget/at91_udc.c	2006-07-01 16:51:49.000000000 +0200
@@ -1653,13 +1653,13 @@ static int __devinit at91udc_probe(struc
 	pullup(udc, 0);
 
 	/* request UDC and maybe VBUS irqs */
-	if (request_irq(AT91_ID_UDP, at91_udc_irq, SA_INTERRUPT, driver_name, udc)) {
+	if (request_irq(AT91_ID_UDP, at91_udc_irq, IRQF_DISABLED, 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, SA_INTERRUPT, driver_name, udc)) {
+		if (request_irq(udc->board.vbus_pin, at91_vbus_irq, IRQF_DISABLED, driver_name, udc)) {
 			DBG("request vbus irq %d failed\n", udc->board.vbus_pin);
 			free_irq(AT91_ID_UDP, udc);
 			retval = -EBUSY;
Index: linux-2.6.git/drivers/usb/gadget/goku_udc.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/gadget/goku_udc.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/gadget/goku_udc.c	2006-07-01 16:51:49.000000000 +0200
@@ -1916,7 +1916,7 @@ static int goku_probe(struct pci_dev *pd
 	/* init to known state, then setup irqs */
 	udc_reset(dev);
 	udc_reinit (dev);
-	if (request_irq(pdev->irq, goku_irq, SA_SHIRQ/*|SA_SAMPLE_RANDOM*/,
+	if (request_irq(pdev->irq, goku_irq, IRQF_SHARED/*|IRQF_SAMPLE_RANDOM*/,
 			driver_name, dev) != 0) {
 		DBG(dev, "request interrupt %d failed\n", pdev->irq);
 		retval = -EBUSY;
Index: linux-2.6.git/drivers/usb/gadget/lh7a40x_udc.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/gadget/lh7a40x_udc.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/gadget/lh7a40x_udc.c	2006-07-01 16:51:49.000000000 +0200
@@ -2107,7 +2107,7 @@ static int lh7a40x_udc_probe(struct plat
 
 	/* irq setup after old hardware state is cleaned up */
 	retval =
-	    request_irq(IRQ_USBINTR, lh7a40x_udc_irq, SA_INTERRUPT, driver_name,
+	    request_irq(IRQ_USBINTR, lh7a40x_udc_irq, IRQF_DISABLED, driver_name,
 			dev);
 	if (retval != 0) {
 		DEBUG(KERN_ERR "%s: can't get irq %i, err %d\n", driver_name,
Index: linux-2.6.git/drivers/usb/gadget/net2280.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/gadget/net2280.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/gadget/net2280.c	2006-07-01 16:51:49.000000000 +0200
@@ -2895,7 +2895,7 @@ static int net2280_probe (struct pci_dev
 		goto done;
 	}
 
-	if (request_irq (pdev->irq, net2280_irq, SA_SHIRQ, driver_name, dev)
+	if (request_irq (pdev->irq, net2280_irq, IRQF_SHARED, driver_name, dev)
 			!= 0) {
 		ERROR (dev, "request interrupt %d failed\n", pdev->irq);
 		retval = -EBUSY;
Index: linux-2.6.git/drivers/usb/gadget/omap_udc.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/gadget/omap_udc.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/gadget/omap_udc.c	2006-07-01 16:51:49.000000000 +0200
@@ -2818,7 +2818,7 @@ bad_on_1710:
 
 	/* USB general purpose IRQ:  ep0, state changes, dma, etc */
 	status = request_irq(pdev->resource[1].start, omap_udc_irq,
-			SA_SAMPLE_RANDOM, driver_name, udc);
+			IRQF_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 @@ bad_on_1710:
 
 	/* USB "non-iso" IRQ (PIO for all but ep0) */
 	status = request_irq(pdev->resource[2].start, omap_udc_pio_irq,
-			SA_SAMPLE_RANDOM, "omap_udc pio", udc);
+			IRQF_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 @@ bad_on_1710:
 	}
 #ifdef	USE_ISO
 	status = request_irq(pdev->resource[3].start, omap_udc_iso_irq,
-			SA_INTERRUPT, "omap_udc iso", udc);
+			IRQF_DISABLED, "omap_udc iso", udc);
 	if (status != 0) {
 		ERR("can't get irq %ld, err %d\n",
 			pdev->resource[3].start, status);
Index: linux-2.6.git/drivers/usb/gadget/pxa2xx_udc.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/gadget/pxa2xx_udc.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/gadget/pxa2xx_udc.c	2006-07-01 16:51:49.000000000 +0200
@@ -2521,7 +2521,7 @@ static int __init pxa2xx_udc_probe(struc
 
 	/* irq setup after old hardware state is cleaned up */
 	retval = request_irq(IRQ_USB, pxa2xx_udc_irq,
-			SA_INTERRUPT, driver_name, dev);
+			IRQF_DISABLED, 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(struc
 	if (machine_is_lubbock()) {
 		retval = request_irq(LUBBOCK_USB_DISC_IRQ,
 				lubbock_vbus_irq,
-				SA_INTERRUPT | SA_SAMPLE_RANDOM,
+				IRQF_DISABLED | IRQF_SAMPLE_RANDOM,
 				driver_name, dev);
 		if (retval != 0) {
 			printk(KERN_ERR "%s: can't get irq %i, err %d\n",
@@ -2544,7 +2544,7 @@ lubbock_fail0:
 		}
 		retval = request_irq(LUBBOCK_USB_IRQ,
 				lubbock_vbus_irq,
-				SA_INTERRUPT | SA_SAMPLE_RANDOM,
+				IRQF_DISABLED | IRQF_SAMPLE_RANDOM,
 				driver_name, dev);
 		if (retval != 0) {
 			printk(KERN_ERR "%s: can't get irq %i, err %d\n",
Index: linux-2.6.git/drivers/usb/host/ehci-au1xxx.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ehci-au1xxx.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ehci-au1xxx.c	2006-07-01 16:51:49.000000000 +0200
@@ -148,7 +148,7 @@ int usb_ehci_au1xxx_probe(const struct h
 	/* ehci_hcd_init(hcd_to_ehci(hcd)); */
 
 	retval =
-	    usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT | SA_SHIRQ);
+	    usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED | IRQF_SHARED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ehci-fsl.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ehci-fsl.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ehci-fsl.c	2006-07-01 16:51:49.000000000 +0200
@@ -121,7 +121,7 @@ int usb_hcd_fsl_probe(const struct hc_dr
 	temp = in_le32(hcd->regs + 0x1a8);
 	out_le32(hcd->regs + 0x1a8, temp | 0x3);
 
-	retval = usb_add_hcd(hcd, irq, SA_SHIRQ);
+	retval = usb_add_hcd(hcd, irq, IRQF_SHARED);
 	if (retval != 0)
 		goto err4;
 	return retval;
Index: linux-2.6.git/drivers/usb/host/isp116x-hcd.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/isp116x-hcd.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/isp116x-hcd.c	2006-07-01 16:51:49.000000000 +0200
@@ -1653,7 +1653,7 @@ static int __init isp116x_probe(struct p
 		goto err6;
 	}
 
-	ret = usb_add_hcd(hcd, irq, SA_INTERRUPT);
+	ret = usb_add_hcd(hcd, irq, IRQF_DISABLED);
 	if (ret)
 		goto err6;
 
Index: linux-2.6.git/drivers/usb/host/ohci-at91.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-at91.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-at91.c	2006-07-01 16:51:49.000000000 +0200
@@ -125,7 +125,7 @@ int usb_hcd_at91_probe (const struct hc_
 	at91_start_hc(pdev);
 	ohci_hcd_init(hcd_to_ohci(hcd));
 
-	retval = usb_add_hcd(hcd, pdev->resource[1].start, SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, pdev->resource[1].start, IRQF_DISABLED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ohci-au1xxx.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-au1xxx.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-au1xxx.c	2006-07-01 16:51:49.000000000 +0200
@@ -191,7 +191,7 @@ static int usb_ohci_au1xxx_probe(const s
 	au1xxx_start_ohc(dev);
 	ohci_hcd_init(hcd_to_ohci(hcd));
 
-	retval = usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT | SA_SHIRQ);
+	retval = usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED | IRQF_SHARED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ohci-lh7a404.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-lh7a404.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-lh7a404.c	2006-07-01 16:51:49.000000000 +0200
@@ -100,7 +100,7 @@ int usb_hcd_lh7a404_probe (const struct 
 	lh7a404_start_hc(dev);
 	ohci_hcd_init(hcd_to_ohci(hcd));
 
-	retval = usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ohci-omap.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-omap.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-omap.c	2006-07-01 16:51:49.000000000 +0200
@@ -14,7 +14,7 @@
  * This file is licenced under the GPL.
  */
 
-#include <linux/signal.h>	/* SA_INTERRUPT */
+#include <linux/signal.h>	/* IRQF_DISABLED */
 #include <linux/jiffies.h>
 #include <linux/platform_device.h>
 #include <linux/clk.h>
@@ -334,7 +334,7 @@ int usb_hcd_omap_probe (const struct hc_
 		retval = -ENXIO;
 		goto err2;
 	}
-	retval = usb_add_hcd(hcd, irq, SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, irq, IRQF_DISABLED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ohci-ppc-soc.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-ppc-soc.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-ppc-soc.c	2006-07-01 16:51:49.000000000 +0200
@@ -75,7 +75,7 @@ static int usb_hcd_ppc_soc_probe(const s
 	ohci->flags |= OHCI_BIG_ENDIAN;
 	ohci_hcd_init(ohci);
 
-	retval = usb_add_hcd(hcd, irq, SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, irq, IRQF_DISABLED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ohci-pxa27x.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-pxa27x.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-pxa27x.c	2006-07-01 16:51:49.000000000 +0200
@@ -190,7 +190,7 @@ int usb_hcd_pxa27x_probe (const struct h
 
 	ohci_hcd_init(hcd_to_ohci(hcd));
 
-	retval = usb_add_hcd(hcd, pdev->resource[1].start, SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, pdev->resource[1].start, IRQF_DISABLED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/ohci-s3c2410.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-s3c2410.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-s3c2410.c	2006-07-01 16:51:49.000000000 +0200
@@ -388,7 +388,7 @@ static int usb_hcd_s3c2410_probe (const 
 
 	ohci_hcd_init(hcd_to_ohci(hcd));
 
-	retval = usb_add_hcd(hcd, dev->resource[1].start, SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, dev->resource[1].start, IRQF_DISABLED);
 	if (retval != 0)
 		goto err_ioremap;
 
Index: linux-2.6.git/drivers/usb/host/ohci-sa1111.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/ohci-sa1111.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/ohci-sa1111.c	2006-07-01 16:51:49.000000000 +0200
@@ -143,7 +143,7 @@ int usb_hcd_sa1111_probe (const struct h
 	sa1111_start_hc(dev);
 	ohci_hcd_init(hcd_to_ohci(hcd));
 
-	retval = usb_add_hcd(hcd, dev->irq[1], SA_INTERRUPT);
+	retval = usb_add_hcd(hcd, dev->irq[1], IRQF_DISABLED);
 	if (retval == 0)
 		return retval;
 
Index: linux-2.6.git/drivers/usb/host/sl811-hcd.c
===================================================================
--- linux-2.6.git.orig/drivers/usb/host/sl811-hcd.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/usb/host/sl811-hcd.c	2006-07-01 16:51:49.000000000 +0200
@@ -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, SA_INTERRUPT | SA_SHIRQ);
+	retval = usb_add_hcd(hcd, irq, IRQF_DISABLED | IRQF_SHARED);
 	if (retval != 0)
 		goto err6;
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 42/44] video: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (40 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 41/44] usb: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 43/44] sound: " Thomas Gleixner
                   ` (2 subsequent siblings)
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-drivers-video.patch --]
[-- Type: text/plain, Size: 4758 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 drivers/video/arcfb.c                |    2 +-
 drivers/video/aty/atyfb_base.c       |    2 +-
 drivers/video/au1200fb.c             |    2 +-
 drivers/video/matrox/matroxfb_base.c |    2 +-
 drivers/video/pxafb.c                |    2 +-
 drivers/video/s3c2410fb.c            |    2 +-
 drivers/video/sa1100fb.c             |    2 +-
 7 files changed, 7 insertions(+), 7 deletions(-)

Index: linux-2.6.git/drivers/video/arcfb.c
===================================================================
--- linux-2.6.git.orig/drivers/video/arcfb.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/arcfb.c	2006-07-01 16:51:49.000000000 +0200
@@ -561,7 +561,7 @@ static int __init arcfb_probe(struct pla
 	platform_set_drvdata(dev, info);
 	if (irq) {
 		par->irq = irq;
-		if (request_irq(par->irq, &arcfb_interrupt, SA_SHIRQ,
+		if (request_irq(par->irq, &arcfb_interrupt, IRQF_SHARED,
 				"arcfb", info)) {
 			printk(KERN_INFO
 				"arcfb: Failed req IRQ %d\n", par->irq);
Index: linux-2.6.git/drivers/video/au1200fb.c
===================================================================
--- linux-2.6.git.orig/drivers/video/au1200fb.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/au1200fb.c	2006-07-01 16:51:49.000000000 +0200
@@ -1694,7 +1694,7 @@ static int au1200fb_drv_probe(struct dev
 
 	/* Now hook interrupt too */
 	if ((ret = request_irq(AU1200_LCD_INT, au1200fb_handle_irq,
-		 	  SA_INTERRUPT | SA_SHIRQ, "lcd", (void *)dev)) < 0) {
+		 	  IRQF_DISABLED | IRQF_SHARED, "lcd", (void *)dev)) < 0) {
 		print_err("fail to request interrupt line %d (err: %d)",
 			  AU1200_LCD_INT, ret);
 		goto failed;
Index: linux-2.6.git/drivers/video/pxafb.c
===================================================================
--- linux-2.6.git.orig/drivers/video/pxafb.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/pxafb.c	2006-07-01 16:51:49.000000000 +0200
@@ -1334,7 +1334,7 @@ int __init pxafb_probe(struct platform_d
 		goto failed;
 	}
 
-	ret = request_irq(IRQ_LCD, pxafb_handle_irq, SA_INTERRUPT, "LCD", fbi);
+	ret = request_irq(IRQ_LCD, pxafb_handle_irq, IRQF_DISABLED, "LCD", fbi);
 	if (ret) {
 		dev_err(&dev->dev, "request_irq failed: %d\n", ret);
 		ret = -EBUSY;
Index: linux-2.6.git/drivers/video/s3c2410fb.c
===================================================================
--- linux-2.6.git.orig/drivers/video/s3c2410fb.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/s3c2410fb.c	2006-07-01 16:51:49.000000000 +0200
@@ -735,7 +735,7 @@ static int __init s3c2410fb_probe(struct
 
 	dprintk("got LCD region\n");
 
-	ret = request_irq(irq, s3c2410fb_irq, SA_INTERRUPT, pdev->name, info);
+	ret = request_irq(irq, s3c2410fb_irq, IRQF_DISABLED, pdev->name, info);
 	if (ret) {
 		dev_err(&pdev->dev, "cannot get irq %d - err %d\n", irq, ret);
 		ret = -EBUSY;
Index: linux-2.6.git/drivers/video/sa1100fb.c
===================================================================
--- linux-2.6.git.orig/drivers/video/sa1100fb.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/sa1100fb.c	2006-07-01 16:51:49.000000000 +0200
@@ -1472,7 +1472,7 @@ static int __init sa1100fb_probe(struct 
 	if (ret)
 		goto failed;
 
-	ret = request_irq(irq, sa1100fb_handle_irq, SA_INTERRUPT,
+	ret = request_irq(irq, sa1100fb_handle_irq, IRQF_DISABLED,
 			  "LCD", fbi);
 	if (ret) {
 		printk(KERN_ERR "sa1100fb: request_irq failed: %d\n", ret);
Index: linux-2.6.git/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.git.orig/drivers/video/aty/atyfb_base.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/aty/atyfb_base.c	2006-07-01 16:51:49.000000000 +0200
@@ -1567,7 +1567,7 @@ static int aty_enable_irq(struct atyfb_p
 	u32 int_cntl;
 
 	if (!test_and_set_bit(0, &par->irq_flags)) {
-		if (request_irq(par->irq, aty_irq, SA_SHIRQ, "atyfb", par)) {
+		if (request_irq(par->irq, aty_irq, IRQF_SHARED, "atyfb", par)) {
 			clear_bit(0, &par->irq_flags);
 			return -EINVAL;
 		}
Index: linux-2.6.git/drivers/video/matrox/matroxfb_base.c
===================================================================
--- linux-2.6.git.orig/drivers/video/matrox/matroxfb_base.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/drivers/video/matrox/matroxfb_base.c	2006-07-01 16:51:49.000000000 +0200
@@ -233,7 +233,7 @@ int matroxfb_enable_irq(WPMINFO int reen
 
 	if (!test_and_set_bit(0, &ACCESS_FBINFO(irq_flags))) {
 		if (request_irq(ACCESS_FBINFO(pcidev)->irq, matrox_irq,
-				SA_SHIRQ, "matroxfb", MINFO)) {
+				IRQF_SHARED, "matroxfb", MINFO)) {
 			clear_bit(0, &ACCESS_FBINFO(irq_flags));
 			return -EINVAL;
 		}

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 43/44] sound: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (41 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 42/44] video: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 14:55 ` [RFC][patch 44/44] Documentation: " Thomas Gleixner
  2006-07-01 23:43 ` [RFC][patch 00/44] Consolidate irq_action flags Andrew Morton
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller, perex

[-- Attachment #1: irqflags-sound.patch --]
[-- Type: text/plain, Size: 72643 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
 include/sound/initval.h             |    2 +-
 sound/arm/aaci.c                    |    2 +-
 sound/drivers/mpu401/mpu401.c       |    2 +-
 sound/drivers/mtpav.c               |    2 +-
 sound/drivers/serial-u16550.c       |    2 +-
 sound/isa/ad1816a/ad1816a.c         |    2 +-
 sound/isa/ad1816a/ad1816a_lib.c     |    2 +-
 sound/isa/ad1848/ad1848_lib.c       |    2 +-
 sound/isa/als100.c                  |    2 +-
 sound/isa/azt2320.c                 |    2 +-
 sound/isa/cs423x/cs4231.c           |    2 +-
 sound/isa/cs423x/cs4231_lib.c       |    2 +-
 sound/isa/cs423x/cs4236.c           |    2 +-
 sound/isa/dt019x.c                  |    2 +-
 sound/isa/es1688/es1688.c           |    2 +-
 sound/isa/es1688/es1688_lib.c       |    2 +-
 sound/isa/es18xx.c                  |    2 +-
 sound/isa/gus/gus_main.c            |    2 +-
 sound/isa/gus/gusextreme.c          |    2 +-
 sound/isa/gus/gusmax.c              |    2 +-
 sound/isa/gus/interwave.c           |    2 +-
 sound/isa/opl3sa2.c                 |    2 +-
 sound/isa/opti9xx/miro.c            |    2 +-
 sound/isa/opti9xx/opti92x-ad1848.c  |    4 ++--
 sound/isa/sb/sb_common.c            |    2 +-
 sound/isa/sgalaxy.c                 |    2 +-
 sound/isa/sscape.c                  |    2 +-
 sound/isa/wavefront/wavefront.c     |    4 ++--
 sound/mips/au1x00.c                 |    4 ++--
 sound/oss/ad1889.c                  |    2 +-
 sound/oss/ali5455.c                 |    2 +-
 sound/oss/au1000.c                  |    4 ++--
 sound/oss/btaudio.c                 |    2 +-
 sound/oss/cmpci.c                   |    2 +-
 sound/oss/cs4281/cs4281m.c          |    2 +-
 sound/oss/cs46xx.c                  |    2 +-
 sound/oss/emu10k1/main.c            |    2 +-
 sound/oss/es1370.c                  |    2 +-
 sound/oss/es1371.c                  |    2 +-
 sound/oss/esssolo1.c                |    2 +-
 sound/oss/forte.c                   |    2 +-
 sound/oss/hal2.c                    |    2 +-
 sound/oss/i810_audio.c              |    2 +-
 sound/oss/ite8172.c                 |    2 +-
 sound/oss/maestro.c                 |    2 +-
 sound/oss/maestro3.c                |    2 +-
 sound/oss/nec_vrc5477.c             |    2 +-
 sound/oss/nm256_audio.c             |    2 +-
 sound/oss/rme96xx.c                 |    2 +-
 sound/oss/sb_common.c               |    2 +-
 sound/oss/sh_dac_audio.c            |    2 +-
 sound/oss/sonicvibes.c              |    2 +-
 sound/oss/trident.c                 |    2 +-
 sound/oss/via82cxxx_audio.c         |    4 ++--
 sound/oss/wavfront.c                |    2 +-
 sound/oss/wf_midi.c                 |    2 +-
 sound/oss/ymfpci.c                  |    2 +-
 sound/pci/ad1889.c                  |    2 +-
 sound/pci/ali5451/ali5451.c         |    2 +-
 sound/pci/als300.c                  |    2 +-
 sound/pci/atiixp.c                  |    2 +-
 sound/pci/atiixp_modem.c            |    2 +-
 sound/pci/au88x0/au88x0.c           |    2 +-
 sound/pci/azt3328.c                 |    2 +-
 sound/pci/bt87x.c                   |    2 +-
 sound/pci/ca0106/ca0106_main.c      |    2 +-
 sound/pci/cmipci.c                  |    2 +-
 sound/pci/cs4281.c                  |    2 +-
 sound/pci/cs46xx/cs46xx_lib.c       |    2 +-
 sound/pci/cs5535audio/cs5535audio.c |    2 +-
 sound/pci/echoaudio/echoaudio.c     |    2 +-
 sound/pci/emu10k1/emu10k1_main.c    |    2 +-
 sound/pci/emu10k1/emu10k1x.c        |    2 +-
 sound/pci/ens1370.c                 |    2 +-
 sound/pci/es1938.c                  |    4 ++--
 sound/pci/es1968.c                  |    2 +-
 sound/pci/fm801.c                   |    2 +-
 sound/pci/hda/hda_intel.c           |    2 +-
 sound/pci/ice1712/ice1712.c         |    2 +-
 sound/pci/ice1712/ice1724.c         |    2 +-
 sound/pci/intel8x0.c                |    4 ++--
 sound/pci/intel8x0m.c               |    2 +-
 sound/pci/korg1212/korg1212.c       |    2 +-
 sound/pci/maestro3.c                |    2 +-
 sound/pci/mixart/mixart.c           |    2 +-
 sound/pci/nm256/nm256.c             |    2 +-
 sound/pci/pcxhr/pcxhr.c             |    2 +-
 sound/pci/riptide/riptide.c         |    2 +-
 sound/pci/rme32.c                   |    2 +-
 sound/pci/rme96.c                   |    2 +-
 sound/pci/rme9652/hdsp.c            |    2 +-
 sound/pci/rme9652/hdspm.c           |    2 +-
 sound/pci/rme9652/rme9652.c         |    2 +-
 sound/pci/sonicvibes.c              |    2 +-
 sound/pci/trident/trident_main.c    |    2 +-
 sound/pci/via82xx.c                 |    2 +-
 sound/pci/via82xx_modem.c           |    2 +-
 sound/pci/vx222/vx222.c             |    2 +-
 sound/pci/ymfpci/ymfpci_main.c      |    2 +-
 sound/sparc/amd7930.c               |    2 +-
 sound/sparc/cs4231.c                |    2 +-
 sound/sparc/dbri.c                  |    2 +-
 102 files changed, 109 insertions(+), 109 deletions(-)

Index: linux-2.6.git/include/sound/initval.h
===================================================================
--- linux-2.6.git.orig/include/sound/initval.h	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/include/sound/initval.h	2006-07-01 16:51:50.000000000 +0200
@@ -62,7 +62,7 @@ static int snd_legacy_find_free_irq(int 
 {
 	while (*irq_table != -1) {
 		if (!request_irq(*irq_table, snd_legacy_empty_irq_handler,
-				 SA_INTERRUPT | SA_PROBEIRQ, "ALSA Test IRQ",
+				 IRQF_DISABLED | IRQF_PROBE_SHARED, "ALSA Test IRQ",
 				 (void *) irq_table)) {
 			free_irq(*irq_table, (void *) irq_table);
 			return *irq_table;
Index: linux-2.6.git/sound/arm/aaci.c
===================================================================
--- linux-2.6.git.orig/sound/arm/aaci.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/arm/aaci.c	2006-07-01 16:51:50.000000000 +0200
@@ -360,7 +360,7 @@ static int aaci_pcm_open(struct aaci *aa
 	if (ret)
 		goto out;
 
-	ret = request_irq(aaci->dev->irq[0], aaci_irq, SA_SHIRQ|SA_INTERRUPT,
+	ret = request_irq(aaci->dev->irq[0], aaci_irq, IRQF_SHARED|IRQF_DISABLED,
 			  DRIVER_NAME, aaci);
 	if (ret)
 		goto out;
Index: linux-2.6.git/sound/drivers/mtpav.c
===================================================================
--- linux-2.6.git.orig/sound/drivers/mtpav.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/drivers/mtpav.c	2006-07-01 16:51:50.000000000 +0200
@@ -590,7 +590,7 @@ static int __init snd_mtpav_get_ISA(stru
 		return -EBUSY;
 	}
 	mcard->port = port;
-	if (request_irq(irq, snd_mtpav_irqh, SA_INTERRUPT, "MOTU MTPAV", mcard)) {
+	if (request_irq(irq, snd_mtpav_irqh, IRQF_DISABLED, "MOTU MTPAV", mcard)) {
 		snd_printk("MTVAP IRQ %d busy\n", irq);
 		return -EBUSY;
 	}
Index: linux-2.6.git/sound/drivers/serial-u16550.c
===================================================================
--- linux-2.6.git.orig/sound/drivers/serial-u16550.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/drivers/serial-u16550.c	2006-07-01 16:51:50.000000000 +0200
@@ -795,7 +795,7 @@ static int __init snd_uart16550_create(s
 
 	if (irq >= 0 && irq != SNDRV_AUTO_IRQ) {
 		if (request_irq(irq, snd_uart16550_interrupt,
-				SA_INTERRUPT, "Serial MIDI", (void *) uart)) {
+				IRQF_DISABLED, "Serial MIDI", (void *) uart)) {
 			snd_printk("irq %d busy. Using Polling.\n", irq);
 		} else {
 			uart->irq = irq;
Index: linux-2.6.git/sound/drivers/mpu401/mpu401.c
===================================================================
--- linux-2.6.git.orig/sound/drivers/mpu401/mpu401.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/drivers/mpu401/mpu401.c	2006-07-01 16:51:50.000000000 +0200
@@ -83,7 +83,7 @@ static int snd_mpu401_create(int dev, st
 	if ((err = snd_mpu401_uart_new(card, 0,
 				       MPU401_HW_MPU401,
 				       port[dev], 0,
-				       irq[dev], irq[dev] >= 0 ? SA_INTERRUPT : 0, NULL)) < 0) {
+				       irq[dev], irq[dev] >= 0 ? IRQF_DISABLED : 0, NULL)) < 0) {
 		printk(KERN_ERR "MPU401 not detected at 0x%lx\n", port[dev]);
 		goto _err;
 	}
Index: linux-2.6.git/sound/isa/als100.c
===================================================================
--- linux-2.6.git.orig/sound/isa/als100.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/als100.c	2006-07-01 16:51:50.000000000 +0200
@@ -250,7 +250,7 @@ static int __devinit snd_card_als100_pro
 	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], SA_INTERRUPT,
+					mpu_irq[dev], IRQF_DISABLED,
 					NULL) < 0)
 			snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx\n", mpu_port[dev]);
 	}
Index: linux-2.6.git/sound/isa/azt2320.c
===================================================================
--- linux-2.6.git.orig/sound/isa/azt2320.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/azt2320.c	2006-07-01 16:51:50.000000000 +0200
@@ -279,7 +279,7 @@ static int __devinit snd_card_azt2320_pr
 	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], SA_INTERRUPT,
+				mpu_irq[dev], IRQF_DISABLED,
 				NULL) < 0)
 			snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx\n", mpu_port[dev]);
 	}
Index: linux-2.6.git/sound/isa/dt019x.c
===================================================================
--- linux-2.6.git.orig/sound/isa/dt019x.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/dt019x.c	2006-07-01 16:51:50.000000000 +0200
@@ -240,7 +240,7 @@ static int __devinit snd_card_dt019x_pro
 					MPU401_HW_MPU401,
 					mpu_port[dev], 0,
 					mpu_irq[dev],
-					mpu_irq[dev] >= 0 ? SA_INTERRUPT : 0,
+					mpu_irq[dev] >= 0 ? IRQF_DISABLED : 0,
 					NULL) < 0)
 			snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx ?\n", mpu_port[dev]);
 	}
Index: linux-2.6.git/sound/isa/es18xx.c
===================================================================
--- linux-2.6.git.orig/sound/isa/es18xx.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/es18xx.c	2006-07-01 16:51:50.000000000 +0200
@@ -1837,7 +1837,7 @@ static int __devinit snd_es18xx_new_devi
 		return -EBUSY;
 	}
 
-	if (request_irq(irq, snd_es18xx_interrupt, SA_INTERRUPT, "ES18xx", (void *) chip)) {
+	if (request_irq(irq, snd_es18xx_interrupt, IRQF_DISABLED, "ES18xx", (void *) chip)) {
 		snd_es18xx_free(chip);
 		snd_printk(KERN_ERR PFX "unable to grap IRQ %d\n", irq);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/opl3sa2.c
===================================================================
--- linux-2.6.git.orig/sound/isa/opl3sa2.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/opl3sa2.c	2006-07-01 16:51:50.000000000 +0200
@@ -683,7 +683,7 @@ static int __devinit snd_opl3sa2_probe(s
 		chip->single_dma = 1;
 	if ((err = snd_opl3sa2_detect(chip)) < 0)
 		return err;
-	if (request_irq(xirq, snd_opl3sa2_interrupt, SA_INTERRUPT, "OPL3-SA2", chip)) {
+	if (request_irq(xirq, snd_opl3sa2_interrupt, IRQF_DISABLED, "OPL3-SA2", chip)) {
 		snd_printk(KERN_ERR PFX "can't grab IRQ %d\n", xirq);
 		return -ENODEV;
 	}
Index: linux-2.6.git/sound/isa/sgalaxy.c
===================================================================
--- linux-2.6.git.orig/sound/isa/sgalaxy.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/sgalaxy.c	2006-07-01 16:51:50.000000000 +0200
@@ -147,7 +147,7 @@ static int __init snd_sgalaxy_setup_wss(
         if (tmp < 0)
                 return -EINVAL;
 
-	if (request_irq(irq, snd_sgalaxy_dummy_interrupt, SA_INTERRUPT, "sgalaxy", NULL)) {
+	if (request_irq(irq, snd_sgalaxy_dummy_interrupt, IRQF_DISABLED, "sgalaxy", NULL)) {
 		snd_printk(KERN_ERR "sgalaxy: can't grab irq %d\n", irq);
 		return -EIO;
 	}
Index: linux-2.6.git/sound/isa/sscape.c
===================================================================
--- linux-2.6.git.orig/sound/isa/sscape.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/sscape.c	2006-07-01 16:51:50.000000000 +0200
@@ -900,7 +900,7 @@ static int __devinit create_mpu401(struc
 	if ((err = snd_mpu401_uart_new(card, devnum,
 	                               MPU401_HW_MPU401,
 	                               port, MPU401_INFO_INTEGRATED,
-	                               irq, SA_INTERRUPT,
+	                               irq, IRQF_DISABLED,
 	                               &rawmidi)) == 0) {
 		struct snd_mpu401 *mpu = (struct snd_mpu401 *) rawmidi->private_data;
 		mpu->open_input = mpu401_open;
Index: linux-2.6.git/sound/isa/ad1816a/ad1816a.c
===================================================================
--- linux-2.6.git.orig/sound/isa/ad1816a/ad1816a.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/ad1816a/ad1816a.c	2006-07-01 16:51:50.000000000 +0200
@@ -232,7 +232,7 @@ static int __devinit snd_card_ad1816a_pr
 
 	if (mpu_port[dev] > 0) {
 		if (snd_mpu401_uart_new(card, 0, MPU401_HW_MPU401,
-					mpu_port[dev], 0, mpu_irq[dev], SA_INTERRUPT,
+					mpu_port[dev], 0, mpu_irq[dev], IRQF_DISABLED,
 					NULL) < 0)
 			printk(KERN_ERR PFX "no MPU-401 device at 0x%lx.\n", mpu_port[dev]);
 	}
Index: linux-2.6.git/sound/isa/ad1816a/ad1816a_lib.c
===================================================================
--- linux-2.6.git.orig/sound/isa/ad1816a/ad1816a_lib.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/ad1816a/ad1816a_lib.c	2006-07-01 16:51:50.000000000 +0200
@@ -599,7 +599,7 @@ int __devinit snd_ad1816a_create(struct 
 		snd_ad1816a_free(chip);
 		return -EBUSY;
 	}
-	if (request_irq(irq, snd_ad1816a_interrupt, SA_INTERRUPT, "AD1816A", (void *) chip)) {
+	if (request_irq(irq, snd_ad1816a_interrupt, IRQF_DISABLED, "AD1816A", (void *) chip)) {
 		snd_printk(KERN_ERR "ad1816a: can't grab IRQ %d\n", irq);
 		snd_ad1816a_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/ad1848/ad1848_lib.c
===================================================================
--- linux-2.6.git.orig/sound/isa/ad1848/ad1848_lib.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/ad1848/ad1848_lib.c	2006-07-01 16:51:50.000000000 +0200
@@ -902,7 +902,7 @@ int snd_ad1848_create(struct snd_card *c
 		snd_ad1848_free(chip);
 		return -EBUSY;
 	}
-	if (request_irq(irq, snd_ad1848_interrupt, SA_INTERRUPT, "AD1848", (void *) chip)) {
+	if (request_irq(irq, snd_ad1848_interrupt, IRQF_DISABLED, "AD1848", (void *) chip)) {
 		snd_printk(KERN_ERR "ad1848: can't grab IRQ %d\n", irq);
 		snd_ad1848_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/cs423x/cs4231.c
===================================================================
--- linux-2.6.git.orig/sound/isa/cs423x/cs4231.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/cs423x/cs4231.c	2006-07-01 16:51:50.000000000 +0200
@@ -122,7 +122,7 @@ static int __init snd_cs4231_probe(struc
 		if (snd_mpu401_uart_new(card, 0, MPU401_HW_CS4232,
 					mpu_port[dev], 0,
 					mpu_irq[dev],
-					mpu_irq[dev] >= 0 ? SA_INTERRUPT : 0,
+					mpu_irq[dev] >= 0 ? IRQF_DISABLED : 0,
 					NULL) < 0)
 			printk(KERN_WARNING "cs4231: MPU401 not detected\n");
 	}
Index: linux-2.6.git/sound/isa/cs423x/cs4231_lib.c
===================================================================
--- linux-2.6.git.orig/sound/isa/cs423x/cs4231_lib.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/cs423x/cs4231_lib.c	2006-07-01 16:51:50.000000000 +0200
@@ -1454,7 +1454,7 @@ int snd_cs4231_create(struct snd_card *c
 		return -ENODEV;
 	}
 	chip->cport = cport;
-	if (!(hwshare & CS4231_HWSHARE_IRQ) && request_irq(irq, snd_cs4231_interrupt, SA_INTERRUPT, "CS4231", (void *) chip)) {
+	if (!(hwshare & CS4231_HWSHARE_IRQ) && request_irq(irq, snd_cs4231_interrupt, IRQF_DISABLED, "CS4231", (void *) chip)) {
 		snd_printk(KERN_ERR "cs4231: can't grab IRQ %d\n", irq);
 		snd_cs4231_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/cs423x/cs4236.c
===================================================================
--- linux-2.6.git.orig/sound/isa/cs423x/cs4236.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/cs423x/cs4236.c	2006-07-01 16:51:50.000000000 +0200
@@ -535,7 +535,7 @@ static int __devinit snd_cs423x_probe(st
 		if (snd_mpu401_uart_new(card, 0, MPU401_HW_CS4232,
 					mpu_port[dev], 0,
 					mpu_irq[dev],
-					mpu_irq[dev] >= 0 ? SA_INTERRUPT : 0, NULL) < 0)
+					mpu_irq[dev] >= 0 ? IRQF_DISABLED : 0, NULL) < 0)
 			printk(KERN_WARNING IDENT ": MPU401 not detected\n");
 	}
 
Index: linux-2.6.git/sound/isa/es1688/es1688.c
===================================================================
--- linux-2.6.git.orig/sound/isa/es1688/es1688.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/es1688/es1688.c	2006-07-01 16:51:50.000000000 +0200
@@ -153,7 +153,7 @@ static int __init snd_es1688_probe(struc
 		if ((err = snd_mpu401_uart_new(card, 0, MPU401_HW_ES1688,
 					       chip->mpu_port, 0,
 					       xmpu_irq,
-					       SA_INTERRUPT,
+					       IRQF_DISABLED,
 					       NULL)) < 0)
 			goto _err;
 	}
Index: linux-2.6.git/sound/isa/es1688/es1688_lib.c
===================================================================
--- linux-2.6.git.orig/sound/isa/es1688/es1688_lib.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/es1688/es1688_lib.c	2006-07-01 16:51:50.000000000 +0200
@@ -659,7 +659,7 @@ int snd_es1688_create(struct snd_card *c
 		snd_es1688_free(chip);
 		return -EBUSY;
 	}
-	if (request_irq(irq, snd_es1688_interrupt, SA_INTERRUPT, "ES1688", (void *) chip)) {
+	if (request_irq(irq, snd_es1688_interrupt, IRQF_DISABLED, "ES1688", (void *) chip)) {
 		snd_printk(KERN_ERR "es1688: can't grab IRQ %d\n", irq);
 		snd_es1688_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/gus/gusextreme.c
===================================================================
--- linux-2.6.git.orig/sound/isa/gus/gusextreme.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/gus/gusextreme.c	2006-07-01 16:51:50.000000000 +0200
@@ -301,7 +301,7 @@ static int __init snd_gusextreme_probe(s
 	    (err = snd_mpu401_uart_new(card, 0, MPU401_HW_ES1688,
 					       es1688->mpu_port, 0,
 					       xmpu_irq,
-					       SA_INTERRUPT,
+					       IRQF_DISABLED,
 					       NULL)) < 0)
 		goto out;
 
Index: linux-2.6.git/sound/isa/gus/gus_main.c
===================================================================
--- linux-2.6.git.orig/sound/isa/gus/gus_main.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/gus/gus_main.c	2006-07-01 16:51:50.000000000 +0200
@@ -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, SA_INTERRUPT, "GUS GF1", (void *) gus)) {
+	if (irq >= 0 && request_irq(irq, snd_gus_interrupt, IRQF_DISABLED, "GUS GF1", (void *) gus)) {
 		snd_printk(KERN_ERR "gus: can't grab irq %d\n", irq);
 		snd_gus_free(gus);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/gus/gusmax.c
===================================================================
--- linux-2.6.git.orig/sound/isa/gus/gusmax.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/gus/gusmax.c	2006-07-01 16:51:50.000000000 +0200
@@ -292,7 +292,7 @@ static int __init snd_gusmax_probe(struc
 		goto _err;
 	}
 
-	if (request_irq(xirq, snd_gusmax_interrupt, SA_INTERRUPT, "GUS MAX", (void *)maxcard)) {
+	if (request_irq(xirq, snd_gusmax_interrupt, IRQF_DISABLED, "GUS MAX", (void *)maxcard)) {
 		snd_printk(KERN_ERR PFX "unable to grab IRQ %d\n", xirq);
 		err = -EBUSY;
 		goto _err;
Index: linux-2.6.git/sound/isa/gus/interwave.c
===================================================================
--- linux-2.6.git.orig/sound/isa/gus/interwave.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/gus/interwave.c	2006-07-01 16:51:50.000000000 +0200
@@ -706,7 +706,7 @@ static int __devinit snd_interwave_probe
 	if ((err = snd_gus_initialize(gus)) < 0)
 		return err;
 
-	if (request_irq(xirq, snd_interwave_interrupt, SA_INTERRUPT,
+	if (request_irq(xirq, snd_interwave_interrupt, IRQF_DISABLED,
 			"InterWave", iwcard)) {
 		snd_printk(KERN_ERR PFX "unable to grab IRQ %d\n", xirq);
 		return -EBUSY;
Index: linux-2.6.git/sound/isa/opti9xx/miro.c
===================================================================
--- linux-2.6.git.orig/sound/isa/opti9xx/miro.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/opti9xx/miro.c	2006-07-01 16:51:50.000000000 +0200
@@ -1382,7 +1382,7 @@ static int __init snd_miro_probe(struct 
 		rmidi = NULL;
 	else
 		if ((error = snd_mpu401_uart_new(card, 0, MPU401_HW_MPU401,
-				miro->mpu_port, 0, miro->mpu_irq, SA_INTERRUPT,
+				miro->mpu_port, 0, miro->mpu_irq, IRQF_DISABLED,
 				&rmidi)))
 			snd_printk(KERN_WARNING "no MPU-401 device at 0x%lx?\n", miro->mpu_port);
 
Index: linux-2.6.git/sound/isa/opti9xx/opti92x-ad1848.c
===================================================================
--- linux-2.6.git.orig/sound/isa/opti9xx/opti92x-ad1848.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/opti9xx/opti92x-ad1848.c	2006-07-01 16:51:50.000000000 +0200
@@ -1291,7 +1291,7 @@ static int snd_opti93x_create(struct snd
 	}
 	codec->dma2 = chip->dma2;
 
-	if (request_irq(chip->irq, snd_opti93x_interrupt, SA_INTERRUPT, DRIVER_NAME" - WSS", codec)) {
+	if (request_irq(chip->irq, snd_opti93x_interrupt, IRQF_DISABLED, 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(stru
 		rmidi = NULL;
 	else
 		if ((error = snd_mpu401_uart_new(card, 0, MPU401_HW_MPU401,
-				chip->mpu_port, 0, chip->mpu_irq, SA_INTERRUPT,
+				chip->mpu_port, 0, chip->mpu_irq, IRQF_DISABLED,
 				&rmidi)))
 			snd_printk(KERN_WARNING "no MPU-401 device at 0x%lx?\n",
 				   chip->mpu_port);
Index: linux-2.6.git/sound/isa/sb/sb_common.c
===================================================================
--- linux-2.6.git.orig/sound/isa/sb/sb_common.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/sb/sb_common.c	2006-07-01 16:51:50.000000000 +0200
@@ -232,7 +232,7 @@ int snd_sbdsp_create(struct snd_card *ca
 	chip->port = port;
 	
 	if (request_irq(irq, irq_handler, hardware == SB_HW_ALS4000 ?
-			SA_INTERRUPT | SA_SHIRQ : SA_INTERRUPT,
+			IRQF_DISABLED | IRQF_SHARED : IRQF_DISABLED,
 			"SoundBlaster", (void *) chip)) {
 		snd_printk(KERN_ERR "sb: can't grab irq %d\n", irq);
 		snd_sbdsp_free(chip);
Index: linux-2.6.git/sound/isa/wavefront/wavefront.c
===================================================================
--- linux-2.6.git.orig/sound/isa/wavefront/wavefront.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/isa/wavefront/wavefront.c	2006-07-01 16:51:50.000000000 +0200
@@ -467,7 +467,7 @@ snd_wavefront_probe (struct snd_card *ca
 		return -EBUSY;
 	}
 	if (request_irq(ics2115_irq[dev], snd_wavefront_ics2115_interrupt,
-			SA_INTERRUPT, "ICS2115", acard)) {
+			IRQF_DISABLED, "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 *ca
 		if ((err = snd_mpu401_uart_new(card, midi_dev, MPU401_HW_CS4232,
 					       cs4232_mpu_port[dev], 0,
 					       cs4232_mpu_irq[dev],
-					       SA_INTERRUPT,
+					       IRQF_DISABLED,
 					       NULL)) < 0) {
 			snd_printk (KERN_ERR "can't allocate CS4232 MPU-401 device\n");
 			return err;
Index: linux-2.6.git/sound/mips/au1x00.c
===================================================================
--- linux-2.6.git.orig/sound/mips/au1x00.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/mips/au1x00.c	2006-07-01 16:51:50.000000000 +0200
@@ -465,13 +465,13 @@ snd_au1000_pcm_new(struct snd_au1000 *au
 
 	flags = claim_dma_lock();
 	if ((au1000->stream[PLAYBACK]->dma = request_au1000_dma(DMA_ID_AC97C_TX,
-			"AC97 TX", au1000_dma_interrupt, SA_INTERRUPT,
+			"AC97 TX", au1000_dma_interrupt, IRQF_DISABLED,
 			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, SA_INTERRUPT,
+			"AC97 RX", au1000_dma_interrupt, IRQF_DISABLED,
 			au1000->stream[CAPTURE])) < 0){
 		release_dma_lock(flags);
 		return -EBUSY;
Index: linux-2.6.git/sound/oss/ad1889.c
===================================================================
--- linux-2.6.git.orig/sound/oss/ad1889.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/ad1889.c	2006-07-01 16:51:50.000000000 +0200
@@ -1010,7 +1010,7 @@ static int __devinit ad1889_probe(struct
 		goto out2;
 	}
 
-	if (request_irq(pcidev->irq, ad1889_interrupt, SA_SHIRQ, DEVNAME, dev) != 0) {
+	if (request_irq(pcidev->irq, ad1889_interrupt, IRQF_SHARED, DEVNAME, dev) != 0) {
 		printk(KERN_ERR DEVNAME ": unable to request interrupt\n");
 		goto out3;
 	}
Index: linux-2.6.git/sound/oss/ali5455.c
===================================================================
--- linux-2.6.git.orig/sound/oss/ali5455.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/ali5455.c	2006-07-01 16:51:50.000000000 +0200
@@ -3460,7 +3460,7 @@ static int __devinit ali_probe(struct pc
 	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, SA_SHIRQ,
+	if (request_irq(card->irq, &ali_interrupt, IRQF_SHARED,
 			card_names[pci_id->driver_data], card)) {
 		printk(KERN_ERR "ali_audio: unable to allocate irq %d\n",
 		       card->irq);
Index: linux-2.6.git/sound/oss/au1000.c
===================================================================
--- linux-2.6.git.orig/sound/oss/au1000.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/au1000.c	2006-07-01 16:51:50.000000000 +0200
@@ -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,
-						   SA_INTERRUPT, s)) < 0) {
+						   IRQF_DISABLED, 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,
-						   SA_INTERRUPT, s)) < 0) {
+						   IRQF_DISABLED, s)) < 0) {
 		err("Can't get ADC DMA");
 		goto err_dma2;
 	}
Index: linux-2.6.git/sound/oss/btaudio.c
===================================================================
--- linux-2.6.git.orig/sound/oss/btaudio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/btaudio.c	2006-07-01 16:51:50.000000000 +0200
@@ -966,7 +966,7 @@ static int __devinit btaudio_probe(struc
         btwrite(~0U, REG_INT_STAT);
 	pci_set_master(pci_dev);
 
-	if ((rc = request_irq(bta->irq, btaudio_irq, SA_SHIRQ|SA_INTERRUPT,
+	if ((rc = request_irq(bta->irq, btaudio_irq, IRQF_SHARED|IRQF_DISABLED,
 			      "btaudio",(void *)bta)) < 0) {
 		printk(KERN_WARNING
 		       "btaudio: can't request irq (rc=%d)\n",rc);
Index: linux-2.6.git/sound/oss/cmpci.c
===================================================================
--- linux-2.6.git.orig/sound/oss/cmpci.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/cmpci.c	2006-07-01 16:51:50.000000000 +0200
@@ -3122,7 +3122,7 @@ static int __devinit cm_probe(struct pci
 	wrmixer(s, DSP_MIX_DATARESETIDX, 0);
 
 	/* request irq */
-	if ((ret = request_irq(s->irq, cm_interrupt, SA_SHIRQ, "cmpci", s))) {
+	if ((ret = request_irq(s->irq, cm_interrupt, IRQF_SHARED, "cmpci", s))) {
 		printk(KERN_ERR "cmpci: irq %u in use\n", s->irq);
 		goto err_irq;
 	}
Index: linux-2.6.git/sound/oss/cs46xx.c
===================================================================
--- linux-2.6.git.orig/sound/oss/cs46xx.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/cs46xx.c	2006-07-01 16:51:50.000000000 +0200
@@ -5177,7 +5177,7 @@ static int __devinit cs46xx_probe(struct
 		card->ba1.name.reg == 0)
 		goto fail2;
 		
-	if (request_irq(card->irq, &cs_interrupt, SA_SHIRQ, "cs46xx", card)) {
+	if (request_irq(card->irq, &cs_interrupt, IRQF_SHARED, "cs46xx", card)) {
 		printk(KERN_ERR "cs46xx: unable to allocate irq %d\n", card->irq);
 		goto fail2;
 	}
Index: linux-2.6.git/sound/oss/es1370.c
===================================================================
--- linux-2.6.git.orig/sound/oss/es1370.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/es1370.c	2006-07-01 16:51:50.000000000 +0200
@@ -2650,7 +2650,7 @@ static int __devinit es1370_probe(struct
 		ret = -EBUSY;
 		goto err_region;
 	}
-	if ((ret=request_irq(s->irq, es1370_interrupt, SA_SHIRQ, "es1370",s))) {
+	if ((ret=request_irq(s->irq, es1370_interrupt, IRQF_SHARED, "es1370",s))) {
 		printk(KERN_ERR "es1370: irq %u in use\n", s->irq);
 		goto err_irq;
 	}
Index: linux-2.6.git/sound/oss/es1371.c
===================================================================
--- linux-2.6.git.orig/sound/oss/es1371.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/es1371.c	2006-07-01 16:51:50.000000000 +0200
@@ -2905,7 +2905,7 @@ static int __devinit es1371_probe(struct
 		res = -EBUSY;
 		goto err_region;
 	}
-	if ((res=request_irq(s->irq, es1371_interrupt, SA_SHIRQ, "es1371",s))) {
+	if ((res=request_irq(s->irq, es1371_interrupt, IRQF_SHARED, "es1371",s))) {
 		printk(KERN_ERR PFX "irq %u in use\n", s->irq);
 		goto err_irq;
 	}
Index: linux-2.6.git/sound/oss/esssolo1.c
===================================================================
--- linux-2.6.git.orig/sound/oss/esssolo1.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/esssolo1.c	2006-07-01 16:51:50.000000000 +0200
@@ -2392,7 +2392,7 @@ static int __devinit solo1_probe(struct 
 		printk(KERN_ERR "solo1: io ports in use\n");
 		goto err_region4;
 	}
-	if ((ret=request_irq(s->irq,solo1_interrupt,SA_SHIRQ,"ESS Solo1",s))) {
+	if ((ret=request_irq(s->irq,solo1_interrupt,IRQF_SHARED,"ESS Solo1",s))) {
 		printk(KERN_ERR "solo1: irq %u in use\n", s->irq);
 		goto err_irq;
 	}
Index: linux-2.6.git/sound/oss/forte.c
===================================================================
--- linux-2.6.git.orig/sound/oss/forte.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/forte.c	2006-07-01 16:51:50.000000000 +0200
@@ -2026,7 +2026,7 @@ forte_probe (struct pci_dev *pci_dev, co
 	chip->iobase = pci_resource_start (pci_dev, 0);
 	chip->irq = pci_dev->irq;
 
-	if (request_irq (chip->irq, forte_interrupt, SA_SHIRQ, DRIVER_NAME,
+	if (request_irq (chip->irq, forte_interrupt, IRQF_SHARED, DRIVER_NAME,
 			 chip)) {
 		printk (KERN_WARNING PFX "Unable to reserve IRQ");
 		ret = -EIO;
Index: linux-2.6.git/sound/oss/hal2.c
===================================================================
--- linux-2.6.git.orig/sound/oss/hal2.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/hal2.c	2006-07-01 16:51:50.000000000 +0200
@@ -1479,7 +1479,7 @@ static int hal2_init_card(struct hal2_ca
 	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, SA_SHIRQ,
+	if (request_irq(SGI_HPCDMA_IRQ, hal2_interrupt, IRQF_SHARED,
 			hal2str, hal2)) {
 		printk(KERN_ERR "HAL2: Can't get irq %d\n", SGI_HPCDMA_IRQ);
 		ret = -EAGAIN;
Index: linux-2.6.git/sound/oss/i810_audio.c
===================================================================
--- linux-2.6.git.orig/sound/oss/i810_audio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/i810_audio.c	2006-07-01 16:51:50.000000000 +0200
@@ -3413,7 +3413,7 @@ static int __devinit i810_probe(struct p
 		goto out_iospace;
 	}
 
-	if (request_irq(card->irq, &i810_interrupt, SA_SHIRQ,
+	if (request_irq(card->irq, &i810_interrupt, IRQF_SHARED,
 			card_names[pci_id->driver_data], card)) {
 		printk(KERN_ERR "i810_audio: unable to allocate irq %d\n", card->irq);
 		goto out_iospace;
Index: linux-2.6.git/sound/oss/ite8172.c
===================================================================
--- linux-2.6.git.orig/sound/oss/ite8172.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/ite8172.c	2006-07-01 16:51:50.000000000 +0200
@@ -2019,7 +2019,7 @@ static int __devinit it8172_probe(struct
 		    s->io, s->io + pci_resource_len(pcidev,0)-1);
 		goto err_region;
 	}
-	if (request_irq(s->irq, it8172_interrupt, SA_INTERRUPT,
+	if (request_irq(s->irq, it8172_interrupt, IRQF_DISABLED,
 			IT8172_MODULE_NAME, s)) {
 		err("irq %u in use", s->irq);
 		goto err_irq;
Index: linux-2.6.git/sound/oss/maestro3.c
===================================================================
--- linux-2.6.git.orig/sound/oss/maestro3.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/maestro3.c	2006-07-01 16:51:50.000000000 +0200
@@ -2694,7 +2694,7 @@ static int __devinit m3_probe(struct pci
         }
     }
     
-    if(request_irq(card->irq, m3_interrupt, SA_SHIRQ, card_names[card->card_type], card)) {
+    if(request_irq(card->irq, m3_interrupt, IRQF_SHARED, card_names[card->card_type], card)) {
 
         printk(KERN_ERR PFX "unable to allocate irq %d,\n", card->irq);
 
Index: linux-2.6.git/sound/oss/maestro.c
===================================================================
--- linux-2.6.git.orig/sound/oss/maestro.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/maestro.c	2006-07-01 16:51:50.000000000 +0200
@@ -3545,7 +3545,7 @@ maestro_probe(struct pci_dev *pcidev,con
 		mixer_push_state(card);
 	}
 	
-	if((ret=request_irq(card->irq, ess_interrupt, SA_SHIRQ, card_names[card_type], card)))
+	if((ret=request_irq(card->irq, ess_interrupt, IRQF_SHARED, card_names[card_type], card)))
 	{
 		printk(KERN_ERR "maestro: unable to allocate irq %d,\n", card->irq);
 		unregister_sound_mixer(card->dev_mixer);
Index: linux-2.6.git/sound/oss/nec_vrc5477.c
===================================================================
--- linux-2.6.git.orig/sound/oss/nec_vrc5477.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/nec_vrc5477.c	2006-07-01 16:51:50.000000000 +0200
@@ -1909,7 +1909,7 @@ static int __devinit vrc5477_ac97_probe(
 		       s->io, s->io + pci_resource_len(pcidev,0)-1);
 		goto err_region;
 	}
-	if (request_irq(s->irq, vrc5477_ac97_interrupt, SA_INTERRUPT,
+	if (request_irq(s->irq, vrc5477_ac97_interrupt, IRQF_DISABLED,
 			VRC5477_AC97_MODULE_NAME, s)) {
 		printk(KERN_ERR PFX "irq %u in use\n", s->irq);
 		goto err_irq;
Index: linux-2.6.git/sound/oss/nm256_audio.c
===================================================================
--- linux-2.6.git.orig/sound/oss/nm256_audio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/nm256_audio.c	2006-07-01 16:51:50.000000000 +0200
@@ -733,7 +733,7 @@ static int
 nm256_grabInterrupt (struct nm256_info *card)
 {
     if (card->has_irq++ == 0) {
-	if (request_irq (card->irq, card->introutine, SA_SHIRQ,
+	if (request_irq (card->irq, card->introutine, IRQF_SHARED,
 			 "NM256_audio", card) < 0) {
 	    printk (KERN_ERR "NM256: can't obtain IRQ %d\n", card->irq);
 	    return -1;
Index: linux-2.6.git/sound/oss/rme96xx.c
===================================================================
--- linux-2.6.git.orig/sound/oss/rme96xx.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/rme96xx.c	2006-07-01 16:51:50.000000000 +0200
@@ -994,7 +994,7 @@ static int __devinit rme96xx_probe(struc
 
 	if (pci_enable_device(pcidev))
 		goto err_irq;
-	if (request_irq(s->irq, rme96xx_interrupt, SA_SHIRQ, "rme96xx", s)) {
+	if (request_irq(s->irq, rme96xx_interrupt, IRQF_SHARED, "rme96xx", s)) {
 		printk(KERN_ERR RME_MESS" irq %u in use\n", s->irq);
 		goto err_irq;
 	}
Index: linux-2.6.git/sound/oss/sb_common.c
===================================================================
--- linux-2.6.git.orig/sound/oss/sb_common.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/sb_common.c	2006-07-01 16:51:50.000000000 +0200
@@ -677,7 +677,7 @@ int sb_dsp_init(struct address_info *hw_
 		 *	will get shared PCI irq lines we must cope.
 		 */
 		 
-		int i=(devc->caps&SB_PCI_IRQ)?SA_SHIRQ:0;
+		int i=(devc->caps&SB_PCI_IRQ)?IRQF_SHARED:0;
 		
 		if (request_irq(hw_config->irq, sbintr, i, "soundblaster", devc) < 0)
 		{
Index: linux-2.6.git/sound/oss/sh_dac_audio.c
===================================================================
--- linux-2.6.git.orig/sound/oss/sh_dac_audio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/sh_dac_audio.c	2006-07-01 16:51:50.000000000 +0200
@@ -297,7 +297,7 @@ static int __init dac_audio_init(void)
 	dac_audio_set_rate();
 
 	retval =
-	    request_irq(TIMER1_IRQ, timer1_interrupt, SA_INTERRUPT, MODNAME, 0);
+	    request_irq(TIMER1_IRQ, timer1_interrupt, IRQF_DISABLED, MODNAME, 0);
 	if (retval < 0) {
 		printk(KERN_ERR "sh_dac_audio: IRQ %d request failed\n",
 		       TIMER1_IRQ);
Index: linux-2.6.git/sound/oss/sonicvibes.c
===================================================================
--- linux-2.6.git.orig/sound/oss/sonicvibes.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/sonicvibes.c	2006-07-01 16:51:50.000000000 +0200
@@ -2632,7 +2632,7 @@ static int __devinit sv_probe(struct pci
 	wrindir(s, SV_CIPCMSR1, ((8000 * 65536 / FULLRATE) >> 8) & 0xff);
 	wrindir(s, SV_CIADCOUTPUT, 0);
 	/* request irq */
-	if ((ret=request_irq(s->irq,sv_interrupt,SA_SHIRQ,"S3 SonicVibes",s))) {
+	if ((ret=request_irq(s->irq,sv_interrupt,IRQF_SHARED,"S3 SonicVibes",s))) {
 		printk(KERN_ERR "sv: irq %u in use\n", s->irq);
 		goto err_irq;
 	}
Index: linux-2.6.git/sound/oss/trident.c
===================================================================
--- linux-2.6.git.orig/sound/oss/trident.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/trident.c	2006-07-01 16:51:50.000000000 +0200
@@ -4472,7 +4472,7 @@ trident_probe(struct pci_dev *pci_dev, c
 
 	/* claim our irq */
 	rc = -ENODEV;
-	if (request_irq(card->irq, &trident_interrupt, SA_SHIRQ, 
+	if (request_irq(card->irq, &trident_interrupt, IRQF_SHARED, 
 			card_names[pci_id->driver_data], card)) {
 		printk(KERN_ERR "trident: unable to allocate irq %d\n", 
 		       card->irq);
Index: linux-2.6.git/sound/oss/via82cxxx_audio.c
===================================================================
--- linux-2.6.git.orig/sound/oss/via82cxxx_audio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/via82cxxx_audio.c	2006-07-01 16:51:50.000000000 +0200
@@ -2013,7 +2013,7 @@ static int via_interrupt_init (struct vi
 			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, SA_SHIRQ, VIA_MODULE_NAME, card)) {
+		if (request_irq (card->pdev->irq, via_interrupt, IRQF_SHARED, 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 vi
 	}
 	else 
 	{
-		if (request_irq (card->pdev->irq, via_new_interrupt, SA_SHIRQ, VIA_MODULE_NAME, card)) {
+		if (request_irq (card->pdev->irq, via_new_interrupt, IRQF_SHARED, VIA_MODULE_NAME, card)) {
 			printk (KERN_ERR PFX "unable to obtain IRQ %d, aborting\n",
 				card->pdev->irq);
 			DPRINTK ("EXIT, returning -EBUSY\n");
Index: linux-2.6.git/sound/oss/wavfront.c
===================================================================
--- linux-2.6.git.orig/sound/oss/wavfront.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/wavfront.c	2006-07-01 16:51:50.000000000 +0200
@@ -2268,7 +2268,7 @@ static int __init wavefront_hw_reset (vo
 	}
 
 	if (request_irq (dev.irq, wavefrontintr,
-			 SA_INTERRUPT|SA_SHIRQ,
+			 IRQF_DISABLED|IRQF_SHARED,
 			 "wavefront synth", &dev) < 0) {
 		printk (KERN_WARNING LOGNAME "IRQ %d not available!\n",
 			dev.irq);
Index: linux-2.6.git/sound/oss/wf_midi.c
===================================================================
--- linux-2.6.git.orig/sound/oss/wf_midi.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/wf_midi.c	2006-07-01 16:51:50.000000000 +0200
@@ -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, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq (phys_dev->irq, wf_mpuintr, IRQF_DISABLED|IRQF_SHARED,
 			 "wavefront midi", phys_dev) < 0) {
 
 		printk (KERN_ERR "WF-MPU: Failed to allocate IRQ%d\n",
Index: linux-2.6.git/sound/oss/ymfpci.c
===================================================================
--- linux-2.6.git.orig/sound/oss/ymfpci.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/ymfpci.c	2006-07-01 16:51:50.000000000 +0200
@@ -2573,7 +2573,7 @@ static int __devinit ymf_probe_one(struc
 		goto out_disable_dsp;
 	ymf_memload(codec);
 
-	if (request_irq(pcidev->irq, ymf_interrupt, SA_SHIRQ, "ymfpci", codec) != 0) {
+	if (request_irq(pcidev->irq, ymf_interrupt, IRQF_SHARED, "ymfpci", codec) != 0) {
 		printk(KERN_ERR "ymfpci: unable to request IRQ %d\n",
 		    pcidev->irq);
 		goto out_memfree;
Index: linux-2.6.git/sound/oss/cs4281/cs4281m.c
===================================================================
--- linux-2.6.git.orig/sound/oss/cs4281/cs4281m.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/cs4281/cs4281m.c	2006-07-01 16:51:50.000000000 +0200
@@ -4346,7 +4346,7 @@ static int __devinit cs4281_probe(struct
 	s->pcidev = pcidev;
 	s->irq = pcidev->irq;
 	if (request_irq
-	    (s->irq, cs4281_interrupt, SA_SHIRQ, "Crystal CS4281", s)) {
+	    (s->irq, cs4281_interrupt, IRQF_SHARED, "Crystal CS4281", s)) {
 		CS_DBGOUT(CS_INIT | CS_ERROR, 1,
 			  printk(KERN_ERR "cs4281: irq %u in use\n", s->irq));
 		goto err_irq;
Index: linux-2.6.git/sound/oss/emu10k1/main.c
===================================================================
--- linux-2.6.git.orig/sound/oss/emu10k1/main.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/oss/emu10k1/main.c	2006-07-01 16:51:50.000000000 +0200
@@ -1301,7 +1301,7 @@ static int __devinit emu10k1_probe(struc
 	card->pci_dev = pci_dev;
 
 	/* Reserve IRQ Line */
-	if (request_irq(card->irq, emu10k1_interrupt, SA_SHIRQ, card_names[pci_id->driver_data], card)) {
+	if (request_irq(card->irq, emu10k1_interrupt, IRQF_SHARED, card_names[pci_id->driver_data], card)) {
 		printk(KERN_ERR "emu10k1: IRQ in use\n");
 		ret = -EBUSY;
 		goto err_irq;
Index: linux-2.6.git/sound/pci/ad1889.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ad1889.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ad1889.c	2006-07-01 16:51:50.000000000 +0200
@@ -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,
-			SA_INTERRUPT|SA_SHIRQ, card->driver, (void*)chip)) {
+			IRQF_DISABLED|IRQF_SHARED, card->driver, (void*)chip)) {
 		printk(KERN_ERR PFX "cannot obtain IRQ %d\n", pci->irq);
 		snd_ad1889_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/pci/als300.c
===================================================================
--- linux-2.6.git.orig/sound/pci/als300.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/als300.c	2006-07-01 16:51:50.000000000 +0200
@@ -724,7 +724,7 @@ static int __devinit snd_als300_create(s
 	else
 		irq_handler = snd_als300_interrupt;
 
-	if (request_irq(pci->irq, irq_handler, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, irq_handler, IRQF_DISABLED|IRQF_SHARED,
 					card->shortname, (void *)chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_als300_free(chip);
Index: linux-2.6.git/sound/pci/atiixp.c
===================================================================
--- linux-2.6.git.orig/sound/pci/atiixp.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/atiixp.c	2006-07-01 16:51:50.000000000 +0200
@@ -1578,7 +1578,7 @@ static int __devinit snd_atiixp_create(s
 		return -EIO;
 	}
 
-	if (request_irq(pci->irq, snd_atiixp_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_atiixp_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card->shortname, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_atiixp_free(chip);
Index: linux-2.6.git/sound/pci/atiixp_modem.c
===================================================================
--- linux-2.6.git.orig/sound/pci/atiixp_modem.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/atiixp_modem.c	2006-07-01 16:51:50.000000000 +0200
@@ -1251,7 +1251,7 @@ static int __devinit snd_atiixp_create(s
 		return -EIO;
 	}
 
-	if (request_irq(pci->irq, snd_atiixp_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_atiixp_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card->shortname, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_atiixp_free(chip);
Index: linux-2.6.git/sound/pci/azt3328.c
===================================================================
--- linux-2.6.git.orig/sound/pci/azt3328.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/azt3328.c	2006-07-01 16:51:50.000000000 +0200
@@ -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, SA_INTERRUPT|SA_SHIRQ, card->shortname, (void *)chip)) {
+	if (request_irq(pci->irq, snd_azf3328_interrupt, IRQF_DISABLED|IRQF_SHARED, card->shortname, (void *)chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		err = -EBUSY;
 		goto out_err;
Index: linux-2.6.git/sound/pci/bt87x.c
===================================================================
--- linux-2.6.git.orig/sound/pci/bt87x.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/bt87x.c	2006-07-01 16:51:50.000000000 +0200
@@ -747,7 +747,7 @@ static int __devinit snd_bt87x_create(st
 	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, SA_INTERRUPT | SA_SHIRQ,
+	if (request_irq(pci->irq, snd_bt87x_interrupt, IRQF_DISABLED | IRQF_SHARED,
 			"Bt87x audio", chip)) {
 		snd_bt87x_free(chip);
 		snd_printk(KERN_ERR "cannot grab irq\n");
Index: linux-2.6.git/sound/pci/cmipci.c
===================================================================
--- linux-2.6.git.orig/sound/pci/cmipci.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/cmipci.c	2006-07-01 16:51:50.000000000 +0200
@@ -2862,7 +2862,7 @@ static int __devinit snd_cmipci_create(s
 	cm->iobase = pci_resource_start(pci, 0);
 
 	if (request_irq(pci->irq, snd_cmipci_interrupt,
-			SA_INTERRUPT|SA_SHIRQ, card->driver, cm)) {
+			IRQF_DISABLED|IRQF_SHARED, card->driver, cm)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_cmipci_free(cm);
 		return -EBUSY;
Index: linux-2.6.git/sound/pci/cs4281.c
===================================================================
--- linux-2.6.git.orig/sound/pci/cs4281.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/cs4281.c	2006-07-01 16:51:50.000000000 +0200
@@ -1386,7 +1386,7 @@ static int __devinit snd_cs4281_create(s
 		return -ENOMEM;
 	}
 	
-	if (request_irq(pci->irq, snd_cs4281_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_cs4281_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"CS4281", chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_cs4281_free(chip);
Index: linux-2.6.git/sound/pci/ens1370.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ens1370.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ens1370.c	2006-07-01 16:51:50.000000000 +0200
@@ -2135,7 +2135,7 @@ static int __devinit snd_ensoniq_create(
 		return err;
 	}
 	ensoniq->port = pci_resource_start(pci, 0);
-	if (request_irq(pci->irq, snd_audiopci_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_audiopci_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"Ensoniq AudioPCI", ensoniq)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_ensoniq_free(ensoniq);
Index: linux-2.6.git/sound/pci/es1938.c
===================================================================
--- linux-2.6.git.orig/sound/pci/es1938.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/es1938.c	2006-07-01 16:51:50.000000000 +0200
@@ -1429,7 +1429,7 @@ static int es1938_resume(struct pci_dev 
 	pci_restore_state(pci);
 	pci_enable_device(pci);
 	request_irq(pci->irq, snd_es1938_interrupt,
-		    SA_INTERRUPT|SA_SHIRQ, "ES1938", chip);
+		    IRQF_DISABLED|IRQF_SHARED, "ES1938", chip);
 	chip->irq = pci->irq;
 	snd_es1938_chip_init(chip);
 
@@ -1544,7 +1544,7 @@ static int __devinit snd_es1938_create(s
 	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, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_es1938_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"ES1938", chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_es1938_free(chip);
Index: linux-2.6.git/sound/pci/es1968.c
===================================================================
--- linux-2.6.git.orig/sound/pci/es1968.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/es1968.c	2006-07-01 16:51:50.000000000 +0200
@@ -2597,7 +2597,7 @@ static int __devinit snd_es1968_create(s
 		return err;
 	}
 	chip->io_port = pci_resource_start(pci, 0);
-	if (request_irq(pci->irq, snd_es1968_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_es1968_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"ESS Maestro", (void*)chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_es1968_free(chip);
Index: linux-2.6.git/sound/pci/fm801.c
===================================================================
--- linux-2.6.git.orig/sound/pci/fm801.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/fm801.c	2006-07-01 16:51:50.000000000 +0200
@@ -1371,7 +1371,7 @@ static int __devinit snd_fm801_create(st
 		return err;
 	}
 	chip->port = pci_resource_start(pci, 0);
-	if (request_irq(pci->irq, snd_fm801_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_fm801_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"FM801", chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", chip->irq);
 		snd_fm801_free(chip);
Index: linux-2.6.git/sound/pci/intel8x0.c
===================================================================
--- linux-2.6.git.orig/sound/pci/intel8x0.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/intel8x0.c	2006-07-01 16:51:50.000000000 +0200
@@ -2475,7 +2475,7 @@ static int intel8x0_resume(struct pci_de
 	pci_restore_state(pci);
 	pci_enable_device(pci);
 	pci_set_master(pci);
-	request_irq(pci->irq, snd_intel8x0_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	request_irq(pci->irq, snd_intel8x0_interrupt, IRQF_DISABLED|IRQF_SHARED,
 		    card->shortname, chip);
 	chip->irq = pci->irq;
 	synchronize_irq(chip->irq);
@@ -2848,7 +2848,7 @@ static int __devinit snd_intel8x0_create
 
 	/* request irq after initializaing int_sta_mask, etc */
 	if (request_irq(pci->irq, snd_intel8x0_interrupt,
-			SA_INTERRUPT|SA_SHIRQ, card->shortname, chip)) {
+			IRQF_DISABLED|IRQF_SHARED, card->shortname, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_intel8x0_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/pci/intel8x0m.c
===================================================================
--- linux-2.6.git.orig/sound/pci/intel8x0m.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/intel8x0m.c	2006-07-01 16:51:50.000000000 +0200
@@ -1185,7 +1185,7 @@ static int __devinit snd_intel8x0m_creat
 	}
 
  port_inited:
-	if (request_irq(pci->irq, snd_intel8x0_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_intel8x0_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card->shortname, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_intel8x0_free(chip);
Index: linux-2.6.git/sound/pci/maestro3.c
===================================================================
--- linux-2.6.git.orig/sound/pci/maestro3.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/maestro3.c	2006-07-01 16:51:50.000000000 +0200
@@ -2760,7 +2760,7 @@ snd_m3_create(struct snd_card *card, str
 
 	tasklet_init(&chip->hwvol_tq, snd_m3_update_hw_volume, (unsigned long)chip);
 
-	if (request_irq(pci->irq, snd_m3_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_m3_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card->driver, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_m3_free(chip);
Index: linux-2.6.git/sound/pci/rme32.c
===================================================================
--- linux-2.6.git.orig/sound/pci/rme32.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/rme32.c	2006-07-01 16:51:50.000000000 +0200
@@ -1374,7 +1374,7 @@ static int __devinit snd_rme32_create(st
 		return -ENOMEM;
 	}
 
-	if (request_irq(pci->irq, snd_rme32_interrupt, SA_INTERRUPT | SA_SHIRQ, "RME32", (void *) rme32)) {
+	if (request_irq(pci->irq, snd_rme32_interrupt, IRQF_DISABLED | IRQF_SHARED, "RME32", (void *) rme32)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		return -EBUSY;
 	}
Index: linux-2.6.git/sound/pci/rme96.c
===================================================================
--- linux-2.6.git.orig/sound/pci/rme96.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/rme96.c	2006-07-01 16:51:50.000000000 +0200
@@ -1588,7 +1588,7 @@ snd_rme96_create(struct rme96 *rme96)
 		return -ENOMEM;
 	}
 
-	if (request_irq(pci->irq, snd_rme96_interrupt, SA_INTERRUPT|SA_SHIRQ, "RME96", (void *)rme96)) {
+	if (request_irq(pci->irq, snd_rme96_interrupt, IRQF_DISABLED|IRQF_SHARED, "RME96", (void *)rme96)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		return -EBUSY;
 	}
Index: linux-2.6.git/sound/pci/sonicvibes.c
===================================================================
--- linux-2.6.git.orig/sound/pci/sonicvibes.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/sonicvibes.c	2006-07-01 16:51:50.000000000 +0200
@@ -1257,7 +1257,7 @@ static int __devinit snd_sonicvibes_crea
 	sonic->midi_port = pci_resource_start(pci, 3);
 	sonic->game_port = pci_resource_start(pci, 4);
 
-	if (request_irq(pci->irq, snd_sonicvibes_interrupt, SA_INTERRUPT|SA_SHIRQ, "S3 SonicVibes", (void *)sonic)) {
+	if (request_irq(pci->irq, snd_sonicvibes_interrupt, IRQF_DISABLED|IRQF_SHARED, "S3 SonicVibes", (void *)sonic)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_sonicvibes_free(sonic);
 		return -EBUSY;
Index: linux-2.6.git/sound/pci/via82xx.c
===================================================================
--- linux-2.6.git.orig/sound/pci/via82xx.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/via82xx.c	2006-07-01 16:51:50.000000000 +0200
@@ -2281,7 +2281,7 @@ static int __devinit snd_via82xx_create(
 	if (request_irq(pci->irq,
 			chip_type == TYPE_VIA8233 ?
 			snd_via8233_interrupt :	snd_via686_interrupt,
-			SA_INTERRUPT|SA_SHIRQ,
+			IRQF_DISABLED|IRQF_SHARED,
 			card->driver, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_via82xx_free(chip);
Index: linux-2.6.git/sound/pci/via82xx_modem.c
===================================================================
--- linux-2.6.git.orig/sound/pci/via82xx_modem.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/via82xx_modem.c	2006-07-01 16:51:50.000000000 +0200
@@ -1118,7 +1118,7 @@ static int __devinit snd_via82xx_create(
 		return err;
 	}
 	chip->port = pci_resource_start(pci, 0);
-	if (request_irq(pci->irq, snd_via82xx_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_via82xx_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card->driver, chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_via82xx_free(chip);
Index: linux-2.6.git/sound/pci/ali5451/ali5451.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ali5451/ali5451.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ali5451/ali5451.c	2006-07-01 16:51:50.000000000 +0200
@@ -2185,7 +2185,7 @@ static int __devinit snd_ali_resources(s
 		return err;
 	codec->port = pci_resource_start(codec->pci, 0);
 
-	if (request_irq(codec->pci->irq, snd_ali_card_interrupt, SA_INTERRUPT|SA_SHIRQ, "ALI 5451", (void *)codec)) {
+	if (request_irq(codec->pci->irq, snd_ali_card_interrupt, IRQF_DISABLED|IRQF_SHARED, "ALI 5451", (void *)codec)) {
 		snd_printk(KERN_ERR "Unable to request irq.\n");
 		return -EBUSY;
 	}
Index: linux-2.6.git/sound/pci/au88x0/au88x0.c
===================================================================
--- linux-2.6.git.orig/sound/pci/au88x0/au88x0.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/au88x0/au88x0.c	2006-07-01 16:51:50.000000000 +0200
@@ -197,7 +197,7 @@ snd_vortex_create(struct snd_card *card,
 	}
 
 	if ((err = request_irq(pci->irq, vortex_interrupt,
-	                       SA_INTERRUPT | SA_SHIRQ, CARD_NAME_SHORT,
+	                       IRQF_DISABLED | IRQF_SHARED, CARD_NAME_SHORT,
 	                       chip)) != 0) {
 		printk(KERN_ERR "cannot grab irq\n");
 		goto irq_out;
Index: linux-2.6.git/sound/pci/ca0106/ca0106_main.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ca0106/ca0106_main.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ca0106/ca0106_main.c	2006-07-01 16:51:50.000000000 +0200
@@ -1268,7 +1268,7 @@ static int __devinit snd_ca0106_create(s
 	}
 
 	if (request_irq(pci->irq, snd_ca0106_interrupt,
-			SA_INTERRUPT|SA_SHIRQ, "snd_ca0106",
+			IRQF_DISABLED|IRQF_SHARED, "snd_ca0106",
 			(void *)chip)) {
 		snd_ca0106_free(chip);
 		printk(KERN_ERR "cannot grab irq\n");
Index: linux-2.6.git/sound/pci/cs46xx/cs46xx_lib.c
===================================================================
--- linux-2.6.git.orig/sound/pci/cs46xx/cs46xx_lib.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/cs46xx/cs46xx_lib.c	2006-07-01 16:51:50.000000000 +0200
@@ -3853,7 +3853,7 @@ int __devinit snd_cs46xx_create(struct s
 		}
 	}
 
-	if (request_irq(pci->irq, snd_cs46xx_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_cs46xx_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"CS46XX", chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_cs46xx_free(chip);
Index: linux-2.6.git/sound/pci/cs5535audio/cs5535audio.c
===================================================================
--- linux-2.6.git.orig/sound/pci/cs5535audio/cs5535audio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/cs5535audio/cs5535audio.c	2006-07-01 16:51:50.000000000 +0200
@@ -321,7 +321,7 @@ static int __devinit snd_cs5535audio_cre
 	cs5535au->port = pci_resource_start(pci, 0);
 
 	if (request_irq(pci->irq, snd_cs5535audio_interrupt,
-			SA_INTERRUPT|SA_SHIRQ, "CS5535 Audio", cs5535au)) {
+			IRQF_DISABLED|IRQF_SHARED, "CS5535 Audio", cs5535au)) {
 		snd_printk("unable to grab IRQ %d\n", pci->irq);
 		err = -EBUSY;
 		goto sndfail;
Index: linux-2.6.git/sound/pci/echoaudio/echoaudio.c
===================================================================
--- linux-2.6.git.orig/sound/pci/echoaudio/echoaudio.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/echoaudio/echoaudio.c	2006-07-01 16:51:50.000000000 +0200
@@ -1951,7 +1951,7 @@ static __devinit int snd_echo_create(str
 	chip->dsp_registers = (volatile u32 __iomem *)
 		ioremap_nocache(chip->dsp_registers_phys, sz);
 
-	if (request_irq(pci->irq, snd_echo_interrupt, SA_INTERRUPT | SA_SHIRQ,
+	if (request_irq(pci->irq, snd_echo_interrupt, IRQF_DISABLED | IRQF_SHARED,
 						ECHOCARD_NAME, (void *)chip)) {
 		snd_echo_free(chip);
 		snd_printk(KERN_ERR "cannot grab irq\n");
Index: linux-2.6.git/sound/pci/emu10k1/emu10k1_main.c
===================================================================
--- linux-2.6.git.orig/sound/pci/emu10k1/emu10k1_main.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/emu10k1/emu10k1_main.c	2006-07-01 16:51:50.000000000 +0200
@@ -1233,7 +1233,7 @@ int __devinit snd_emu10k1_create(struct 
 	}
 	emu->port = pci_resource_start(pci, 0);
 
-	if (request_irq(pci->irq, snd_emu10k1_interrupt, SA_INTERRUPT|SA_SHIRQ, "EMU10K1", (void *)emu)) {
+	if (request_irq(pci->irq, snd_emu10k1_interrupt, IRQF_DISABLED|IRQF_SHARED, "EMU10K1", (void *)emu)) {
 		err = -EBUSY;
 		goto error;
 	}
Index: linux-2.6.git/sound/pci/emu10k1/emu10k1x.c
===================================================================
--- linux-2.6.git.orig/sound/pci/emu10k1/emu10k1x.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/emu10k1/emu10k1x.c	2006-07-01 16:51:50.000000000 +0200
@@ -928,7 +928,7 @@ static int __devinit snd_emu10k1x_create
 	}
 
 	if (request_irq(pci->irq, snd_emu10k1x_interrupt,
-			SA_INTERRUPT|SA_SHIRQ, "EMU10K1X",
+			IRQF_DISABLED|IRQF_SHARED, "EMU10K1X",
 			(void *)chip)) {
 		snd_printk(KERN_ERR "emu10k1x: cannot grab irq %d\n", pci->irq);
 		snd_emu10k1x_free(chip);
Index: linux-2.6.git/sound/pci/hda/hda_intel.c
===================================================================
--- linux-2.6.git.orig/sound/pci/hda/hda_intel.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/hda/hda_intel.c	2006-07-01 16:51:50.000000000 +0200
@@ -1486,7 +1486,7 @@ static int __devinit azx_create(struct s
 		goto errout;
 	}
 
-	if (request_irq(pci->irq, azx_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, azx_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"HDA Intel", (void*)chip)) {
 		snd_printk(KERN_ERR SFX "unable to grab IRQ %d\n", pci->irq);
 		err = -EBUSY;
Index: linux-2.6.git/sound/pci/ice1712/ice1712.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ice1712/ice1712.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ice1712/ice1712.c	2006-07-01 16:51:50.000000000 +0200
@@ -2606,7 +2606,7 @@ static int __devinit snd_ice1712_create(
 	ice->dmapath_port = pci_resource_start(pci, 2);
 	ice->profi_port = pci_resource_start(pci, 3);
 
-	if (request_irq(pci->irq, snd_ice1712_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_ice1712_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"ICE1712", ice)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_ice1712_free(ice);
Index: linux-2.6.git/sound/pci/ice1712/ice1724.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ice1712/ice1724.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ice1712/ice1724.c	2006-07-01 16:51:50.000000000 +0200
@@ -2253,7 +2253,7 @@ static int __devinit snd_vt1724_create(s
 	ice->profi_port = pci_resource_start(pci, 1);
 
 	if (request_irq(pci->irq, snd_vt1724_interrupt,
-			SA_INTERRUPT|SA_SHIRQ, "ICE1724", ice)) {
+			IRQF_DISABLED|IRQF_SHARED, "ICE1724", ice)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_vt1724_free(ice);
 		return -EIO;
Index: linux-2.6.git/sound/pci/korg1212/korg1212.c
===================================================================
--- linux-2.6.git.orig/sound/pci/korg1212/korg1212.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/korg1212/korg1212.c	2006-07-01 16:51:50.000000000 +0200
@@ -2237,7 +2237,7 @@ static int __devinit snd_korg1212_create
         }
 
         err = request_irq(pci->irq, snd_korg1212_interrupt,
-                          SA_INTERRUPT|SA_SHIRQ,
+                          IRQF_DISABLED|IRQF_SHARED,
                           "korg1212", korg1212);
 
         if (err) {
Index: linux-2.6.git/sound/pci/mixart/mixart.c
===================================================================
--- linux-2.6.git.orig/sound/pci/mixart/mixart.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/mixart/mixart.c	2006-07-01 16:51:50.000000000 +0200
@@ -1319,7 +1319,7 @@ static int __devinit snd_mixart_probe(st
 						   pci_resource_len(pci, i));
 	}
 
-	if (request_irq(pci->irq, snd_mixart_interrupt, SA_INTERRUPT|SA_SHIRQ, CARD_NAME, (void *)mgr)) {
+	if (request_irq(pci->irq, snd_mixart_interrupt, IRQF_DISABLED|IRQF_SHARED, CARD_NAME, (void *)mgr)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_mixart_free(mgr);
 		return -EBUSY;
Index: linux-2.6.git/sound/pci/nm256/nm256.c
===================================================================
--- linux-2.6.git.orig/sound/pci/nm256/nm256.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/nm256/nm256.c	2006-07-01 16:51:50.000000000 +0200
@@ -465,7 +465,7 @@ static int snd_nm256_acquire_irq(struct 
 {
 	mutex_lock(&chip->irq_mutex);
 	if (chip->irq < 0) {
-		if (request_irq(chip->pci->irq, chip->interrupt, SA_INTERRUPT|SA_SHIRQ,
+		if (request_irq(chip->pci->irq, chip->interrupt, IRQF_DISABLED|IRQF_SHARED,
 				chip->card->driver, chip)) {
 			snd_printk(KERN_ERR "unable to grab IRQ %d\n", chip->pci->irq);
 			mutex_unlock(&chip->irq_mutex);
Index: linux-2.6.git/sound/pci/pcxhr/pcxhr.c
===================================================================
--- linux-2.6.git.orig/sound/pci/pcxhr/pcxhr.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/pcxhr/pcxhr.c	2006-07-01 16:51:50.000000000 +0200
@@ -1250,7 +1250,7 @@ static int __devinit pcxhr_probe(struct 
 	mgr->pci = pci;
 	mgr->irq = -1;
 
-	if (request_irq(pci->irq, pcxhr_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, pcxhr_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			card_name, mgr)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		pcxhr_free(mgr);
Index: linux-2.6.git/sound/pci/riptide/riptide.c
===================================================================
--- linux-2.6.git.orig/sound/pci/riptide/riptide.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/riptide/riptide.c	2006-07-01 16:51:50.000000000 +0200
@@ -1892,7 +1892,7 @@ snd_riptide_create(struct snd_card *card
 	UNSET_AIE(hwport);
 
 	if (request_irq
-	    (pci->irq, snd_riptide_interrupt, SA_INTERRUPT | SA_SHIRQ,
+	    (pci->irq, snd_riptide_interrupt, IRQF_DISABLED | IRQF_SHARED,
 	     "RIPTIDE", chip)) {
 		snd_printk(KERN_ERR "Riptide: unable to grab IRQ %d\n",
 			   pci->irq);
Index: linux-2.6.git/sound/pci/rme9652/hdsp.c
===================================================================
--- linux-2.6.git.orig/sound/pci/rme9652/hdsp.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/rme9652/hdsp.c	2006-07-01 16:51:50.000000000 +0200
@@ -4912,7 +4912,7 @@ static int __devinit snd_hdsp_create(str
 		return -EBUSY;
 	}
 
-	if (request_irq(pci->irq, snd_hdsp_interrupt, SA_INTERRUPT|SA_SHIRQ, "hdsp", (void *)hdsp)) {
+	if (request_irq(pci->irq, snd_hdsp_interrupt, IRQF_DISABLED|IRQF_SHARED, "hdsp", (void *)hdsp)) {
 		snd_printk(KERN_ERR "Hammerfall-DSP: unable to use IRQ %d\n", pci->irq);
 		return -EBUSY;
 	}
Index: linux-2.6.git/sound/pci/rme9652/hdspm.c
===================================================================
--- linux-2.6.git.orig/sound/pci/rme9652/hdspm.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/rme9652/hdspm.c	2006-07-01 16:51:50.000000000 +0200
@@ -3497,7 +3497,7 @@ static int __devinit snd_hdspm_create(st
 		   hdspm->port + io_extent - 1);
 
 	if (request_irq(pci->irq, snd_hdspm_interrupt,
-			SA_INTERRUPT | SA_SHIRQ, "hdspm",
+			IRQF_DISABLED | IRQF_SHARED, "hdspm",
 			(void *) hdspm)) {
 		snd_printk(KERN_ERR "HDSPM: unable to use IRQ %d\n", pci->irq);
 		return -EBUSY;
Index: linux-2.6.git/sound/pci/rme9652/rme9652.c
===================================================================
--- linux-2.6.git.orig/sound/pci/rme9652/rme9652.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/rme9652/rme9652.c	2006-07-01 16:51:50.000000000 +0200
@@ -2500,7 +2500,7 @@ static int __devinit snd_rme9652_create(
 		return -EBUSY;
 	}
 	
-	if (request_irq(pci->irq, snd_rme9652_interrupt, SA_INTERRUPT|SA_SHIRQ, "rme9652", (void *)rme9652)) {
+	if (request_irq(pci->irq, snd_rme9652_interrupt, IRQF_DISABLED|IRQF_SHARED, "rme9652", (void *)rme9652)) {
 		snd_printk(KERN_ERR "unable to request IRQ %d\n", pci->irq);
 		return -EBUSY;
 	}
Index: linux-2.6.git/sound/pci/trident/trident_main.c
===================================================================
--- linux-2.6.git.orig/sound/pci/trident/trident_main.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/trident/trident_main.c	2006-07-01 16:51:50.000000000 +0200
@@ -3599,7 +3599,7 @@ int __devinit snd_trident_create(struct 
 	}
 	trident->port = pci_resource_start(pci, 0);
 
-	if (request_irq(pci->irq, snd_trident_interrupt, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_trident_interrupt, IRQF_DISABLED|IRQF_SHARED,
 			"Trident Audio", trident)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_trident_free(trident);
Index: linux-2.6.git/sound/pci/vx222/vx222.c
===================================================================
--- linux-2.6.git.orig/sound/pci/vx222/vx222.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/vx222/vx222.c	2006-07-01 16:51:50.000000000 +0200
@@ -162,7 +162,7 @@ static int __devinit snd_vx222_create(st
 	for (i = 0; i < 2; i++)
 		vx->port[i] = pci_resource_start(pci, i + 1);
 
-	if (request_irq(pci->irq, snd_vx_irq_handler, SA_INTERRUPT|SA_SHIRQ,
+	if (request_irq(pci->irq, snd_vx_irq_handler, IRQF_DISABLED|IRQF_SHARED,
 			CARD_NAME, (void *) chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_vx222_free(chip);
Index: linux-2.6.git/sound/pci/ymfpci/ymfpci_main.c
===================================================================
--- linux-2.6.git.orig/sound/pci/ymfpci/ymfpci_main.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/pci/ymfpci/ymfpci_main.c	2006-07-01 16:51:50.000000000 +0200
@@ -2288,7 +2288,7 @@ int __devinit snd_ymfpci_create(struct s
 		snd_ymfpci_free(chip);
 		return -EBUSY;
 	}
-	if (request_irq(pci->irq, snd_ymfpci_interrupt, SA_INTERRUPT|SA_SHIRQ, "YMFPCI", (void *) chip)) {
+	if (request_irq(pci->irq, snd_ymfpci_interrupt, IRQF_DISABLED|IRQF_SHARED, "YMFPCI", (void *) chip)) {
 		snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
 		snd_ymfpci_free(chip);
 		return -EBUSY;
Index: linux-2.6.git/sound/sparc/amd7930.c
===================================================================
--- linux-2.6.git.orig/sound/sparc/amd7930.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/sparc/amd7930.c	2006-07-01 16:51:50.000000000 +0200
@@ -973,7 +973,7 @@ static int __init snd_amd7930_create(str
 	amd7930_idle(amd);
 
 	if (request_irq(irq, snd_amd7930_interrupt,
-			SA_INTERRUPT | SA_SHIRQ, "amd7930", amd)) {
+			IRQF_DISABLED | IRQF_SHARED, "amd7930", amd)) {
 		snd_printk("amd7930-%d: Unable to grab IRQ %d\n",
 			   dev, irq);
 		snd_amd7930_free(amd);
Index: linux-2.6.git/sound/sparc/cs4231.c
===================================================================
--- linux-2.6.git.orig/sound/sparc/cs4231.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/sparc/cs4231.c	2006-07-01 16:51:50.000000000 +0200
@@ -2001,7 +2001,7 @@ static int __init snd_cs4231_sbus_create
 	chip->c_dma.preallocate = sbus_dma_preallocate;
 
 	if (request_irq(sdev->irqs[0], snd_cs4231_sbus_interrupt,
-			SA_SHIRQ, "cs4231", chip)) {
+			IRQF_SHARED, "cs4231", chip)) {
 		snd_printdd("cs4231-%d: Unable to grab SBUS IRQ %d\n",
 			    dev, sdev->irqs[0]);
 		snd_cs4231_sbus_free(chip);
Index: linux-2.6.git/sound/sparc/dbri.c
===================================================================
--- linux-2.6.git.orig/sound/sparc/dbri.c	2006-07-01 16:51:09.000000000 +0200
+++ linux-2.6.git/sound/sparc/dbri.c	2006-07-01 16:51:50.000000000 +0200
@@ -2569,7 +2569,7 @@ static int __init snd_dbri_create(struct
 		return -EIO;
 	}
 
-	err = request_irq(dbri->irq, snd_dbri_interrupt, SA_SHIRQ,
+	err = request_irq(dbri->irq, snd_dbri_interrupt, IRQF_SHARED,
 			  "DBRI audio", dbri);
 	if (err) {
 		printk(KERN_ERR "DBRI: Can't get irq %d\n", dbri->irq);

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* [RFC][patch 44/44] Documentation: Use the new IRQF_ constansts
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (42 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 43/44] sound: " Thomas Gleixner
@ 2006-07-01 14:55 ` Thomas Gleixner
  2006-07-01 23:43 ` [RFC][patch 00/44] Consolidate irq_action flags Andrew Morton
  44 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-01 14:55 UTC (permalink / raw)
  To: LKML; +Cc: Andrew Morton, Ingo Molnar, Benjamin Herrenschmidt, David Miller

[-- Attachment #1: irqflags-Documentation.patch --]
[-- Type: text/plain, Size: 4043 bytes --]


Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

 Documentation/DocBook/videobook.tmpl                         |    2 +-
 Documentation/pci.txt                                        |    2 +-
 Documentation/scsi/tmscsim.txt                               |    2 +-
 Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl |    6 +++---
 4 files changed, 6 insertions(+), 6 deletions(-)

Index: linux-2.6.git/Documentation/pci.txt
===================================================================
--- linux-2.6.git.orig/Documentation/pci.txt	2006-07-01 16:51:06.000000000 +0200
+++ linux-2.6.git/Documentation/pci.txt	2006-07-01 16:51:52.000000000 +0200
@@ -225,7 +225,7 @@ Generic flavors of pci_request_region() 
 Use these for address resources that are not described by "normal" PCI
 interfaces (e.g. BAR).
 
-   All interrupt handlers should be registered with SA_SHIRQ and use the devid
+   All interrupt handlers should be registered with IRQF_SHARED and use the devid
 to map IRQs to devices (remember that all PCI interrupts are shared).
 
 
Index: linux-2.6.git/Documentation/DocBook/videobook.tmpl
===================================================================
--- linux-2.6.git.orig/Documentation/DocBook/videobook.tmpl	2006-07-01 16:51:06.000000000 +0200
+++ linux-2.6.git/Documentation/DocBook/videobook.tmpl	2006-07-01 16:51:52.000000000 +0200
@@ -976,7 +976,7 @@ static int camera_close(struct video_dev
   <title>Interrupt Handling</title>
   <para>
         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 SA_SHIRQ to indicate a 
+        able to share the interrupt and would have set IRQF_SHARED 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.
Index: linux-2.6.git/Documentation/scsi/tmscsim.txt
===================================================================
--- linux-2.6.git.orig/Documentation/scsi/tmscsim.txt	2006-07-01 16:51:06.000000000 +0200
+++ linux-2.6.git/Documentation/scsi/tmscsim.txt	2006-07-01 16:51:52.000000000 +0200
@@ -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 
-SA_SHIRQ | SA_INTERRUPT.
+IRQF_SHARED | IRQF_DISABLED.
 
 
 3.Features
Index: linux-2.6.git/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
===================================================================
--- linux-2.6.git.orig/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl	2006-07-01 16:51:06.000000000 +0200
+++ linux-2.6.git/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl	2006-07-01 16:51:52.000000000 +0200
@@ -1149,7 +1149,7 @@
           }
           chip->port = pci_resource_start(pci, 0);
           if (request_irq(pci->irq, snd_mychip_interrupt,
-                          SA_INTERRUPT|SA_SHIRQ, "My Chip", chip)) {
+                          IRQF_DISABLED|IRQF_SHARED, "My Chip", chip)) {
                   printk(KERN_ERR "cannot grab irq %d\n", pci->irq);
                   snd_mychip_free(chip);
                   return -EBUSY;
@@ -1323,7 +1323,7 @@
           <programlisting>
 <![CDATA[
   if (request_irq(pci->irq, snd_mychip_interrupt,
-                  SA_INTERRUPT|SA_SHIRQ, "My Chip", chip)) {
+                  IRQF_DISABLED|IRQF_SHARED, "My Chip", chip)) {
           printk(KERN_ERR "cannot grab irq %d\n", pci->irq);
           snd_mychip_free(chip);
           return -EBUSY;
@@ -1342,7 +1342,7 @@
 
       <para>
       On the PCI bus, the interrupts can be shared. Thus,
-      <constant>SA_SHIRQ</constant> is given as the interrupt flag of
+      <constant>IRQF_SHARED</constant> is given as the interrupt flag of
       <function>request_irq()</function>. 
       </para>
 

--


^ permalink raw reply	[flat|nested] 50+ messages in thread

* Re: [RFC][patch 00/44] Consolidate irq_action flags
  2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
                   ` (43 preceding siblings ...)
  2006-07-01 14:55 ` [RFC][patch 44/44] Documentation: " Thomas Gleixner
@ 2006-07-01 23:43 ` Andrew Morton
  44 siblings, 0 replies; 50+ messages in thread
From: Andrew Morton @ 2006-07-01 23:43 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: linux-kernel, mingo, benh, davem

On Sat, 01 Jul 2006 14:54:18 -0000
Thomas Gleixner <tglx@linutronix.de> wrote:

> The recent interrupt rework introduced bit value conflicts with sparc.
> Instead of introducing new architecture flags mess, move the interrupt
> SA_ flags out of the signal namespace and replace them by interrupt
> related flags.
> 
> This allows to remove the obsolete SA_INTERRUPT flag and clean up
> the bit field values.
> 
> The patch was mostly created by a script, manually fixed up and reviewed.
> Compile tested on various platforms. Boot tested on i386/x86_64
> 

The amount of downstream wreckage from these changes is remarkably small -
I only had to diddle four or five patches and none of the git trees appear
to be affected.  Right now, when the subsystems trees are maximally-merged
is the best time for this sort of thing.


^ permalink raw reply	[flat|nested] 50+ messages in thread

* Re: [RFC][patch 01/44] Consolidate flags for request_irq
  2006-07-01 14:54 ` [RFC][patch 01/44] Consolidate flags for request_irq Thomas Gleixner
@ 2006-07-02  0:49   ` Andrew Morton
  2006-07-02 13:09     ` Thomas Gleixner
  0 siblings, 1 reply; 50+ messages in thread
From: Andrew Morton @ 2006-07-02  0:49 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: linux-kernel, mingo, benh, davem

On Sat, 01 Jul 2006 14:54:19 -0000
Thomas Gleixner <tglx@linutronix.de> wrote:

> Move the interrupt related SA_ flags out of linux/signal.h and rename
> them to IRQF_ . This moves the interrupt related flags out of the signal
> namespace and allows to remove the architecture dependencies.
> 
> SA_INTERRUPT is not needed by userspace and glibc so it can be removed
> safely. The existing SA_ constants are kept for easy transition and will
> be removed after a 6 month grace period.

You seem to have removed SA_PERCPU_IRQ without replacing it.

drivers/char/mmtimer.c: In function `mmtimer_init':
drivers/char/mmtimer.c:690: error: `IRQF_PERCPU' undeclared (first use in this function)
drivers/char/mmtimer.c:690: error: (Each undeclared identifier is reported only once
drivers/char/mmtimer.c:690: error: for each function it appears in.)


^ permalink raw reply	[flat|nested] 50+ messages in thread

* Re: [RFC][patch 01/44] Consolidate flags for request_irq
  2006-07-02  0:49   ` Andrew Morton
@ 2006-07-02 13:09     ` Thomas Gleixner
  0 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-02 13:09 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, mingo, benh, davem

On Sat, 2006-07-01 at 17:49 -0700, Andrew Morton wrote:
> On Sat, 01 Jul 2006 14:54:19 -0000
> Thomas Gleixner <tglx@linutronix.de> wrote:
> 
> > Move the interrupt related SA_ flags out of linux/signal.h and rename
> > them to IRQF_ . This moves the interrupt related flags out of the signal
> > namespace and allows to remove the architecture dependencies.
> > 
> > SA_INTERRUPT is not needed by userspace and glibc so it can be removed
> > safely. The existing SA_ constants are kept for easy transition and will
> > be removed after a 6 month grace period.
> 
> You seem to have removed SA_PERCPU_IRQ without replacing it.
> 
> drivers/char/mmtimer.c: In function `mmtimer_init':
> drivers/char/mmtimer.c:690: error: `IRQF_PERCPU' undeclared (first use in this function)
> drivers/char/mmtimer.c:690: error: (Each undeclared identifier is reported only once
> drivers/char/mmtimer.c:690: error: for each function it appears in.)

should go after

#define IRQF_TIMER             0x00000200
+defibe IRQF_PERCPU		0x00000400

	tglx




^ permalink raw reply	[flat|nested] 50+ messages in thread

* Re: [RFC][patch 09/44] IA64: Use the new IRQF_ constansts
  2006-07-01 14:54 ` [RFC][patch 09/44] IA64: " Thomas Gleixner
@ 2006-07-03 11:36   ` Jes Sorensen
  2006-07-03 11:56     ` Thomas Gleixner
  0 siblings, 1 reply; 50+ messages in thread
From: Jes Sorensen @ 2006-07-03 11:36 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: LKML, Andrew Morton, tony.luck, linux-ia64, torvalds

>>>>> "Thomas" == Thomas Gleixner <tglx@linutronix.de> writes:

Thomas> Use the new IRQF_ constants and remove the SA_INTERRUPT define

Hi Thomas,

You forgot to remove the duplicate define of IRQF_PERCPU from
include/asm-ia64/irq.h when you introduced the one in
include/linux/interrupt.h.

On ia64, without this patch, building Linus' git tree spits out
compile warnings left right and center (harmless ones though).

I checked the ia64 code and I don't see any place that actually relied
on the old define or hardcoded it in asm, but I could be wrong of
course.

It compiles, it boots, Enterprise Ready<tm>!

Linus and/or Tony, please apply.

Cheers,
Jes

Remove duplicate define of IRQF_PERCPU which is now defined in
include/linux/interrupt.h

Signed-off-by: Jes Sorensen <jes@sgi.com>

---
 include/asm-ia64/irq.h |    2 --
 1 file changed, 2 deletions(-)

Index: linux-2.6/include/asm-ia64/irq.h
===================================================================
--- linux-2.6.orig/include/asm-ia64/irq.h
+++ linux-2.6/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)
 {

^ permalink raw reply	[flat|nested] 50+ messages in thread

* Re: [RFC][patch 09/44] IA64: Use the new IRQF_ constansts
  2006-07-03 11:36   ` Jes Sorensen
@ 2006-07-03 11:56     ` Thomas Gleixner
  0 siblings, 0 replies; 50+ messages in thread
From: Thomas Gleixner @ 2006-07-03 11:56 UTC (permalink / raw)
  To: Jes Sorensen; +Cc: LKML, Andrew Morton, tony.luck, linux-ia64, torvalds

On Mon, 2006-07-03 at 07:36 -0400, Jes Sorensen wrote:
> >>>>> "Thomas" == Thomas Gleixner <tglx@linutronix.de> writes:
> 
> Thomas> Use the new IRQF_ constants and remove the SA_INTERRUPT define
> 
> Hi Thomas,
> 
> You forgot to remove the duplicate define of IRQF_PERCPU from
> include/asm-ia64/irq.h when you introduced the one in
> include/linux/interrupt.h.
> 
> On ia64, without this patch, building Linus' git tree spits out
> compile warnings left right and center (harmless ones though).
> 
> I checked the ia64 code and I don't see any place that actually relied
> on the old define or hardcoded it in asm, but I could be wrong of
> course.
> 
> It compiles, it boots, Enterprise Ready<tm>!

Andrew sent a fix to Linus already.
	
	tglx



^ permalink raw reply	[flat|nested] 50+ messages in thread

end of thread, other threads:[~2006-07-03 11:54 UTC | newest]

Thread overview: 50+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-07-01 14:54 [RFC][patch 00/44] Consolidate irq_action flags Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 01/44] Consolidate flags for request_irq Thomas Gleixner
2006-07-02  0:49   ` Andrew Morton
2006-07-02 13:09     ` Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 02/44] ALPHA: Use the new IRQF_ constansts Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 03/44] ARM26: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 04/44] ARM: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 05/44] CHRIS: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 06/44] FRV: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 07/44] H8300: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 08/44] I386: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 09/44] IA64: " Thomas Gleixner
2006-07-03 11:36   ` Jes Sorensen
2006-07-03 11:56     ` Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 10/44] M32R: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 11/44] M68KNOMMU: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 12/44] M68K: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 13/44] MIPS: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 14/44] PARISC: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 15/44] POWERPC: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 16/44] PPC: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 17/44] S390: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 18/44] SH64: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 19/44] SH: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 20/44] SPARC64: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 21/44] SPARC: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 22/44] UM: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 23/44] V850: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 24/44] x86_64: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 25/44] XTENSA: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 26/44] generic irq: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 27/44] drivers/block " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 28/44] drivers/char: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 29/44] drivers/drm: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 30/44] ide: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 31/44] firewire: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 32/44] isdn: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 33/44] media: " Thomas Gleixner
2006-07-01 14:54 ` [RFC][patch 34/44] misc drivers: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 35/44] drivers/net: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 36/44] PARISC: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 37/44] pci: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 38/44] rio: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 39/44] scsi: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 40/44] serial: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 41/44] usb: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 42/44] video: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 43/44] sound: " Thomas Gleixner
2006-07-01 14:55 ` [RFC][patch 44/44] Documentation: " Thomas Gleixner
2006-07-01 23:43 ` [RFC][patch 00/44] Consolidate irq_action flags Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).