Re: [patch] x86 supports NO_IRQ convention

From: Benjamin Herrenschmidt
Date: Mon Jun 23 2008 - 06:43:23 EST


On Sun, 2008-06-22 at 19:53 -0700, David Brownell wrote:
> Hmm, x86 doesn't seem to support the NO_IRQ convention. This means
> that portable code can't use it. Which in turn means that there's
> no portable way for drivers to know whether they have been handed a
> valid IRQ number (zero usually being valid). Double-plus ungood.
>
> Signed-off-by: David Brownell <dbrownell@xxxxxxxxxxxxxxxxxxxxx>
> ---
> I suspect this has been discussed before, but I can't find any
> written resolution ...
>
> include/asm-x86/irq.h | 4 ++++
> 1 file changed, 4 insertions(+)
>
> --- a/include/asm-x86/irq.h 2008-06-22 16:36:43.000000000 -0700
> +++ b/include/asm-x86/irq.h 2008-06-22 16:37:06.000000000 -0700
> @@ -3,3 +3,7 @@
> #else
> # include "irq_64.h"
> #endif
> +
> +#ifndef NO_IRQ
> +#define NO_IRQ ((unsigned int)(-1))
> +#endif

NO_IRQ on x86 is 0

In fact, we explicitely changed powerpc to do the same :-) (It became
easy after I made all linux irqs be virtual, and dynamically mapped to
physical numbers).

I think Linus wants everybody to follow...

Cheers,
Ben.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/