From mboxrd@z Thu Jan 1 00:00:00 1970 From: James.Bottomley@HansenPartnership.com (James Bottomley) Date: Mon, 05 Dec 2011 13:19:14 -0600 Subject: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver In-Reply-To: <20111205184522.316598de@lxorguk.ukuu.org.uk> References: <20111110162859.GA7088@oksana.dev.rtsoft.ru> <20111202192618.GC3037@localhost.localdomain> <1322867573.11728.22.camel@pasglop> <20111205161157.GA27550@localhost.localdomain> <20111205180253.GB29812@localhost.localdomain> <20111205184522.316598de@lxorguk.ukuu.org.uk> Message-ID: <1323112754.7213.49.camel@dabdike.int.hansenpartnership.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Mon, 2011-12-05 at 18:45 +0000, Alan Cox wrote: > > But as you illustrated, there is a large number of drivers that already > > assume no IRQ is < 0, even if they don't use any IRQ #0 themselves. > > That is a much bigger problem to fix. > > And a much larger number assuming the reverse is true which are hiding > potential bugs on ARM. > > Looking at the serial stuff the best checks appear to be looking at > "irq", "-1" and NO_IRQ. > > For migration stuff that's doing broken things like > > if (irq < 0) > > can be changed to > > if (irq <= 0) > > and that can be done before NO_IRQ itself is nailed on ARM and PA-RISC. To be honest, we don't care very much. Parisc interrupts are cascading and mostly software assigned (except our EIEM which we keep internal). We use a base offset at 16 or 64 (depending on GSC presence or not) so IRQs 0-15 aren't legal on parisc either (we frob some of the hard coded ISA interrupts on the WAX eisa bus). We use NO_IRQ as an IRQ assignment error return and that's about it (and that error shouldn't ever really occur). James