On Thu, Feb 26, 2009 at 14:28, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > Impact: cleanup > > Remove the 2.4 compabiliy cruft > --- linux-2.6-tip.orig/include/linux/irqreturn.h > +++ linux-2.6-tip/include/linux/irqreturn.h > @@ -1,25 +1,17 @@ > -/* irqreturn.h */ > #ifndef _LINUX_IRQRETURN_H > #define _LINUX_IRQRETURN_H > > -/* > - * For 2.4.x compatibility, 2.4.x can use > - * > - * typedef void irqreturn_t; > - * #define IRQ_NONE > - * #define IRQ_HANDLED > - * #define IRQ_RETVAL(x) > - * > - * To mix old-style and new-style irq handler returns. > - * > - * IRQ_NONE means we didn't handle it. > - * IRQ_HANDLED means that we did have a valid interrupt and handled it. > - * IRQ_RETVAL(x) selects on the two depending on x being non-zero (for handled) > +/** > + * enum irqreturn > + * @IRQ_NONE interrupt was not from this device > + * @IRQ_HANDLED interrupt was handled by this device > */ > -typedef int irqreturn_t; > +enum irqreturn { > + IRQ_NONE, > + IRQ_HANDLED, > +}; > > -#define IRQ_NONE (0) > -#define IRQ_HANDLED (1) > -#define IRQ_RETVAL(x) ((x) != 0) > +typedef enum irqreturn irqreturn_t; > +#define IRQ_RETVAL(x) ((x) != IRQ_NONE) JFYI, this causes the following warning in linux-next on m68k: | arch/m68k/kernel/ints.c:231: warning: assignment from incompatible pointer type (cfr. http://kisskb.ellerman.id.au/kisskb/buildresult/271602/) as struct irq_node in arch/m68k/include/asm/irq_mm.h still has a `int (*handler)(int, void *);'. I'll cook a patch, but there may be other users hidden somewhere in arch-specific code... Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html