Subject: irq numbering

From: Philip Blundell <[email-masked]>
Date: Tue, 26 Jan 1999 19:18:56 +0100

Having just finished picking up the pieces after the IRQ renumbering 
occasioned by merging the EBSA-285 and NetWinder code, I'd like to propose 
that we do it all over again. :-)

Life for a lot of code would be easier if the 16 ISA irqs (on machines where 
they exist) were in the traditional 0..15 range rather than the 16..24 slot 
they currently occupy.  Network drivers for instance often calculate their 
IRQ numbering based on jumper settings or the contents of an EEPROM.

I think Pat may have brought this up once before and maybe even implemented it 
in the NetWinder line of kernels (I only have a very old 2.0.31 at the moment) 
but it never seemed to get taken up in the 2.1 series.

p.

unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Philip Blundell <[email-masked]>
Date: Tue, 26 Jan 1999 21:01:13 +0100

>My belief here is that there is too much hard coding of magic numbers in the
>Linux kernel, and this is something that as the kernel starts running on more
>and more architectures, it ought to be got away from.

Do you want to modify all the ISA drivers?  Like it or not this assumption 
exists in a lot of places.  For new code yes it's clearly wrong to hardwire 
IRQ numbers based on a specific architecture, but you can make quite a strong 
case for an ISA bus having to have specific IRQ numbering in much the same way 
that we arrange for the ISA I/O ports to map to the 0...0xfff region.  (ISA 
shared memory is obviously another can of worms entirely, but in fact it ought 
to pretty much come out in the wash so long as the ioremap fudge factor of 
0xe0000000 stays.)

The IRQ numbers are currently completely arbitrary and I don't see any 
disadvantage to rearranging them like this.  The fact that it will cause some 
machines to have an IRQ "hole" at 0..15 is scarcely a big deal, and you 
could always put something else there on such architectures.

p.

---

From: Russell King - ARM Linux Admin <[email-masked]>
Date: Tue, 26 Jan 1999 20:05:57 +0000 (GMT)

> that we do it all over again. :-)

I propose not to do it all over again.  It's silly to have IRQs 0 - 15 unused
on machines which don't have ISA interrupts.

> but it never seemed to get taken up in the 2.1 series.

I'm not aware of Pat actually implementing it, since it seems that it's not
required.

Not every architecture is a PC.
   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [email-masked]      --- ---
  | | | |  http://www.arm.linux.org.uk/~rmk/armlinux.html    /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Philip Blundell <[email-masked]>
Date: Tue, 26 Jan 1999 22:56:43 +0100

>Anyway, there needs to be an incentive to cause new code to change.

But we're not talking about new code.  The ISA stuff, which is all this 
matters for, is legacy by definition.

p.

---

From: Russell King - ARM Linux Admin <[email-masked]>
Date: Tue, 26 Jan 1999 22:12:01 +0000 (GMT)

> could always put something else there on such architectures.

Except when there is nothing else to put in there.  Anyway, there needs to be
an incentive to cause new code to change.
   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [email-masked]      --- ---
  | | | |  http://www.arm.linux.org.uk/~rmk/armlinux.html    /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]