Messages in this thread | | | Subject | Re: USE_ELCR_TRIGGER_LEVEL removed in 2.2.6 -> linux broken for HP-XU SMP | Date | Thu, 20 May 1999 09:21:31 -0400 | From | James Bottomley <> |
| |
hubert.tonneau@easynet.fr said: > I bet the final good setting for determining the kind (edge or level > trigger) of interrupts is the following:
> If the SMP box has no interrupts table in the Bios and the ELCR > register value is not the one of an empty io port, then rely on it.
> In other words, use the behaviour given by setting > USE_ELCR_TRIGGER_LEVEL in 2.2.5 if and only if both the Bios > interrupts table is empty and the ELCR register value is not the one > of an empty io port.
> Please notice that during the 2.1.x serie, the fact that the Bios > table was empty has not been used as a way to determine if we should > rely on ELCR, and it was probably the missing point.
> PS: You must not rely on the kind of bus because my box is ISA+PCI, no > EISA, > yet has a valid ELCR register.
I presume you have an MPC default type 5 motherboard.
The MP-1.4 specs are largely silent on what you are supposed to do in this situation (which is why HP implemented an ELCR I suppose). I'm really loth to have the general case rely on a value returned from a register that isn't there.
As I see it, there are two possibilities for handling this:
1) code an exception in the IO-APIC setup that recognises the board from it's id strings (if it provides them anywhere) and read the ELCR in this special case.
2) PCI interrupts are by spec defined to be level in this situation, so put a hook into the PCI code for informing the IO-APIC code when it finally locates an interrupt. If we find this interrupt on an ISA bus, we set it to level instead of edge.
I think it's going to turn out that your board won't have an easy identification string, so 2) is probably the correct way to go. However, I'd like the PCI people to comment on this before I code it for you to try.
James
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |