mpc512x: Fix PSC divisor calculation for baudrate setting
authorStefan Roese <sr@denx.de>
Tue, 2 Jun 2009 14:53:15 +0000 (16:53 +0200)
committerWolfgang Denk <wd@denx.de>
Fri, 12 Jun 2009 18:47:17 +0000 (20:47 +0200)
The wrong input frequency was used in serial_setbrg(). This patch fixes
this by using ips_clk as input frequency for the PSC baudrate generator.

Signed-off-by: Stefan Roese <sr@denx.de>
cpu/mpc512x/serial.c

index 16ce7700f981456f04d8655e6b281cace7a91122..d3ffff9d7efc7cbd306d0b163a58d8a808687b83 100644 (file)
@@ -167,7 +167,7 @@ void serial_setbrg (void)
        volatile psc512x_t *psc = (psc512x_t *) &im->psc[CONFIG_PSC_CONSOLE];
        unsigned long baseclk, div;
 
-       baseclk = (gd->csb_clk + 8) / 16;
+       baseclk = (gd->ips_clk + 8) / 16;
        div = (baseclk + (gd->baudrate / 2)) / gd->baudrate;
 
        out_8(&psc->ctur, (div >> 8) & 0xFF);