[flashrom] Flash erasing failed mid way on Atmel AT25DF321 flash chip

Ramakrishna.Koduri at emerson.com Ramakrishna.Koduri at emerson.com
Fri Jun 18 17:28:52 CEST 2010


Hi Carl-Daniel,
Thanks a lot for the response.

Please see my response inline.


With thanks & regards,
Ramakrishna Kvv
Embedded Computing  
 
Emerson Network Power 
T    +9140 66747045
M  + 919246659136
ramakrishna.koduri at emerson.com  

www.emersonnetworkpower.com/embeddedcomputing


-----Original Message-----
From: Carl-Daniel Hailfinger [mailto:c-d.hailfinger.devel.2006 at gmx.net] 
Sent: Friday, June 18, 2010 5:27 AM
To: Ramakrishna, Koduri [NETPWR/HYDE]
Cc: flashrom at flashrom.org
Subject: Re: [flashrom] Flash erasing failed mid way on Atmel AT25DF321
flash chip

Hi Ramakrishna,

is this a production system you have to recover now, or can you reflash
externally if something goes wrong?
--> Yes. It is the production that I need to recover. This failure wiped
out the existing BIOS on the flash.
    I am exploring to see any other option other than JTAG interface for
bringing back.

    Flashrom worked many times for this. I don't know somehow this got
failed in this attempt.


On 17.06.2010 16:26, Ramakrishna.Koduri at emerson.com wrote:
> I have tried upgrading BIOS image using flashrom v0.9.2-r1001.
> Surprisingly it failed in this attempt. 
>
> I did many times upgrade of BIOS using flashrom utility of above said 
> version.
> Earlier it was done by internal programmer with erase function-2.
>
> [root at localhost images]# flashrom -V -w atca-7360-cpu-v1.1.1.rom 
> flashrom v0.9.2-r1001 on Linux 2.6.18-194.el5xen (x86_64), built with 
> libpci 2.2.3, GCC 4.1.2 20080704 (Red Hat 4.1.2-48) Initializing 
> internal programmer No coreboot table found.
> DMI string system-manufacturer: "Emerson"
> DMI string system-product-name: "PCA,ATCA-7360/R1.0/6E "
> DMI string system-version: "R1.0 "
> DMI string baseboard-manufacturer: "Emerson"
> DMI string baseboard-product-name: "ATCA-7360/7365"
> DMI string baseboard-version: "0106865F01A    "
> DMI string chassis-type: ""
> Found chipset "Intel ICH10R", enabling flash write... 
> Maximum FWH chip size: 0x380000 bytes
> BIOS Lock Enable: disabled, BIOS Write Enable: enabled, BIOS_CNTL is 
> 0x9
>
> Root Complex Register Block address = 0xfed1c000 GCS = 0x460: BIOS 
> Interface Lock-Down: disabled, BOOT BIOS Straps: 0x1
> (SPI)
> Top Swap : not enabled
> SPIBAR = 0xfed1c000 + 0x3800
> 0x04: 0x6008 (HSFS)
> FLOCKDN 0, FDV 1, FDOPSS 1, SCIP 0, BERASE 1, AEL 0, FCERR 0, FDONE 0
> 0x50: 0x00001b1b (FRAP)
> BMWAG 0, BMRAG 0, BRWA 27, BRRA 27
> 0x54: 0x00010000 (FREG0)
> 0x58: 0x03ff0080 (FREG1)
> 0x5C: 0x00001fff (FREG2)
> 0x60: 0x00030002 (FREG3)
> 0x64: 0x007f0004 (FREG4)
> 0x74: 0x00000000 (PR0)
> 0x78: 0x00000000 (PR1)
> 0x7C: 0x00000000 (PR2)
> 0x80: 0x00000000 (PR3)
> 0x84: 0x00000000 (PR4)
> 0x90: 0x007f100c (SSFS, SSFC)
> 0x94: 0x0006     (PREOP)
> 0x96: 0x463b     (OPTYPE)
> 0x98: 0x05d80302 (OPMENU)
> 0x9C: 0xc79f0190 (OPMENU+4)
> 0xA0: 0x00000000 (BBAR)
> 0xB0: 0x00004000 (FDOC)
> Programming OPCODES... 
> program_opcodes: preop=5006 optype=463b opmenu=05d80302c79f0190 done 
> SPI Read Configuration: prefetching enabled, caching enabled, OK.
> This chipset supports the following protocols: FWH,SPI.
> Calibrating delay loop... 1062M loops per second, 10 myus = 12 us, 100

> myus = 101 us, 1000 myus = 999 us, 10000 myus = 10005 us, OK.
> Probing for Atmel AT25DF321, 4096 KB: probe_spi_rdid_generic: id1 
> 0x1f,
> id2 0x4700
> Chip status register is 10
> Found chip "Atmel AT25DF321" (4096 KB, SPI) at physical address 
> 0xffc00000.
> Flash image seems to be a legacy BIOS. Disabling checks.
> Writing flash chip... Some block protection in effect, disabling 
> Erasing flash before programming... Erasing flash chip... Looking at 
> blockwise erase function 0... trying... 0x000000-0x000fff,
> ich_spi_send_multicommand: FIXME: Add on-the-fly reprogramming of the 
> chipset opcode list.
> Invalid OPCODE 0x20
> spi_block_erase_20 failed during command execution at address 0x0
>
> Looking at blockwise erase function 1... trying... 0x000000-0x007fff,
> ich_spi_send_multicommand: FIXME: Add on-the-fly reprogramming of the 
> chipset opcode list.
> Invalid OPCODE 0x52
> spi_block_erase_52 failed during command execution at address 0x0
>
> Looking at blockwise erase function 2... trying... 0x000000-0x00ffff, 
> 0x010000-0x01ffff, 0x020000-0x02ffff, 0x030000-0x03ffff, 
> 0x040000-0x04ffff, 0x050000-0x05ffff, 0x060000-0x06ffff, 
> 0x070000-0x07ffff, 0x080000-0x08ffff, 0x090000-0x09ffff, 
> 0x0a0000-0x0affff, ERASE FAILED at 0x000a0800! Expected=0xff, 
> Read=0x1f,Transaction error!
> run OPCODE 0x03 failed
> Transaction error!
> [...]
> run OPCODE 0x03 failed
> Transaction error!
>   

Ah yes. This means your current BIOS version somehow blocks reading of
some regions. You could try flashrom r1016 or later which has improved
region protection handling.
--> I am surprised to see why it should block some regions. 
    May be once the board is UP, I shall give a try using flashrom r1016
version.    


>  failed byte count from 0x000a0000-0x000affff: 0x1a ERASE FAILED!
>
> Looking at blockwise erase function 3... trying... 0x000000-0x3fffff, 
> Some block protection in effect, disabling
> ich_spi_send_multicommand: FIXME: Add on-the-fly reprogramming of the 
> chipset opcode list.
> Invalid OPCODE 0x60
> spi_chip_erase_60 failed during command execution
>
> Looking at blockwise erase function 4... trying... 0x000000-0x3fffff, 
> Some block protection in effect, disabling
>   

It would be interesting to check if reading the complete chip works. I
think it probably won't work. Please report back with the verbose
results of a pure read test.
--> The current state of the system is not usable any more due to
boardreset immediately after the flashrom failed. 
    It didn't give me any chance to repair system back.

    I have the traces of previously successful write operation. Please
find the same here.

========================================================================
===================================
[root at localhost flashrom-0.9.2]# ./flashrom -V  -l layout -w
atca7360-bios.img -i part_2000_4000.log
flashrom v0.9.2-r1001 on Linux 2.6.18-194.el5PAE (i686), built with
libpci 2.2.3, GCC 4.1.2 20080704 (Red Hat 4.1.2-48)
flashrom is free software, get the source code at
http://www.flashrom.org

romlayout 00002000 - 00003fff named
/mnt/root/ramki/flashrom-0.9.2/part_2000_4000.log
Looking for "part_2000_4000.log"... not found.
Initializing internal programmer
No coreboot table found.
DMI string system-manufacturer: "Emerson"
DMI string system-product-name: "PCA,ATCA-7360/R1.0/6E
"
DMI string system-version: "R1.0 "
DMI string baseboard-manufacturer: "Emerson"
DMI string baseboard-product-name: "ATCA-7360/7365"
DMI string baseboard-version: "0106865F01A    "
DMI string chassis-type: ""
Found chipset "Intel ICH10R", enabling flash write... 
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x0
0x7fffffff/0x7fffffff FWH IDSEL: 0x4
0x7fffffff/0x7fffffff FWH IDSEL: 0x5
0x7fffffff/0x7fffffff FWH IDSEL: 0x6
0x7fffffff/0x7fffffff FWH IDSEL: 0x7
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode enabled
0x7fffffff/0x7fffffff FWH decode disabled
0x7fffffff/0x7fffffff FWH decode disabled
0x7fffffff/0x7fffffff FWH decode disabled
0x7fffffff/0x7fffffff FWH decode disabled
0x7fffffff/0x7fffffff FWH decode disabled
Maximum FWH chip size: 0x380000 bytes
BIOS Lock Enable: disabled, BIOS Write Enable: enabled, BIOS_CNTL is 0x9

Root Complex Register Block address = 0xfed1c000
GCS = 0x460: BIOS Interface Lock-Down: disabled, BOOT BIOS Straps: 0x1
(SPI)
Top Swap : not enabled
SPIBAR = 0xfed1c000 + 0x3800
0x04: 0x6008 (HSFS)
FLOCKDN 0, FDV 1, FDOPSS 1, SCIP 0, BERASE 1, AEL 0, FCERR 0, FDONE 0
0x50: 0x00001b1b (FRAP)
BMWAG 0, BMRAG 0, BRWA 27, BRRA 27
0x54: 0x00010000 (FREG0)
0x58: 0x03ff0080 (FREG1)
0x5C: 0x00001fff (FREG2)
0x60: 0x00030002 (FREG3)
0x64: 0x007f0004 (FREG4)
0x74: 0x00000000 (PR0)
0x78: 0x00000000 (PR1)
0x7C: 0x00000000 (PR2)
0x80: 0x00000000 (PR3)
0x84: 0x00000000 (PR4)
0x90: 0x007f100c (SSFS, SSFC)
0x94: 0x0006     (PREOP)
0x96: 0x463b     (OPTYPE)
0x98: 0x05d80302 (OPMENU)
0x9C: 0xc79f0190 (OPMENU+4)
0xA0: 0x00000000 (BBAR)
0xB0: 0x00004000 (FDOC)
Programming OPCODES... 
program_opcodes: preop=5006 optype=463b opmenu=05d80302c79f0190
done
SPI Read Configuration: prefetching enabled, caching enabled, OK.
This chipset supports the following protocols: FWH,SPI.
Calibrating delay loop... 1091M loops per second, 10 myus = 10 us, 100
myus = 103 us, 1000 myus = 1029 us, 10000 myus = 10073 us, OK.
Probing for AMD Am29F010A/B, 128 KB: skipped.
Probing for AMD Am29F002(N)BB, 256 KB: skipped.
Probing for AMD Am29F002(N)BT, 256 KB: skipped.
Probing for AMD Am29F016D, 2048 KB: skipped.
Probing for AMD Am29F040B, 512 KB: skipped.
Probing for AMD Am29F080B, 1024 KB: skipped.
Probing for AMD Am29LV040B, 512 KB: skipped.
Probing for AMD Am29LV081B, 1024 KB: skipped.
Probing for ASD AE49F2008, 256 KB: skipped.
Probing for Atmel AT25DF021, 256 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25DF041A, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25DF081, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25DF161, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25DF321, 4096 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Chip status register is 10
Found chip "Atmel AT25DF321" (4096 KB, SPI) at physical address
0xffc00000.
Probing for Atmel AT25DF321A, 4096 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25DF641, 8192 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25F512B, 64 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25FS010, 128 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT25FS040, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT26DF041, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT26DF081A, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT26DF161, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT26DF161A, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT26F004, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT29C512, 64 KB: skipped.
Probing for Atmel AT29C010A, 128 KB: skipped.
Probing for Atmel AT29C020, 256 KB: skipped.
Probing for Atmel AT29C040A, 512 KB: skipped.
Probing for Atmel AT45CS1282, 16896 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Atmel AT45DB011D, 128 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB021D, 256 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB041D, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB081D, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB161D, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB321C, 4224 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB321D, 4096 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT45DB642D, 8192 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Atmel AT49BV512, 64 KB: skipped.
Probing for Atmel AT49F002(N), 256 KB: skipped.
Probing for Atmel AT49F002(N)T, 256 KB: skipped.
Probing for AMIC A25L40PT, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for AMIC A25L40PU, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for AMIC A29002B, 256 KB: skipped.
Probing for AMIC A29002T, 256 KB: skipped.
Probing for AMIC A29040B, 512 KB: skipped.
Probing for AMIC A49LF040A, 512 KB: skipped.
Probing for EMST F49B002UA, 256 KB: skipped.
Probing for Eon EN25B05, 64 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B05T, 64 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B10, 128 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B10T, 128 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B20, 256 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B20T, 256 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B40, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B40T, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B80, 1024 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B80T, 1024 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B16, 2048 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B16T, 2048 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B32, 4096 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B32T, 4096 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B64, 8192 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25B64T, 8192 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25D16, 2048 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F05, 64 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F10, 128 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F20, 256 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F40, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F80, 1024 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F16, 2048 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN25F32, 4096 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for Eon EN29F010, 128 KB: skipped.
Probing for EON EN29F002(A)(N)B, 256 KB: skipped.
Probing for EON EN29F002(A)(N)T, 256 KB: skipped.
Probing for Fujitsu MBM29F004BC, 512 KB: skipped.
Probing for Fujitsu MBM29F004TC, 512 KB: skipped.
Probing for Fujitsu MBM29F400BC, 512 KB: skipped.
Probing for Fujitsu MBM29F400TC, 512 KB: skipped.
Probing for Intel 28F001BX-B, 128 KB: skipped.
Probing for Intel 28F001BX-T, 128 KB: skipped.
Probing for Intel 28F004S5, 512 KB: skipped.
Probing for Intel 28F004BV/BE-B, 512 KB: skipped.
Probing for Intel 28F004BV/BE-T, 512 KB: skipped.
Probing for Intel 28F400BV/CV/CE-B, 512 KB: skipped.
Probing for Intel 28F400BV/CV/CE-T, 512 KB: skipped.
Probing for Intel 82802AB, 512 KB: probe_82802ab: id1 0xea, id2 0xd0,
id1 is normal flash content, id2 is normal flash content
Probing for Intel 82802AC, 1024 KB: probe_82802ab: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Macronix MX25L512, 64 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Macronix MX25L1005, 128 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L2005, 256 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L8005, 1024 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L1605, 2048 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L1635D, 2048 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L3205, 4096 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L3235D, 4096 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L6405, 8192 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX25L12805, 16384 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix MX29F001B, 128 KB: skipped.
Probing for Macronix MX29F001T, 128 KB: skipped.
Probing for Macronix MX29F002B, 256 KB: skipped.
Probing for Macronix MX29F002T, 256 KB: skipped.
Probing for Macronix MX29LV040, 512 KB: skipped.
Probing for Numonyx M25PE10, 128 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Numonyx M25PE20, 256 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Numonyx M25PE40, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Numonyx M25PE80, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Numonyx M25PE16, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for PMC Pm25LV010, 128 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for PMC Pm25LV016B, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for PMC Pm25LV020, 256 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for PMC Pm25LV040, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for PMC Pm25LV080B, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for PMC Pm25LV512, 64 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for PMC Pm29F002T, 256 KB: skipped.
Probing for PMC Pm29F002B, 256 KB: skipped.
Probing for PMC Pm39LV010, 128 KB: skipped.
Probing for PMC Pm39LV020, 256 KB: skipped.
Probing for PMC Pm39LV040, 512 KB: skipped.
Probing for PMC Pm49FL002, 256 KB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for PMC Pm49FL004, 512 KB: probe_jedec_common: id1 0xea, id2
0xd0, id1 is normal flash content, id2 is normal flash content
Probing for Sanyo LF25FW203A, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Sharp LHF00L04, 1024 KB: probe_82802ab: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Spansion S25FL008A, 1024 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Spansion S25FL016A, 2048 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for SST SST25VF016B, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for SST SST25VF032B, 4096 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for SST SST25VF040.REMS, 512 KB: probe_spi_rems: id1 0x0, id2
0x0
Probing for SST SST25VF040B, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for SST SST25VF040B.REMS, 512 KB: probe_spi_rems: id1 0x0, id2
0x0
Probing for SST SST25VF080B, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for SST SST28SF040A, 512 KB: skipped.
Probing for SST SST29EE010, 128 KB: skipped.
Probing for SST SST29LE010, 128 KB: skipped.
Probing for SST SST29EE020A, 256 KB: skipped.
Probing for SST SST29LE020, 256 KB: skipped.
Probing for SST SST39SF512, 64 KB: skipped.
Probing for SST SST39SF010A, 128 KB: skipped.
Probing for SST SST39SF020A, 256 KB: skipped.
Probing for SST SST39SF040, 512 KB: skipped.
Probing for SST SST39VF512, 64 KB: skipped.
Probing for SST SST39VF010, 128 KB: skipped.
Probing for SST SST39VF020, 256 KB: skipped.
Probing for SST SST39VF040, 512 KB: skipped.
Probing for SST SST39VF080, 1024 KB: skipped.
Probing for SST SST49LF002A/B, 256 KB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF003A/B, 384 KB: probe_jedec_common: id1 0x40, id2
0x11, id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF004A/B, 512 KB: probe_jedec_common: id1 0xea, id2
0xd0, id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF004C, 512 KB: probe_82802ab: id1 0xea, id2 0xd0,
id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF008A, 1024 KB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF008C, 1024 KB: probe_82802ab: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST49LF016C, 2048 KB: probe_82802ab: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST49LF020, 256 KB: skipped.
Probing for SST SST49LF020A, 256 KB: skipped.
Probing for SST SST49LF040, 512 KB: skipped.
Probing for SST SST49LF040B, 512 KB: skipped.
Probing for SST SST49LF080A, 1024 KB: skipped.
Probing for SST SST49LF160C, 2048 KB: skipped.
Probing for ST M25P05-A, 64 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P05.RES, 64 KB: Ignoring RES in favour of RDID.
Probing for ST M25P10-A, 128 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P10.RES, 128 KB: Ignoring RES in favour of RDID.
Probing for ST M25P20, 256 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P40, 512 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P40-old, 512 KB: Ignoring RES in favour of RDID.
Probing for ST M25P80, 1024 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P16, 2048 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P32, 4096 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P64, 8192 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M25P128, 16384 KB: probe_spi_rdid_generic: id1 0x1f, id2
0x4700
Probing for ST M29F002B, 256 KB: skipped.
Probing for ST M29F002T/NT, 256 KB: skipped.
Probing for ST M29F040B, 512 KB: skipped.
Probing for ST M29F400BT, 512 KB: skipped.
Probing for ST M29W010B, 128 KB: skipped.
Probing for ST M29W040B, 512 KB: skipped.
Probing for ST M29W512B, 64 KB: skipped.
Probing for ST M50FLW040A, 512 KB: probe_82802ab: id1 0xea, id2 0xd0,
id1 is normal flash content, id2 is normal flash content
Probing for ST M50FLW040B, 512 KB: probe_82802ab: id1 0xea, id2 0xd0,
id1 is normal flash content, id2 is normal flash content
Probing for ST M50FLW080A, 1024 KB: probe_82802ab: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M50FLW080B, 1024 KB: probe_82802ab: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M50FW002, 256 KB: probe_82802ab: id1 0xff, id2 0xff, id1
parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M50FW016, 2048 KB: probe_82802ab: id1 0xff, id2 0xff, id1
parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M50FW040, 512 KB: probe_82802ab: id1 0xea, id2 0xd0, id1
is normal flash content, id2 is normal flash content
Probing for ST M50FW080, 1024 KB: probe_82802ab: id1 0xff, id2 0xff, id1
parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M50LPW116, 2048 KB: skipped.
Probing for SyncMOS S29C31004T, 512 KB: skipped.
Probing for SyncMOS S29C51001T, 128 KB: skipped.
Probing for SyncMOS S29C51002T, 256 KB: skipped.
Probing for SyncMOS S29C51004T, 512 KB: skipped.
Probing for TI TMS29F002RB, 256 KB: skipped.
Probing for TI TMS29F002RT, 256 KB: skipped.
Probing for Winbond W25Q80, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25Q16, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25Q32, 4096 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x10, 128 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x20, 256 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x40, 512 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x80, 1024 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x16, 2048 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x32, 4096 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W25x64, 8192 KB: probe_spi_rdid_generic: id1 0x1f,
id2 0x4700
Probing for Winbond W29C011, 128 KB: skipped.
Probing for Winbond W29C020C, 256 KB: skipped.
Probing for Winbond W29C040P, 512 KB: skipped.
Probing for Winbond W29EE011, 128 KB: skipped.
Probing for Winbond W39V040A, 512 KB: skipped.
Probing for Winbond W39V040B, 512 KB: skipped.
Probing for Winbond W39V040C, 512 KB: skipped.
Probing for Winbond W39V040FA, 512 KB: probe_jedec_common: id1 0xea, id2
0xd0, id1 is normal flash content, id2 is normal flash content
Probing for Winbond W39V080A, 1024 KB: skipped.
Probing for Winbond W49F002U, 256 KB: skipped.
Probing for Winbond W49V002A, 256 KB: skipped.
Probing for Winbond W49V002FA, 256 KB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V080FA, 1024 KB: Chip lacks correct probe timing
information, using default 10mS/40uS. probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V080FA (dual mode), 512 KB: Chip lacks correct
probe timing information, using default 10mS/40uS. probe_jedec_common:
id1 0xea, id2 0xd0, id1 is normal flash content, id2 is normal flash
content
Probing for Atmel unknown Atmel SPI chip, 0 KB: probe_spi_rdid_generic:
id1 0x1f, id2 0x4700
Probing for EON unknown EON SPI chip, 0 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Macronix unknown Macronix SPI chip, 0 KB:
probe_spi_rdid_generic: id1 0x1f, id2 0x4700
Probing for PMC unknown PMC SPI chip, 0 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for SST unknown SST SPI chip, 0 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for ST unknown ST SPI chip, 0 KB: probe_spi_rdid_generic: id1
0x1f, id2 0x4700
Probing for Sanyo unknown Sanyo SPI chip, 0 KB: probe_spi_rdid_generic:
id1 0x1f, id2 0x4700
Probing for Generic unknown SPI chip (RDID), 0 KB:
probe_spi_rdid_generic: id1 0x1f, id2 0x4700
Probing for Generic unknown SPI chip (REMS), 0 KB: probe_spi_rems: id1
0x0, id2 0x0
===
This flash part has status UNTESTED for operations: ERASE
The test status of this chip may have been updated in the latest
development
version of flashrom. If you are running the latest development version,
please email a report to flashrom at flashrom.org if any of the above
operations
work correctly for you with this flash part. Please include the flashrom
output with the additional -V option for all operations you tested (-V,
-Vr,
-Vw, -VE), and mention which mainboard or programmer you tested.
Thanks for your help!
===
Flash image seems to be a legacy BIOS. Disabling checks.
Writing flash chip... Some block protection in effect, disabling
Erasing flash before programming... Erasing flash chip... Looking at
blockwise erase function 0... trying... 0x000000-0x000fff,
ich_spi_send_multicommand: FIXME: Add on-the-fly reprogramming of the
chipset opcode list.
Invalid OPCODE 0x20
spi_block_erase_20 failed during command execution at address 0x0

Looking at blockwise erase function 1... trying... 0x000000-0x007fff,
ich_spi_send_multicommand: FIXME: Add on-the-fly reprogramming of the
chipset opcode list.
Invalid OPCODE 0x52
spi_block_erase_52 failed during command execution at address 0x0

Looking at blockwise erase function 2... trying... 0x000000-0x00ffff,
0x010000-0x01ffff, 0x020000-0x02ffff, 0x030000-0x03ffff,
0x040000-0x04ffff, 0x050000-0x05ffff, 0x060000-0x06ffff,
0x070000-0x07ffff, 0x080000-0x08ffff, 0x090000-0x09ffff,
0x0a0000-0x0affff, 0x0b0000-0x0bffff, 0x0c0000-0x0cffff,
0x0d0000-0x0dffff, 0x0e0000-0x0effff, 0x0f0000-0x0fffff,
0x100000-0x10ffff, 0x110000-0x11ffff, 0x120000-0x12ffff,
0x130000-0x13ffff, 0x140000-0x14ffff, 0x150000-0x15ffff,
0x160000-0x16ffff, 0x170000-0x17ffff, 0x180000-0x18ffff,
0x190000-0x19ffff, 0x1a0000-0x1affff, 0x1b0000-0x1bffff,
0x1c0000-0x1cffff, 0x1d0000-0x1dffff, 0x1e0000-0x1effff,
0x1f0000-0x1fffff, 0x200000-0x20ffff, 0x210000-0x21ffff,
0x220000-0x22ffff, 0x230000-0x23ffff, 0x240000-0x24ffff,
0x250000-0x25ffff, 0x260000-0x26ffff, 0x270000-0x27ffff,
0x280000-0x28ffff, 0x290000-0x29ffff, 0x2a0000-0x2affff,
0x2b0000-0x2bffff, 0x2c0000-0x2cffff, 0x2d0000-0x2dffff,
0x2e0000-0x2effff, 0x2f0000-0x2fffff, 0x300000-0x30ffff,
0x310000-0x31ffff, 0x320000-0x32ffff, 0x330000-0x33ffff,
0x340000-0x34ffff, 0x350000-0x35ffff, 0x360000-0x36ffff,
0x370000-0x37ffff, 0x380000-0x38ffff, 0x390000-0x39ffff,
0x3a0000-0x3affff, 0x3b0000-0x3bffff, 0x3c0000-0x3cffff,
0x3d0000-0x3dffff, 0x3e0000-0x3effff, 0x3f0000-0x3fffff, 
SUCCESS.
done.
Programming page: 

COMPLETE.
Verifying flash... VERIFIED.          

========================================================================
===================================




More information about the flashrom mailing list