Hi Finnbarr,
On 03.02.2010 17:12, Finnbarr Murphy wrote:
Here is a failure report against an Intel DX48BT2 motherboard which uses a ICH9R and a Winbond W25x16 containing the BIOS.
Command I executed was:
./flashrom -c W25x16 -rV out.bin
flashrom v0.9.1-r889 No coreboot table found. DMI string 0: " " DMI string 1: " " DMI string 2: " " DMI string 3: "Intel Corporation" DMI string 4: "DX48BT2" DMI string 5: "AAE26191-205"
Ah, a mainboard manufactured by Intel.
Found chipset "Intel ICH9R", enabling flash write... [...] 0x98: 0x2002009f (OPMENU) 0x9C: 0x00000000 (OPMENU+4) [...]
Heh. The BIOS vendor decided to allow writing to the chip (0x02), erasing (0x20), and identification (0x9f). Reading (0x03) is not allowed.
WARNING: SPI Configuration Lockdown activated.
And the lockdown means that flashrom can't do anything against it.
Generating OPCODES... done SPI Read Configuration: prefetching enabled, caching enabled, FAILED! This chipset supports the following protocols: FWH,SPI. Calibrating delay loop... 805M loops per second, 100 myus = 199 us. OK. Probing for Winbond W25x16, 2048 KB: RDID returned 0xef 0x30 0x15. probe_spi_rdid_generic: id1 0xef, id2 0x3015 Invalid OPCODE 0x05 Chip status register is 0a Found chip "Winbond W25x16" (2048 KB, SPI) at physical address 0xffe00000. Reading flash... Invalid OPCODE 0x03
Any idea what is going on? According to the W25x16 documentation opcodes 0x03 and 0x05 are supported.
Yes, the problem is that Intel decided to disallow any read opcodes in the chipset configuration. Sorry, but we can't do anything to circumvent this except for messing with the flash descriptor in a rather dangerous way. A BIOS/EFI update/downgrade might help.
Regards, Carl-Daniel