From b146df65c7d6d4774a42f5f55d9dd28ed44c0b0c Mon Sep 17 00:00:00 2001 From: Alexander Shiyan Date: Wed, 19 Dec 2018 11:03:56 +0300 Subject: serial: clps711x: Use DIV_ROUND_CLOSEST() for baudrate calculation Signed-off-by: Alexander Shiyan Signed-off-by: Sascha Hauer --- drivers/serial/serial_clps711x.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/serial') diff --git a/drivers/serial/serial_clps711x.c b/drivers/serial/serial_clps711x.c index cd64f0cde0..85a96ed90c 100644 --- a/drivers/serial/serial_clps711x.c +++ b/drivers/serial/serial_clps711x.c @@ -46,7 +46,7 @@ static int clps711x_setbaudrate(struct console_device *cdev, int baudrate) int divisor; u32 tmp; - divisor = (clk_get_rate(s->uart_clk) / 16) / baudrate; + divisor = DIV_ROUND_CLOSEST(clk_get_rate(s->uart_clk), baudrate * 16); tmp = readl(s->base + UBRLCR) & ~UBRLCR_BAUD_MASK; tmp |= divisor - 1; -- cgit v1.2.3