cfi_flash: reverse geometry for M29W800DT parts

The M29W800DT parts also report their geometry with the sector layout
reversed.  So add that ID to the flash_fixup_stm function.

Otherwise, we get:
bfin> flinfo

Bank # 1: CFI conformant FLASH (16 x 16)  Size: 1 MB in 19 Sectors
  AMD Standard command set, Manufacturer ID: 0x20, Device ID: 0x22D7
  Erase timeout: 8192 ms, write timeout: 1 ms

  Sector Start Addresses:
  20000000        20004000        20006000        20008000        20010000
  20020000        20030000        20040000        20050000        20060000
  20070000        20080000        20090000        200A0000        200B0000
  200C0000        200D0000        200E0000        200F0000

Reported-by: Jianxi Fu <fujianxi@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Stefan Roese <sr@denx.de>
This commit is contained in:
Mike Frysinger 2011-04-10 16:06:29 -04:00 committed by Stefan Roese
parent 735eb0f0e6
commit 6a011ce851
1 changed files with 4 additions and 3 deletions

View File

@ -1852,9 +1852,10 @@ static void flash_fixup_stm(flash_info_t *info, struct cfi_qry *qry)
if (qry->num_erase_regions > 1) {
/* reverse geometry if top boot part */
if (info->cfi_version < 0x3131) {
/* CFI < 1.1, guess by device id (M29W320{DT,ET} only) */
if (info->device_id == 0x22CA ||
info->device_id == 0x2256) {
/* CFI < 1.1, guess by device id */
if (info->device_id == 0x22CA || /* M29W320DT */
info->device_id == 0x2256 || /* M29W320ET */
info->device_id == 0x22D7) { /* M29W800DT */
cfi_reverse_geometry(qry);
}
}