Handling of cascaded interrupt controllers

Jeff Domogala jdomogala at acmepacket.com
Thu Aug 26 06:08:58 EST 2004

I have a Marvell GT-64260A based custom board.  The interrupt line out of
the GT is cascaded into a CPLD, which also has 15 other interrupt sources.
The way I handled this situation in VxWorks was to define interrupt vectors
for the CPLD interrupts, minus the one cascaded interrupt from the GT (so 15
interrupt vectors), then use 64 more interrupt vectors for the GT
interrupts.  The cascaded interrupt would then call the GT's normal
interrupt handler to determine the interrupt source.

Is there a way to define two interrupt controller devices in this fashion in
Linux, where a single interrupt from one controller (the CPLD) can somehow
manage multiple interrupts for the other controller (the GT), with all
interrupt sources having unique vectors?  This appears to be identical to a
cascaded pair of 8259 controllers.  Or, do I do something similar to my
VxWorks implementation and create one interrupt controller device with
unique interrupt vectors for all sources except the cascaded CPLD interrupt
for the GT?



** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

More information about the Linuxppc-embedded mailing list