diff options
author | Simon Glass <sjg@chromium.org> | 2014-09-04 22:27:32 (GMT) |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2014-09-10 19:00:01 (GMT) |
commit | fa54eb12431efa845bc5692347ee3a7f39d897bc (patch) | |
tree | aae0a0df851969d36a34df8b18879e03cb6aedfc /drivers/serial/serial_ns16550.c | |
parent | 2a9ae6e02f190e8c83450aab9099a9fb5ec48cc9 (diff) | |
download | u-boot-fsl-qoriq-fa54eb12431efa845bc5692347ee3a7f39d897bc.tar.xz |
dm: serial: Move baud rate calculation to ns16550.c
Move the function that calculates the baud rate divisor into ns16550.c so
it can be used by that file.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/serial/serial_ns16550.c')
-rw-r--r-- | drivers/serial/serial_ns16550.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/serial/serial_ns16550.c b/drivers/serial/serial_ns16550.c index dafeed7..632da4c 100644 --- a/drivers/serial/serial_ns16550.c +++ b/drivers/serial/serial_ns16550.c @@ -81,7 +81,8 @@ static NS16550_t serial_ports[6] = { static int eserial##port##_init(void) \ { \ int clock_divisor; \ - clock_divisor = calc_divisor(serial_ports[port-1]); \ + clock_divisor = ns16550_calc_divisor(serial_ports[port-1], \ + CONFIG_SYS_NS16550_CLK, gd->baudrate); \ NS16550_init(serial_ports[port-1], clock_divisor); \ return 0 ; \ } \ @@ -118,14 +119,6 @@ static NS16550_t serial_ports[6] = { .puts = eserial##port##_puts, \ } -static int calc_divisor (NS16550_t port) -{ - const unsigned int mode_x_div = 16; - - return DIV_ROUND_CLOSEST(CONFIG_SYS_NS16550_CLK, - mode_x_div * gd->baudrate); -} - void _serial_putc(const char c,const int port) { @@ -167,7 +160,8 @@ _serial_setbrg (const int port) { int clock_divisor; - clock_divisor = calc_divisor(PORT); + clock_divisor = ns16550_calc_divisor(PORT, CONFIG_SYS_NS16550_CLK, + gd->baudrate); NS16550_reinit(PORT, clock_divisor); } |