I wanna use DMA RX and RTO/RX END interrupt to get variable length data.
Code is like below
hosal_uart_init()
hosal_uart_callback_set(HOSAL_UART_RX_CALLBACK, _rx_callback)
hosal_uart_ioctl(HOSAL_UART_MODE_SET, HOSAL_UART_MODE_INT)
hosal_uart_ioctl(HOSAL_UART_DMA_RX_START)
... waiting rx int ...
rx_size = DMA_Channel_TranferSize(uart->dma_rx_chan)
hosal_dma_chan_stop(uart->dma_rx_chan)
// rx_size is always the same of config size in dma_config
The log shows rx int was triggered by UART_INT_RX_FIFO_REQ and the buffer dma was being used had nothing with incoming data.
I wanna use DMA RX and RTO/RX END interrupt to get variable length data.
Code is like below
The log shows rx int was triggered by UART_INT_RX_FIFO_REQ and the buffer dma was being used had nothing with incoming data.
Demo code project here, bl_uart_test.zip