Hi Allan,
important things first: I looked at the messages you got and also at the great debugging you did (old dump of the BIOS is identical to the new dup of the BIOS) and I'm very sure your machine is OK and can be rebooted anytime.
On 29.09.2009 23:31, Allan Bjorklund wrote:
A Sony Vaio (PCV-RX650(UC)), with an ASUSTeK mother board (P4B266LM Rev: 1.xx), running Linux kernel 2.6.28.
Flashrom interacts non-trivially with the embedded controllers in laptops, so we recommend not to use flashrom on any laptop.
flashrom v0.9.1-runknown No coreboot table found. Found chipset "Intel ICH2", enabling flash write... OK. Found chip "SST SST49LF002A/B" (256 KB, FWH) at physical address 0xfffc0000.
Apparently your laptop is among those which have the flash chip attached directly to the southbridge, which is a good thing (makes using flashrom possible).
I saved a copy of my existing BIOS image with: flashrom -r
Good decision.
flashrom -w original_bios.bin, and here is the output:
flashrom v0.9.1-runknown Found chipset "Intel ICH2", enabling flash write... OK. Found chip "SST SST49LF002A/B" (256 KB, FWH) at physical address 0xfffc0000. Flash image seems to be a legacy BIOS. Disabling checks. Writing flash chip... ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x00003fff: 0x3fa4 ERASE FAILED! ERASE FAILED! ERASE FAILED! ERASE FAILED! FAILED!
Since erase failed at 0x00000000 (first address), this is a good indicator the erase had no effect at all.
If I do a flashrom -v original_bios.bin, I get:
flashrom v0.9.1-runknown No coreboot table found. Found chipset "Intel ICH2", enabling flash write... OK. This chipset supports the following protocols: Non-SPI. Calibrating delay loop... OK. Found chip "SST SST49LF002A/B" (256 KB, FWH) at physical address 0xfffc0000. Flash image seems to be a legacy BIOS. Disabling checks. Verifying flash... VERIFIED.
And reading a second copy and doing a binary diff shows no differences, so my BIOS checks out as not being damaged.
Absolutely correct.
So, any advice on what to look for/change to make this work?
Let me give you two advices, and select the one which fits you best: - Don't use flashrom on any laptop. The interactions with the embedded controller can lead to poweroff, stopped battery charging and laptop overheating. It is technically impossible to probe for most of these problematic embedded controllers, so there is nothing flashrom can do to tell the user about this. - Ask libv in #flashrom on freenode to develop a board enable routine for your board. This is quite some work (not less than half an hour of experienced developer time) and on laptops this may have the side effects mentioned above. Luc (libv) needs the following data from you: "lspci -nnvvvxxx", "superiotool -dV" (both run as root, output attached to a reply mail in this thread), and a link to the BIOS file download (please don't post the BIOS file itself to this list). Refer him to the mail which started this thread (which has flashrom output and the board name) and to the mail with the data I requested from you. That should give him the info you need.
Regards, Carl-Daniel