is there info or samples for bare metal interrupt handling?
I am trying to use interrupts on the C66x DSP1 core on the TDA2 (XC5777X CPU BOARD).
I have tried the timer example from the starterware and it configures the timer and interrupt functions, but I get exactly one interrupt. The timer is in auto reload mode and seems to be counting and reloading properly.
I can’t make sense of the interrupt though. In previous C64xx projects I have had a vector.asm file that contained the reset, nmi and 12 vectors for the chip interrupts. On the C66x with the starterware code there is a lot added to configure the interrupt crosspoint and handlers. I’m not sure if it needs the vector.asm or not. When I add the vector.asm it is getting located at 0x00800000 and the ISTP is set to the same. When the first interrupt occurs, it branches to a vector at 0x00800220. The DSP ISR is showing a value of 0x0040 indicating vector 6. With a vector for ISR6, I would expect it to be at 0x00800060.
What I can’t find documented is whether this should dispatch through some predefined function that uses the inth_handler table or whether I should just branch to my handler directly. I "think" the starterware is assuming dsp-bios is running but it is not in this case.
Scott