I am currently facing challenges in achieving the desired baud rate of 4Mbps on ttyTHS2 for my TX2i Board.I have only managed to reach 1.5Mbps.
I have done below command
dtc -I fs -O dts -o extracted.dts /proc/device-tree
and checked uarta
serial@3100000
clocks = <0x10 0x37 0x10 0x117>; --------updated this also pllc4_out,pllc4_out_mux
clock-names = “serial”, “parent”;
its showing my clocks are updated .
I have tried FDT also
I have tried `by changing clk_parent also
echo pllc4_out > /sys/kernel/debug/clk/uartc/clk_parent
I would greatly appreciate any guidance or insights from the community on how to overcome this limitation and achieve the desired baud rate. Your assistance would be invaluable.
For the use case of high baud rate, we would suggest to enable HW flow control.
Pease connect the RTS of your board to CTS of your UART device , and CTS of your board to RTS of your UART device.
To enable HW flow control, it depends on your application.
Please also share the result of the following command on your board.
# cd /sys/kernel/debug/bpmp/debug/clk/uartc
# grep "" *
Do you have CTS/RTS flow control listed as an option of “Flow control”? CTS/DTS flow control does not technically make anything faster, but what it does do is improve the result of jitter. It also prevents loss of data if one end sends faster than the other consumes what it receives. I know several people on the forums have had more reliability with CTS/RTS flow control (but you have to have the wires connected, and flow control must be enabled at both UARTs).
“You may configure clock rate with 64M for baud rate with 4M-
echo 64000000 > /sys/kernel/debug/bpmp/debug/clk/uartc/rate”
Thank You Kevin,
I want to express my gratitude for your suggestions, which guided us toward a solution. Additionally, I utilized the CP2102 hardware. However, when configured at 4000000Mbps, it appears to be internally capped at 1.5Mbps. This limitation seems to be due to the hardware’s specifications, as indicated in the CP2102 datasheet, which supports only up to 1.5Mbps. Unfortunately, we overlooked this detail before conducting our testing.