Currently it looks like there is only UART DMA on the RX line.
We were trying to implement a "fast" file transfer via UART to a UART to Ethernet bridge and discovered that we were running into CPU usage issues. It looks to us that only the UART RX makes use of DMA. It should be a lot more computationally efficient to make use of the UART TX DMA as well for sending of large files.
Perhaps @dagar and @davids5 know more about the background working of the NuttX UART sending.
@bkueng @davids5
The issue is the DMA on the stm32 is to make up for a lack of RX FIFO in HW.
First Question is:If there are HW DMA resources available.
Then adding the same for the TX side will help to a point. But the real win is streaming DMA. This is only partially (incomplete) in Nuttx and would need some significant development effort.
Upstream NuttX pull request (that's stalled). https://bitbucket.org/nuttx/nuttx/pull-requests/858
@dagar I told Greg it is on my todo list during the H7 port. However we will just do the circular mode.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Go away
Seriously, we can't all waste our time yelling at a bot.
@julianoes SURE WE CAN :-)
F7 is in test now.
Up-streamed
Most helpful comment
F7 is in test now.