forked from Mirrors/opensbi
lib: utils/serial: Round UART8250 baud rate divisor to nearest integer
Previously, it was rounded down and that gives suboptimal results when non-standard clock sources or baud rates are used. Signed-off-by: Jakub Luzny <jakub.luzny@codasip.com> Reviewed-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
@@ -101,7 +101,7 @@ int uart8250_init(unsigned long base, u32 in_freq, u32 baudrate, u32 reg_shift,
|
|||||||
uart8250_in_freq = in_freq;
|
uart8250_in_freq = in_freq;
|
||||||
uart8250_baudrate = baudrate;
|
uart8250_baudrate = baudrate;
|
||||||
|
|
||||||
bdiv = uart8250_in_freq / (16 * uart8250_baudrate);
|
bdiv = (uart8250_in_freq + 8 * uart8250_baudrate) / (16 * uart8250_baudrate);
|
||||||
|
|
||||||
/* Disable all interrupts */
|
/* Disable all interrupts */
|
||||||
set_reg(UART_IER_OFFSET, 0x00);
|
set_reg(UART_IER_OFFSET, 0x00);
|
||||||
|
Reference in New Issue
Block a user