From: David S. Miller Date: Tue, 14 Oct 2003 10:15:01 +0000 (-0700) Subject: [SPARC]: Fix IRQ op build problems. X-Git-Tag: v2.6.0-test8~5^2~5^2~1^2~1 X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=5901d0db4bea7e58811e75692071845d18d944b5;p=history.git [SPARC]: Fix IRQ op build problems. 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. --- diff --git a/include/asm-sparc/irq.h b/include/asm-sparc/irq.h index c1d81aaf072a..5423905ffb40 100644 --- a/include/asm-sparc/irq.h +++ b/include/asm-sparc/irq.h @@ -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 *),