UART performance problems

  • Hello,


    some processors UART interfaces have a very small HW Rx buffer size (Vybrid, imx6) in some cases only eight bytes! If the CPU is under heavy load and you additionally just receive some serial data there may bytes lost (call "ClearCommError" to get extented informations).
    Enable DMA for UART prevents this behavior. Refer the Device Driver Document to enable DMA for UART.


    In general it is done by:
    reg open \Drivers\builtin\<Board Name>\<UARTx>
    reg set value RXDMAEnable dword 1
    reg save
    reboot

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Under Linux, the status is the following:


    - fsvybrid: DMA available, but not active by default
    - fsimx6, Kernel 3.0.35: DMA available, but not active by default
    - fsimx6, fsimx6sx, fsimx6ul, Kernel 3.14.x or newer: DMA active by default, but not on the port used for console


    Your F&S Support Team

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.