PowerPC shared ISA IRQ support is broken
The PowerPC shared ISA IRQ management in i8259s.c
is broken. It fails to handle:
-
Interrupt acknowledgements for the slave controller when the master has a lower priority pending interrupt acknowledge the slave and the master controllers
-
The nesting support to suspend and resume an interrupt does not correctly handle the enable/disable
-
The initialise of an interrupt does not handle any pending request
-
Locks up when using with the IRQ server which is executing the handler in a task context
All these issues have been fixed in the i386
BSP however the code between is not shared as the i386
BSP has BSP specific IRQ management code as well.