IMX287 AUART DMA Receive

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX287 AUART DMA Receive

659 Views
zhendezhang
Contributor I

Hello,Dear Support

   I am using IMX287 AUART for receive datas. I use DMA mode and set MXS_AUART_PORT_DMA_MODE on.

I set pdesc->cmd.cmd.bits.bytes = 23 forsed but the s->dma_rx_buffer_size is the PAGE_SIZE in function mxs_auart_submit_rx(struct mxs_auart_port *s).Then i send datas to Auart and in function mxs_auart_irq_dma_rx(int irq,void *context) i can receive 4 times which can also seen in function mxs_auart_rx_chars(struct mxs_auart_port *s) the variable count is 23. BUT the fifth i can't read any thing in function mxs_auart_submit_rx(struct mxs_auart_port *s).When i terminate my program i see Unhandled status 0x200400 which means receive fifo overrun INTR.

  I don't know what is the problem.

Do you have any idea? thank you very much.

Labels (1)
0 Kudos
1 Reply

422 Views
igorpadykov
NXP Employee
NXP Employee

Hi zhende

to avoid data loss one can consider hardware flow control described on

Hardware flow (RTS/CTS) on AUARTs on i.MX28 not working. 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos