Virtual IRQs on 82xx

Scott Wood scottwood at freescale.com
Fri Aug 29 02:27:00 EST 2008


Muller, Ralf (NSN - FI/Espoo) wrote:
> I'm using a 8247 custom board and kernl 2.6.21.7

I strongly recommend using something newer.  There was a lot of 82xx 
work going on around that time.

> on the arch/powerpc 
> branch. Here the irq are virtualized  in the irq map functions now I'm 
> facing several problems.
> 
> * I have to manually call irq_create_of_mapping for each CPM interrupt

What's wrong with irq_of_parse_and_map()?

> And the major problem is:
> Now the kernel mixes virtual- and HW-IRQs, e.g. request_irq works with 
> HW_IRQs but the interrupt handler with virtual interrupts, which can't work.

No, request_irq works with virtual interrupts as well.

> For some reason even on a powerpc the first 16 interrupts are reserved 
> for legacy (PC) IRQs,

Right, there are powerpc systems with the same legacy interrupts and the 
same ISA drivers that expect to be able to use ISA IRQs directly as virqs.

> so the easiest mapping HW-IRQ0 -> VIRQ16 a.s.o

The "easiest mapping" is whatever the IRQ subsystem gives you.  This 
isn't something that should be hardcoded.

-Scott


More information about the Linuxppc-embedded mailing list