Part Number:AM5728
Tool/software: Code Composer Studio
Hello,
I am working on a Sitara AM572x industrial EVM and I am developing a UART/DMA based communication channel between two different processor EVM. This has been successfully finalized so far. I was able to achieve my goals via enhancing the TI example project 'UART_BasicExample_idkAM572x_DMA_armTestproject'. Rahul helped me a lot in the past regarding this topic.
Afterwards I copied my code from the 'UART_BasicExample_idkAM572x_DMA_armTestproject' into another project, which is the project of the device that we are developing. This new project is derived from a GPIO example.
When trying to send data via the UART low level drivers, I call at the beginning the function 'UART_initConfig(true)' and this function calls as a result the function 'UartApp_edmaInit()'. I hit a breakpoint inside that function 'UartApp_edmaInit()' , see here:
The next instruction is a DMA library function 'edma3init' and calling this one leads to a termination of the program, see here:
The 'edma3init' function is a pre-compiled library so further debugging with the JTAG is not possible. I verified that the following lines are inside the *.cfg file:
var Edma = xdc.loadPackage ("ti.sdo.edma3.drv.sample");
var drv = xdc.loadPackage ("ti.sdo.edma3.drv");
var rm = xdc.loadPackage ("ti.sdo.edma3.rm");
What can be the root cause that calling 'edma3init' is working on the 'UART_BasicExample_idkAM572x_DMA_armTestproject' but leads to a crash when being called out of our own project?
If there are too many potential causes for this behavior, how can I further debug the behavior and provide more specific information to you?
Kind regards,
Andreas