Dear Sir,
My board (AMD Geode LX700) using W39V040FC for BIOS. I check out the latest version of flashrom which support W39V040FC now. And i have two different BIOS binary, one is the same as current chip burned, the other is different. now i use flashrom to write binary to chip as follow:
1、using the same bin as chip burned # flashrom -Vw bios_org.bin -c W39V040FC
flashrom v0.9.3-runknown on Linux 2.6.36 (i586), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org Calibrating delay loop... OS timer resolution is 2 usecs, 141M loops per second, 10 myus = 11 us, 100 myus = 99 us, 1000 myus = 1004 us, 10000 myus = 10015 us, 8 myus = 9 us, OK. Initializing internal programmer No coreboot table found. DMI string system-manufacturer: " " DMI string system-product-name: " " DMI string system-version: " " DMI string baseboard-manufacturer: " " DMI string baseboard-product-name: "AMD-GX3" DMI string baseboard-version: " " DMI string chassis-type: "Desktop" Found chipset "AMD CS5536", enabling flash write... chipset PCI ID is 1022:2080, OK. WARNING: unexpected second chipset match: "AMD CS5536" ignoring, please report lspci and board URL to flashrom@flashrom.org with 2CHIPSET: your board name in the subject line. This chipset supports the following protocols: Non-SPI. Probing for Winbond W39V040FC, 512 KB: probe_jedec_common: id1 0xda, id2 0x50 Found chip "Winbond W39V040FC" (512 KB, FWH) at physical address 0xfff80000. Lockout bits: Hardware bootblock locking (#TBL) is not active. Hardware remaining chip locking (#WP) is not active.. Lock status of block at 0x00000000 is Write Lock (Default State). Lock status of block at 0x00010000 is Write Lock (Default State). Lock status of block at 0x00020000 is Write Lock (Default State). Lock status of block at 0x00030000 is Write Lock (Default State). Lock status of block at 0x00040000 is Write Lock (Default State). Lock status of block at 0x00050000 is Write Lock (Default State). Lock status of block at 0x00060000 is Write Lock (Default State). Lock status of block at 0x00070000 is Write Lock (Default State). === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE 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@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. Please mention your board in the subject line. Thanks for your help! Flash image seems to be a legacy BIOS. Disabling checks. Reading old flash chip contents... Erasing and writing flash chip... Looking at blockwise erase function 0... trying... 0x000000-0x00ffff:S, 0x010000-0x01ffff:S, 0x020000-0x02ffff:S, 0x030000-0x03ffff:S, 0x040000-0x04ffff:S, 0x050000-0x05ffff:S, 0x060000-0x06ffff:S, 0x070000-0x07ffff:S Done. Verifying flash... VERIFIED.
2、using the different bin # flashrom -Vw bios_new.bin -c W39V040FC
flashrom v0.9.3-runknown on Linux 2.6.36 (i586), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org Calibrating delay loop... OS timer resolution is 3 usecs, 141M loops per second, 10 myus = 11 us, 100 myus = 99 us, 1000 myus = 1004 us, 10000 myus = 10014 us, 12 myus = 13 us, OK. Initializing internal programmer No coreboot table found. DMI string system-manufacturer: " " DMI string system-product-name: " " DMI string system-version: " " DMI string baseboard-manufacturer: " " DMI string baseboard-product-name: "AMD-GX3" DMI string baseboard-version: " " DMI string chassis-type: "Desktop" Found chipset "AMD CS5536", enabling flash write... chipset PCI ID is 1022:2080, OK. WARNING: unexpected second chipset match: "AMD CS5536" ignoring, please report lspci and board URL to flashrom@flashrom.org with 2CHIPSET: your board name in the subject line. This chipset supports the following protocols: Non-SPI. Probing for Winbond W39V040FC, 512 KB: probe_jedec_common: id1 0xda, id2 0x50 Found chip "Winbond W39V040FC" (512 KB, FWH) at physical address 0xfff80000. Lockout bits: Hardware bootblock locking (#TBL) is not active. Hardware remaining chip locking (#WP) is not active.. Lock status of block at 0x00000000 is Write Lock (Default State). Lock status of block at 0x00010000 is Write Lock (Default State). Lock status of block at 0x00020000 is Write Lock (Default State). Lock status of block at 0x00030000 is Write Lock (Default State). Lock status of block at 0x00040000 is Write Lock (Default State). Lock status of block at 0x00050000 is Write Lock (Default State). Lock status of block at 0x00060000 is Write Lock (Default State). Lock status of block at 0x00070000 is Write Lock (Default State). === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE 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@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. Please mention your board in the subject line. Thanks for your help! Flash image seems to be a legacy BIOS. Disabling checks. Reading old flash chip contents... Erasing and writing flash chip... Looking at blockwise erase function 0... trying... 0x000000-0x00ffff:E Looking at blockwise erase function 1... trying... 0x000000-0x07ffff:E Looking at blockwise erase function 2... not defined. trying... Done. Verifying flash... ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x0000ffff: 0xfeee ERASE FAILED! ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x0007ffff: 0x446f3 ERASE FAILED! VERIFY FAILED at 0x00000001! Expected=0xb5, Read=0x29, failed byte count from 0x00000000-0x0007ffff: 0x464ca Your flash chip is in an unknown state. Get help on IRC at irc.freenode.net (channel #flashrom) or mail flashrom@flashrom.org with FAILED: your board name in the subject line! ------------------------------------------------------------------------------- DO NOT REBOOT OR POWEROFF!
Why can't write a new binary to the chip? Can you help me and show me how to do? Thanks a lot !!
Best Regards,
-------------------------------------------- David Huang R&D Engineer BEC-TECH
2011/1/26 hq huang bec.hkj@gmail.com
Dear Sir,
Hi David,
My board (AMD Geode LX700) using W39V040FC for BIOS. I check out the latest version of flashrom which support W39V040FC now.
With the latest version you mean code from HEAD (subversion) ?
And i have two different BIOS binary, one is the same as current chip burned, the other is different. now i use flashrom to write binary to chip as follow:
1、using the same bin as chip burned # flashrom -Vw bios_org.bin -c W39V040FC
Why are you using the -c parameter ? Does your board have two flash chips ?
flashrom v0.9.3-runknown on Linux 2.6.36 (i586), built with libpci 3.0.0, GCC 4.4.3, little endian
You say you're using the latest version, is this r1256 ?
flashrom is free software, get the source code at http://www.flashrom.org Calibrating delay loop... OS timer resolution is 2 usecs, 141M loops per second, 10 myus = 11 us, 100 myus = 99 us, 1000 myus = 1004 us, 10000 myus = 10015 us, 8 myus = 9 us, OK. Initializing internal programmer No coreboot table found. DMI string system-manufacturer: " " DMI string system-product-name: " " DMI string system-version: " " DMI string baseboard-manufacturer: " " DMI string baseboard-product-name: "AMD-GX3" DMI string baseboard-version: " " DMI string chassis-type: "Desktop" Found chipset "AMD CS5536", enabling flash write... chipset PCI ID is 1022:2080, OK. WARNING: unexpected second chipset match: "AMD CS5536" ignoring, please report lspci and board URL to flashrom@flashrom.org with 2CHIPSET: your board name in the subject line. This chipset supports the following protocols: Non-SPI. Probing for Winbond W39V040FC, 512 KB: probe_jedec_common: id1 0xda, id2 0x50 Found chip "Winbond W39V040FC" (512 KB, FWH) at physical address 0xfff80000. Lockout bits: Hardware bootblock locking (#TBL) is not active. Hardware remaining chip locking (#WP) is not active.. Lock status of block at 0x00000000 is Write Lock (Default State). Lock status of block at 0x00010000 is Write Lock (Default State). Lock status of block at 0x00020000 is Write Lock (Default State). Lock status of block at 0x00030000 is Write Lock (Default State). Lock status of block at 0x00040000 is Write Lock (Default State). Lock status of block at 0x00050000 is Write Lock (Default State). Lock status of block at 0x00060000 is Write Lock (Default State). Lock status of block at 0x00070000 is Write Lock (Default State). === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE 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@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. Please mention your board in the subject line. Thanks for your help! Flash image seems to be a legacy BIOS. Disabling checks. Reading old flash chip contents... Erasing and writing flash chip... Looking at blockwise erase function 0... trying... 0x000000-0x00ffff:S, 0x010000-0x01ffff:S, 0x020000-0x02ffff:S, 0x030000-0x03ffff:S, 0x040000-0x04ffff:S, 0x050000-0x05ffff:S, 0x060000-0x06ffff:S, 0x070000-0x07ffff:S Done. Verifying flash... VERIFIED.
2、using the different bin # flashrom -Vw bios_new.bin -c W39V040FC
Again: -c parameter
flashrom v0.9.3-runknown on Linux 2.6.36 (i586), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org Calibrating delay loop... OS timer resolution is 3 usecs, 141M loops per second, 10 myus = 11 us, 100 myus = 99 us, 1000 myus = 1004 us, 10000 myus = 10014 us, 12 myus = 13 us, OK. Initializing internal programmer No coreboot table found. DMI string system-manufacturer: " " DMI string system-product-name: " " DMI string system-version: " " DMI string baseboard-manufacturer: " " DMI string baseboard-product-name: "AMD-GX3" DMI string baseboard-version: " " DMI string chassis-type: "Desktop" Found chipset "AMD CS5536", enabling flash write... chipset PCI ID is 1022:2080, OK. WARNING: unexpected second chipset match: "AMD CS5536" ignoring, please report lspci and board URL to flashrom@flashrom.org with 2CHIPSET: your board name in the subject line. This chipset supports the following protocols: Non-SPI. Probing for Winbond W39V040FC, 512 KB: probe_jedec_common: id1 0xda, id2 0x50 Found chip "Winbond W39V040FC" (512 KB, FWH) at physical address 0xfff80000. Lockout bits: Hardware bootblock locking (#TBL) is not active. Hardware remaining chip locking (#WP) is not active.. Lock status of block at 0x00000000 is Write Lock (Default State). Lock status of block at 0x00010000 is Write Lock (Default State). Lock status of block at 0x00020000 is Write Lock (Default State). Lock status of block at 0x00030000 is Write Lock (Default State). Lock status of block at 0x00040000 is Write Lock (Default State). Lock status of block at 0x00050000 is Write Lock (Default State). Lock status of block at 0x00060000 is Write Lock (Default State). Lock status of block at 0x00070000 is Write Lock (Default State). === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE 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@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. Please mention your board in the subject line. Thanks for your help! Flash image seems to be a legacy BIOS. Disabling checks. Reading old flash chip contents... Erasing and writing flash chip... Looking at blockwise erase function 0... trying... 0x000000-0x00ffff:E Looking at blockwise erase function 1... trying... 0x000000-0x07ffff:E Looking at blockwise erase function 2... not defined. trying... Done. Verifying flash... ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x0000ffff: 0xfeee ERASE FAILED! ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x0007ffff: 0x446f3 ERASE FAILED! VERIFY FAILED at 0x00000001! Expected=0xb5, Read=0x29, failed byte count from 0x00000000-0x0007ffff: 0x464ca Your flash chip is in an unknown state. Get help on IRC at irc.freenode.net (channel #flashrom) or mail flashrom@flashrom.org with FAILED: your board name in the subject line!
DO NOT REBOOT OR POWEROFF!
Why can't write a new binary to the chip? Can you help me and show me how to do? Thanks a lot !!
There is a patch that enables erasing/writing your chip: http://patchwork.coreboot.org/patch/2456/
Although that patch is initially meant for W39V040FA and W39V040FB, it works for your chip too, see this message: http://www.flashrom.org/pipermail/flashrom/2011-January/005723.html
To apply the patch: 1) checkout the source code: http://www.flashrom.org/Downloads#Installation_from_source 2) run "svn up -r 1247" 3) apply the patch: patch -p0 < /path/where/you/have/saved/the/patch/enable-unlocking-erasing-writing-W39V040FB-chips.patch 4) run "make" 5) run "./flashrom -Vw bios_new.bin" as root, and don't forget the leading " ./" that runs flashrom from the directory you ran "make" in.
Best Regards,
HTH,
David Huang R&D Engineer BEC-TECH
Idwer
flashrom mailing list flashrom@flashrom.org http://www.flashrom.org/mailman/listinfo/flashrom