[U-Boot] [PATCH 1/1] cfi fix for Spansion and MB->MiB

Aaron Williams Aaron.Williams at caviumnetworks.com
Wed Jan 26 02:56:30 CET 2011


I ran into a problem with the Spansion S29GL064N flash chip in that it returns 
a manufacturer ID of 0 and it also requires the AMD geometry fixup.

Additionally, I modified a few print statements to use KiB/MiB instead of 
kB/MB.

-Aaron Williams

diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
index dd394a8..105eb3f 100644
--- a/drivers/mtd/cfi_flash.c
+++ b/drivers/mtd/cfi_flash.c
@@ -1162,10 +1162,10 @@ void flash_print_info (flash_info_t * info)
                info->name,
                (info->portwidth << 3), (info->chipwidth << 3));
        if (info->size < 1024*1024)
-               printf ("  Size: %ld kB in %d Sectors\n",
+               printf ("  Size: %ld KiB in %d Sectors\n",
                        info->size >> 10, info->sector_count);
        else
-               printf ("  Size: %ld MB in %d Sectors\n",
+               printf ("  Size: %ld MiB in %d Sectors\n",
                        info->size >> 20, info->sector_count);
        printf ("  ");
        switch (info->vendor) {
@@ -1924,6 +1924,7 @@ ulong flash_get_size (phys_addr_t base, int banknum)
 
                /* Do manufacturer-specific fixups */
                switch (info->manufacturer_id) {
+               case 0x0000:
                case 0x0001:
                        flash_fixup_amd(info, &qry);
                        break;


More information about the U-Boot mailing list