Thank you for the reply.
Let me elaborate my issue,
Following are the SDADC config -
Wrap around mode enabled,
FIFO Threshold 4,
ANCHSEL_WRAP 3,
single ended mode enabled,
DMA is triggered when FIFO gets full.
SW triggered conversion for SDADC
For DMA, the source address is the CDR register and the destination address is an array of size 4.
The idea is to integrate DMA with SDADC, and DMA should store the channel 0 data in first element of an array , channel 1 data in second element of array, channel 2 data in third element and channel 3 data in fourth element of array.As the TCD for the DMA has been configured in that way. The TCD config I shared earlier.
Issue -
** *** DMA replicates the same channel 0 data to all the elements of the array.
As in SDADC the source is the CDR register and the souce offset is 0 according to DMA config,so how can we move the datawords such that
the 1st dataword which belongs to channel 0 gets stored in 1st element of array,2nd dataword which belongs to channel 1 gets stored in 2nd element of array,3rd dataword which belongs to channel 2 gets stored in 3rd element of array,4th dataword which belongs to channel 3 gets stored in 4th element of array
In SDADC DMA takes data from CDR register and copies it to the destination array of 4 elements.As in mpc5777c the SDADC's FIFO architecture is not clearly mentioned.
So, for DMA the source address is that of CDR register with offset 0 so same data gets replicated in the other destination array elements although the channels changes with SW triggering.
The same is not the case with EQADC as the EQADC has its own FIFO architecture and while configuring TCD for DMA offset can be configured as per requirements.
Hoping to get reply soon,
Thank you.