I am using McASp port of DM648 and i am seeing that some data is lost while receiving data via McASP.
4 serializers of the McASP are used and I am using DMA to tranfer that data(channel 15) and have linked 7 DMA channels to service the McASP receive event.All the links are loaded with same param sets.Each link will tranfser 9216 bytes of data for each serializer from McASP receive register to DDR and then the next link is reloaded.The data is lost randomly but it is exactly 9216 bytes meaning one of the link is missed.
Following are the configuration i used.
#define RCV_ACNT 4 /* No of bytes in an Array */
#define RCV_BCNT 4 /* No of arrays in a frame */
#define RCV_CCNT 2304 /* No of frame to be transferred in one link */
#define RCV_SRC_BIDX 4 /* Source Index between two arrays */
#define RCV_DST_BIDX 9216 /* Destination Index between two arrays */
#define RCV_SRC_CIDX 0 /* Source Index between two frames */
#define RCV_DST_CIDX 4 /* Destination Index between two frames */
Can anybody throw light on why 1 receive link is missed.