Hello, I have encountered an issue with the UART on the IMX6ULL chip, and I would appreciate your help in resolving it. I am using UART5 with both RX and TX configured to use DMA. The ICD is set to 3, which corresponds to 32 frames, IDDMAEN is enabled, RXDMAEN is enabled, ATDMAEN is enabled, and RXTL is set to 16. On the RX signal line, 9 bytes are transmitted, followed by 10 bytes after a 2.5 ms interval. However, the dma_rx_callback function indicates that 19 bytes were received. I was expecting the dma_rx_callback function to be triggered twice, once after receiving the 9 bytes and again after receiving the 10 bytes, as the 2.5 ms interval should trigger the DMA RX interrupt twice. But why is the dma_rx_callback function only executed once?
thanks!
Hello,
Perhaps the problem concerns with the fact, that DMA transfer data in bursts, DMA cannot transfer less data, than burst length. The burst size of half of UART FIFO is good choice.
Regards