[PATCH 0/2] bsp/atsam: Merge USART and UART code and add optional Rx DMA

Christian Mauderer christian.mauderer at embedded-brains.de
Thu Jan 13 07:38:05 UTC 2022


Hello,

the UART/USART of the ATSAM doesn't have any FIFO buffer. Therefore
every received character has to be processed before the next one
arrives. In situations with a high interrupt load or during long
interrupt locks, this might not work reliable and the UART/USART can
loose characters.

This patch set first merges the USART and UART code on the ATSAM. The
code was identical except for very few lines. After that it adds an
option to enable a DMA for the Rx path.

The DMA is a limited resource on this chip so I didn't enable the usage
of the DMA by default. It has to be explicitly enabled with an ioctl
call on an opened port. With that existing applications shouldn't note a
difference and applications that have difficult load situations can
enable the DMA.

The problem exists in 5 and 6. I would like to add the patch for both
branches (tickets #4577 and #4578).

Best regards

Christian




More information about the devel mailing list