Что-то совсем странное... Зачем DMA останавливать? Пусть себе складывает в циклический буфер. Если на линии возникла пауза - заглядываем в буфер, не лежит ли там готовый пакет. Если лежит - парсим, если пакет еще не полностью принят - ждем дальше. На маловероятный случай, что два пакета пришли вообще без паузы между ними - есть прерывание от DMA по заполнению буфера.
Не надо делать мне как лучше, оставьте мне как хорошо