microblaze: board: Use bi_flashstart instead of CONFIG_SYS_FLASH_BASE
authorMichal Simek <monstr@monstr.eu>
Tue, 10 Jul 2012 08:21:25 +0000 (10:21 +0200)
committerMichal Simek <monstr@monstr.eu>
Tue, 11 Sep 2012 07:24:58 +0000 (09:24 +0200)
Prepare for device-tree driven configuration.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
arch/microblaze/lib/board.c

index b450367..674b573 100644 (file)
@@ -136,9 +136,8 @@ void board_init_f(ulong not_used)
 #if defined(CONFIG_CMD_FLASH)
        puts ("Flash: ");
        bd->bi_flashstart = CONFIG_SYS_FLASH_BASE;
-       if (0 < (flash_size = flash_init ())) {
-               bd->bi_flashsize = flash_size;
-               bd->bi_flashoffset = CONFIG_SYS_FLASH_BASE + flash_size;
+       flash_size = flash_init();
+       if (bd->bi_flashstart && flash_size > 0) {
 # ifdef CONFIG_SYS_FLASH_CHECKSUM
                print_size (flash_size, "");
                /*
@@ -149,13 +148,16 @@ void board_init_f(ulong not_used)
                s = getenv ("flashchecksum");
                if (s && (*s == 'y')) {
                        printf ("  CRC: %08X",
-                               crc32 (0, (const unsigned char *) CONFIG_SYS_FLASH_BASE, flash_size)
+                               crc32(0, (const u8 *)bd->bi_flashstart,
+                                                       flash_size)
                        );
                }
                putc ('\n');
 # else /* !CONFIG_SYS_FLASH_CHECKSUM */
                print_size (flash_size, "\n");
 # endif /* CONFIG_SYS_FLASH_CHECKSUM */
+               bd->bi_flashsize = flash_size;
+               bd->bi_flashoffset = bd->bi_flashstart + flash_size;
        } else {
                puts ("Flash init FAILED");
                bd->bi_flashstart = 0;