blackfin: Fix using gd->baudrate before setting its value
authorAxel Lin <axel.lin@ingics.com>
Mon, 1 Jul 2013 05:16:17 +0000 (13:16 +0800)
committerSonic Zhang <sonic.zhang@analog.com>
Wed, 31 Jul 2013 08:56:04 +0000 (16:56 +0800)
Current code uses gd->baudrate before setting its value.
Besides, I got below build warning which is introduced by
commit ddb5c5be "blackfin: add baudrate to bdinfo".

board.c:235:3: warning: passing argument 1 of 'simple_strtoul' makes pointer from integer without a cast [enabled by default]
include/vsprintf.h:27:7: note: expected 'const char *' but argument is of type 'unsigned int'

This patch ensures we get the baudrate setting before using it.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
arch/blackfin/lib/board.c

index 10223bdb791dfe7bd1ca55244f28577a16e6beeb..17d1f468dd3a53b0394d4beebbe52f000f41a811 100644 (file)
@@ -67,6 +67,7 @@ static int display_banner(void)
 static int init_baudrate(void)
 {
        gd->baudrate = getenv_ulong("baudrate", 10, CONFIG_BAUDRATE);
+       gd->bd->bi_baudrate = gd->baudrate;
        return 0;
 }
 
@@ -235,8 +236,6 @@ static int global_board_data_init(void)
        bd->bi_sclk = get_sclk();
        bd->bi_memstart = CONFIG_SYS_SDRAM_BASE;
        bd->bi_memsize = CONFIG_SYS_MAX_RAM_SIZE;
-       bd->bi_baudrate = (gd->baudrate > 0)
-               ? simple_strtoul(gd->baudrate, NULL, 10) : CONFIG_BAUDRATE;
 
        return 0;
 }