]> git.dujemihanovic.xyz Git - u-boot.git/commit
serial: mtk: rewrite the setbrg function
authorWeijie Gao <weijie.gao@mediatek.com>
Fri, 5 Mar 2021 02:35:39 +0000 (10:35 +0800)
committerTom Rini <trini@konsulko.com>
Sat, 20 Mar 2021 20:24:27 +0000 (16:24 -0400)
commit0b9f1ae5867df2e71bd4b98d675095a3417426d7
tree7b6192b1ffa1cf8e88bc62a466a93b367b0da832
parente8b98f02708c23fe32e7e26fac56acf9e12a5b8d
serial: mtk: rewrite the setbrg function

Currently the setbrg logic of serial-mtk is messy, and should be rewritten.
Also an option is added to make it possible to use highspeed-3 mode for all
bauds.

The new logic is:
1. If baud clock > 12MHz
   a) If baud <= 115200, highspeed-0 mode will be used (ns16550 compatible)
   b) If baud <= 576000, highspeed-2 mode will be used
   c) any bauds > 576000, highspeed-3 mode will be used
2. If baud clock <= 12MHz
   Forced highspeed-3 mode
   a) If baud <= 115200, calculates the divisor using DIV_ROUND_CLOSEST
   b) any bauds > 115200, the same as 1. c)

Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
drivers/serial/serial_mtk.c