Add support for S29GL064M-R3 flash chip on xsengine board

Patch by Kurt Stremerch, 18 Apr 2005
This commit is contained in:
Wolfgang Denk 2005-10-05 00:03:55 +02:00
parent 7d314992a8
commit 45237bc00b
3 changed files with 14 additions and 24 deletions

View file

@ -101,13 +101,9 @@ void flash_print_info (flash_info_t *info)
}
switch (info->flash_id & FLASH_TYPEMASK) {
case FLASH_AMLV128U: printf ("AM29LV128ML (128Mbit, uniform sector size)\n");
break;
case FLASH_AMLV320U: printf ("AM29LV320ML (32Mbit, uniform sector size)\n");
break;
case FLASH_AMLV640U: printf ("AM29LV640ML (64Mbit, uniform sector size)\n");
break;
case FLASH_AMLV320B: printf ("AM29LV320MB (32Mbit, bottom boot sect)\n");
case FLASH_S29GL064M: printf ("S29GL064M (64Mbit, top boot sector size)\n");
break;
default: printf ("Unknown Chip Type\n");
break;
@ -174,17 +170,6 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)
debug ("Mirror Bit flash: addr[14] = %08lX addr[15] = %08lX\n",
addr[14], addr[15]);
switch(addr[14]) {
case AMD_ID_LV128U_2:
if (addr[15] != AMD_ID_LV128U_3) {
debug ("Chip: AMLV128U -> unknown\n");
info->flash_id = FLASH_UNKNOWN;
} else {
debug ("Chip: AMLV128U\n");
info->flash_id += FLASH_AMLV128U;
info->sector_count = 256;
info->size = 0x02000000;
}
break; /* => 32 MB */
case AMD_ID_LV640U_2:
if (addr[15] != AMD_ID_LV640U_3) {
debug ("Chip: AMLV640U -> unknown\n");
@ -196,17 +181,17 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)
info->size = 0x01000000;
}
break; /* => 16 MB */
case AMD_ID_LV320B_2:
if (addr[15] != AMD_ID_LV320B_3) {
debug ("Chip: AMLV320B -> unknown\n");
case AMD_ID_GL064MT_2:
if (addr[15] != AMD_ID_GL064MT_3) {
debug ("Chip: S29GL064M-R3 -> unknown\n");
info->flash_id = FLASH_UNKNOWN;
} else {
debug ("Chip: AMLV320B\n");
info->flash_id += FLASH_AMLV320B;
info->sector_count = 71;
info->size = 0x00800000;
debug ("Chip: S29GL064M-R3\n");
info->flash_id += FLASH_S29GL064M;
info->sector_count = 128;
info->size = 0x01000000;
}
break; /* => 8 MB */
break; /* => 16 MB */
default:
debug ("Chip: *** unknown ***\n");
info->flash_id = FLASH_UNKNOWN;