Subject: Re: linux-next: origin tree build failure

From: Linus Torvalds <[email-masked]>
Date: Tue, 14 Oct 2008 17:34:57 -0700 (PDT)

On Wed, 15 Oct 2008, Mark Brown wrote:
>
> That would be people on the ARM list.  Unless I misremember I first
> heard about using NO_IRQ from the ARM list in connection with another
> (much less ARM-specific) driver only within the past six months.

ARM should just do

	#define NO_IRQ (0)

and be done with it. It's what powerpc did long ago. That allows old 
broken drivers to work, and doesn't require new drivers to introduce more 
NO_IRQ insanity.

If there is a "hardware irq 0", either it can be special (eg some 
system-only irq not used by any drivers) or the irq numbers can/must be 
remapped.

ARM already converted to the generic irq layer, and there are actually 
parts of that that know that irq 0 has special meaning. Like the 
autoprobing and spurious irq handling. Of course, ARM may not care, and 
the generic code is generally trying to avoid any assumptions, but it's 
still true that all generic _drivers_ do the whole "if (irq)" thing.

Yeah, yeah, we've let NO_IRQ poison some subsystems (like IDE and 
apparently parts of i2c), but that was a mistake.

		Linus