[U-Boot] [PATCH 1/3] serial: ns16550: drop CONFIG_OMAP1610 from the special case
Masahiro Yamada
yamada.m at jp.panasonic.com
Fri Jul 11 13:29:02 CEST 2014
If CONFIG_OMAP1610 is defined, the code returning the fixed value (26)
is enabled. But this case is covered by the following code.
(CONFIG_SYS_NS16550_CLK + (gd->baudrate * (MODE_X_DIV / 2))) /
(MODE_X_DIV * gd->baudrate)
= (48000000 + (115200 * (16 / 2))) / (16 * 115200)
= 48921600 / 1843200
= 26
The "#ifdef CONFIG_OMAP1610" was added by commit 6f21347d more than
ten years ago. In those days, the divide-and-round was not used.
I guess that is why this weird code was added here.
Signed-off-by: Masahiro Yamada <yamada.m at jp.panasonic.com>
Cc: Tom Rini <trini at ti.com>
Cc: Rishi Bhattacharya <rishi at ti.com>
---
drivers/serial/serial_ns16550.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/serial/serial_ns16550.c b/drivers/serial/serial_ns16550.c
index ba68d46..056ef2a 100644
--- a/drivers/serial/serial_ns16550.c
+++ b/drivers/serial/serial_ns16550.c
@@ -128,12 +128,6 @@ static int calc_divisor (NS16550_t port)
}
port->osc_12m_sel = 0; /* clear if previsouly set */
#endif
-#ifdef CONFIG_OMAP1610
- /* If can't cleanly clock 115200 set div to 1 */
- if ((CONFIG_SYS_NS16550_CLK == 48000000) && (gd->baudrate == 115200)) {
- return (26); /* return 26 for base divisor */
- }
-#endif
#define MODE_X_DIV 16
/* Compute divisor value. Normally, we should simply return:
--
1.9.1
More information about the U-Boot
mailing list