![Freescale Semiconductor i.MX 6DualLite Reference Manual Download Page 285](http://html1.mh-extra.com/html/freescale-semiconductor/i-mx-6duallite/i-mx-6duallite_reference-manual_2330523285.webp)
256 bytes and registers these buffers with the DMA system. DMA transmit buffer size is
fixed at 1024 bytes. The size is limited by the size of the Linux UART transmit buffer
(1024).
The driver requests two DMA channels for the UARTs that need DMA transfer. On a
receive transaction, the driver copies the data from the DMA receive buffer to the TTY
Flip Buffer.
While using DMA to transmit, the driver copies the data from the UART transmit buffer
to the DMA transmit buffer and sends this buffer to the DMA system. The user should
use hardware-driven hardware flow control when using DMA data transfer. For more
information, see the Linux documentation on the serial driver in the kernel source tree.
The low-level driver supports both interrupt-driven software-controlled hardware flow
control and hardware-driven hardware flow control. The hardware flow control method
can be configured using the options provided in the header file. The user has the
capability to de-assert the CTS line using the available IOCTL calls. If the user wishes to
assert the CTS line, then control is transferred back to the receiver, as long as the driver
has been configured to use hardware-driven hardware flow control.
39.2.2 Driver Features
The UART driver supports the following features:
• Baud rates up to 4 Mbps
• Recognizes frame and parity errors only in interrupt-driven mode; does not recognize
these errors in DMA-driven mode
• Sends, receives, and appropriately handles break characters
• Recognizes the modem control signals
• Ignores characters with frame, parity, and break errors if requested to do so
• Implements support for software and hardware flow control (software-controlled and
hardware-controlled)
• Get and set the UART port information; certain flow control count information is not
available in hardware-driven hardware flow control mode
• Implements support for Serial IrDA
• Power management
• Interrupt-driven and DMA-driven data transfer
39.2.3 Source Code Structure
Table below shows the UART driver source files that are available in the directory:
Chapter 39 Universal Asynchronous Receiver/Transmitter (UART) Driver
i.MX 6Solo/6DualLite Linux Reference Manual, Rev. L3.0.35_4.1.0, 09/2013
Freescale Semiconductor, Inc.
285