]> git.neil.brown.name Git - history.git/commitdiff
[SPARC]: Fix IRQ op build problems.
authorDavid S. Miller <davem@nuts.ninka.net>
Tue, 14 Oct 2003 10:15:01 +0000 (03:15 -0700)
committerDavid S. Miller <davem@nuts.ninka.net>
Tue, 14 Oct 2003 10:15:01 +0000 (03:15 -0700)
Defining disable_irq et al. as macros is asking for trouble
especially since some parts of the kernel uses structures
with members having these same names.  So use inline functions
instead.

include/asm-sparc/irq.h

index c1d81aaf072a84646e662e6c5c466ea89ca92747..5423905ffb401106a620d7746e09a328e6417e97 100644 (file)
@@ -39,14 +39,45 @@ BTFIXUPDEF_CALL(void, clear_clock_irq, void)
 BTFIXUPDEF_CALL(void, clear_profile_irq, int)
 BTFIXUPDEF_CALL(void, load_profile_irq, int, unsigned int)
 
-#define disable_irq_nosync disable_irq
-#define disable_irq(irq) BTFIXUP_CALL(disable_irq)(irq)
-#define enable_irq(irq) BTFIXUP_CALL(enable_irq)(irq)
-#define disable_pil_irq(irq) BTFIXUP_CALL(disable_pil_irq)(irq)
-#define enable_pil_irq(irq) BTFIXUP_CALL(enable_pil_irq)(irq)
-#define clear_clock_irq() BTFIXUP_CALL(clear_clock_irq)()
-#define clear_profile_irq(cpu) BTFIXUP_CALL(clear_profile_irq)(cpu)
-#define load_profile_irq(cpu,limit) BTFIXUP_CALL(load_profile_irq)(cpu,limit)
+static inline void disable_irq_nosync(unsigned int irq)
+{
+       BTFIXUP_CALL(disable_irq)(irq);
+}
+
+static inline void disable_irq(unsigned int irq)
+{
+       BTFIXUP_CALL(disable_irq)(irq);
+}
+
+static inline void enable_irq(unsigned int irq)
+{
+       BTFIXUP_CALL(enable_irq)(irq);
+}
+
+static inline void disable_pil_irq(unsigned int irq)
+{
+       BTFIXUP_CALL(disable_pil_irq)(irq);
+}
+
+static inline void enable_pil_irq(unsigned int irq)
+{
+       BTFIXUP_CALL(enable_pil_irq)(irq);
+}
+
+static inline void clear_clock_irq(void)
+{
+       BTFIXUP_CALL(clear_clock_irq)();
+}
+
+static inline void clear_profile_irq(int irq)
+{
+       BTFIXUP_CALL(clear_profile_irq)(irq);
+}
+
+static inline void load_profile_irq(int cpu, int limit)
+{
+       BTFIXUP_CALL(load_profile_irq)(cpu, limit);
+}
 
 extern void (*sparc_init_timers)(irqreturn_t (*lvl10_irq)(int, void *, struct pt_regs *));
 extern void claim_ticker14(irqreturn_t (*irq_handler)(int, void *, struct pt_regs *),