EP93xx FREE-RTOS and VIC interrupts

tommessum wrote on Friday, October 01, 2010:

Anybody know of a freeRTOS implementation for the Cirrus EP93xx chip?

I am trying to keep the basic set of interrupt functions used in the original ARM port used for other devices.

This requires a direct vectored jump to a program memory location held in the VIC address register when an IRQ arives. In many ARMs this is simply done by including a “ldr pc,” in the IRQ entry of the vector interrupt table (at RAM zero). But for some reason the EP93xx doesn’t seem to implement this, at least it doesn’t work here :frowning:

Is there a way around it? (without modifying the RTOS code) i.e. how can I implement a jump to the contents of the VIC1 vector register (at 0x800B0030) without using any other CPU registers, or saving anything on the stack?

davedoors wrote on Friday, October 01, 2010:

Sorry, never heard of an EP93xx. Could just just jump to a common interrupt entry point that inspects the necessary VIC registers to see where to jump to next?