AnsweredAssumed Answered

iMX6: UART refuse to set baud rate to 1 Mbps

Question asked by Maik Brenke on Oct 12, 2017
Latest reply on Oct 25, 2017 by Maik Brenke

Hello,

 

I'am searching for hours to find a solution, but could not find one.

 

I use a Linux based OS built by buildroot.

 

According to the "i.MX 6SoloX Applications Processor Reference Manual" chapter "1.4 Features", all UART interfaces supports up to 4 Mbps.

"Six UARTs operating up to 4.0 Mbps each, …"

 

My problem is that I can not set the baud rate to 1000000 bit per second (1 Mbps).

# stty -F /dev/ttymxc4 1000000
stty: invalid argument '1000000'

 

I also toggled the hardware flow of the interface:

# stty -F /dev/ttymxc4 -crtscts
# stty -F /dev/ttymxc4 1000000
stty: invalid argument '1000000'

 

A C-program to set the baud rate to 1 Mbps runs without any errors but the baud rate goes to '0':

char *portname = "/dev/ttymxc4"

set_interface(fd, B1000000);

 

Result:

# stty -F /dev/ttymxc4

speed 0 baud; line = 0;

 

I also checked the UART clock speed:

# cat /sys/class/tty/ttymxc4/uartcl

80000000

 

What do I need to do to increase the serial baud rate to 1 Mbps?

Outcomes