mirror of
https://github.com/ArduPilot/ardupilot.git
synced 2026-10-06 19:00:27 +08:00
this fixes a problem with the automatic DMA disable on DMA contention in UARTs. This fixes issue #14581 the problem was that while tx_dma_enabled was correctly set to false, it would keep looping inside write_pending_bytes_DMA() if the data arrived in the write buffer at a faster rate than it could be sent out, which did happen with a mavlink stream rate of 4Hz. This means it kept using DMA even with tx_dma_enabled set to false. The result was that the automatic flow control code never got a chance to run and we didn't switch back to non-DMA for these low baudrate contended UARTs