Иногда теряются данные в DMA с McBSP. Это обнаруживается как сползание каналов в принимаемых данных. Потеря данных зависит от оптимизации кода (Debug/Release), приоритетов и других глупостей. DMA работает в AUTOINIT и REPEAT. В прерывании по концу блока дожидаюсь ENDPROG == 0, пишу адрес и ставлю ENDPROG = 1. Буфера данных расположены в отдельных блоках SARAM к которым процессор вообще не обращается (пока). В системе работают полностью синхронно 2 McBSP (на одних и тех-же клоках и фреймах) и 4 DMA. Соответственно события передатчиков и приемников происходят одновременно. Похоже что это и создает проблему попадающую под Errata: McBSP May Not Generate a Receive Event to DMA When Data Gets Copied From RSR to DRR.