serial: ns16550: drop CONFIG_OMAP1610 from the special case
authorMasahiro Yamada <yamada.m@jp.panasonic.com>
Fri, 11 Jul 2014 11:29:02 +0000 (20:29 +0900)
committerTom Rini <trini@ti.com>
Tue, 22 Jul 2014 11:44:25 +0000 (07:44 -0400)
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@jp.panasonic.com>
Cc: Tom Rini <trini@ti.com>
Cc: Rishi Bhattacharya <rishi@ti.com>
drivers/serial/serial_ns16550.c

index ba68d46948033faf84974008db412a9a3c1bce3e..056ef2a9a133921fc3b5d7e34dfc8eeb46efe305 100644 (file)
@@ -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: