Hi,
I have a question about EDMA behavior when McASP Unexpected Frame Sync Error happens.
Let's assume McASP is working with EDMA and McASP Unexpected Frame Sync Error happens on McASP Rx port.
According to TRM, there is two possible scenarios in McASP Frame Sync Error. That is "Early" and "Late".
===================================
1. Early: An early unexpected frame sync occurs when the McASP is in the process of completing the
current frame and a new frame sync is detected (not including overlap that occurs due to a 1 or 2 bit
frame sync delay). When an early unexpected frame sync occurs:
• Error interrupt flag is set (XSYNCERR, if an unexpected transmit frame sync occurs; RSYNCERR,
if an unexpected receive frame sync occurs).
• Current frame is not resynchronized. The number of bits in the current frame is completed. The
next frame sync, which occurs after the current frame is completed, will be resynchronized.
2. Late: A late unexpected frame sync occurs when there is a gap or delay between the last bit of the
previous frame and the first bit of the next frame. When a late unexpected frame sync occurs (as soon
as the gap is detected):
• Error interrupt flag is set (XSYNCERR, if an unexpected transmit frame sync occurs; RSYNCERR,
if an unexpected receive frame sync occurs).
• Resynchronization occurs upon the arrival of the next frame sync.
====================================
My understanding is,
1. Early case : EDMA works for the errorous frame. The transferred data from McASP port can have invalid data.
2. Late case : EDMA does not work for the errorous frame. EDMA/McASP discards the current frame and EDMA/McASP starts to work with next frame sync.
Is my understanding correct ?
Best Regards,
Kawada