Messages in this thread | | | Date | Tue, 9 Nov 1999 16:57:18 +0100 (MET) | From | Roman Zippel <> | Subject | Re: linux interrupt handling problem |
| |
Hi,
On Tue, 9 Nov 1999, Richard B. Johnson wrote:
> It works fine without an interrupt controller. It works in the Power PC. > Please look at the dispatch handler in ../arch/ppc/kernel/irq.c.
The ppc has a different interrupt architecture, it has only a single interrupt entry and a single interrupt priority (on/off). In that file there is also a mask_and_ack_irq(irq) _before_ that loop. The m68k cpu is completly different here, it has multiple entries and multiple priorities (0-7) and the acknowledgement needs sometimes also to be done within that loop by the driver, so it doesn't work anymore. The requirement for a sti() in interrupts makes it impossible to utilize these priorities to achieve better interrupt perfomance. What other people sometimes would like to have - the ability to preempt slow interrupts - get we for free implemented in hardware, but we can't use it because of the above requirement. :(
bye, Roman
- 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/
| |