I am using the TMS320C6745, connected to an FPGA that is providing 20 MHz main clock and 10 MHz clocks to the MCASP0.
I have created a secondary bootloader that boots from external serial flash via the ROM boot.
1. My secondary boot loader waits for 10 second for any serial comms (used to load new application)
2. then proceeds to load my application from external serial flash (starting at page 1) into L2 RAM.
3. Completes loading the application by reading the jump and close command and branching to applications c_int00 address.
My application is using the MCASP to drive 2 DACs on MCASP1 and read 10 ADC from MCASP0, both using EDMA.
The problem is that, when the secondary bootloader loads my application, the MCASP0 fails to generate receive events for the DMA.
I know that my application code works correctly because I can run it in the debugger and everything works as intended. It seems to be related to the difference between a POR initialization of the MCASP vs a branch to c_int00.
I know that my secondary bootloader is coping the code correctly, because I have done a memory compare between the image that the secondary bootloader loaded, and the image the debugger loaded.
Does anyone have any thoughts or ideas especially relating to the initialization of the part after the secondary bootloader is finished?