[U-Boot-Users] [PATCH] IXP: Add full baud-rate support for ixp42x, ixp45x and ixp46x
Wolfgang Denk
wd at denx.de
Sat Dec 8 17:58:09 CET 2007
In message <1197128128-13438-1-git-send-email-plagnioj at jcrosoft.com> you wrote:
> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
>
> diff --git a/cpu/ixp/serial.c b/cpu/ixp/serial.c
> index 2015958..1f13077 100644
> --- a/cpu/ixp/serial.c
> +++ b/cpu/ixp/serial.c
> @@ -31,25 +31,22 @@
> #include <common.h>
> #include <asm/arch/ixp425.h>
>
> +/*
> + * 14.7456 MHz
> + * Baud Rate = --------------
> + * 16 x Divisor
> + */
> +#define SERIAL_CLOCK 921600
> +
> DECLARE_GLOBAL_DATA_PTR;
>
> void serial_setbrg (void)
> {
> unsigned int quot = 0;
> int uart = CFG_IXP425_CONSOLE;
> -
> - if (gd->baudrate == 1200)
> - quot = 192;
> - else if (gd->baudrate == 9600)
> - quot = 96;
> - else if (gd->baudrate == 19200)
> - quot = 48;
> - else if (gd->baudrate == 38400)
> - quot = 24;
> - else if (gd->baudrate == 57600)
> - quot = 16;
> - else if (gd->baudrate == 115200)
> - quot = 8;
> +
> + if(gd->baudrate < SERIAL_CLOCK && SERIAL_CLOCK % gd->baudrate == 0)
> + quot = SERIAL_CLOCK / gd->baudrate;
Is it correct to assume that the old "quot" for 1200 bps was actually
wrong, and you now fix this?
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The trouble with our times is that the future is not what it used to
be. - Paul Valery
More information about the U-Boot
mailing list