Thanks for your reply.
From what you wrote, it sounds like the problem could be solved in
either of two ways:
- make L4 priorities correspond to PIC priorities - use a specific instead of a non-specific EOI
Can either of these be implemented as a quick fix even if the long-term solution is moving irq ack into the microkernel?
I notice that linux22/arch/l4-i386/kernel/irq.c has:
static const /* prio for irq 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 */ char irq_prio[] = {1, 0,15, 6, 5, 4, 3, 2,14,13,12,11,10, 9, 8, 7};
Can I change this? What to?
My wild guess would be {15,14,13,4,3,2,1,0,12,11,10,9,8,7,6,5} ... but there must be some reason for it being the way it is ...
There was a long discussion about that and it looks like irq acknowledge will move to the micro kernel.
Was this an e-mail discussion accessible to people like myself, or a discussion in the coffee room in TU Dresden?
Edmund