DMA нормальный до сих пор не умеют делать для периферии например, как часто встречается DMZ для I2C ? А ведь он дрочит на каждый байт прерывание,
или SPI, где встречается DMA умеющий завершать операцию в режиме Slave по CS? Сиди городи огород, на случай если такт из-за сбоя пропадёт.