2011/1/26 hq huang <span dir="ltr"><<a href="mailto:bec.hkj@gmail.com">bec.hkj@gmail.com</a>></span><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<p>Dear Sir,<br></p></blockquote><div>Hi David, <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><p> <br>My board (AMD Geode LX700) using W39V040FC for BIOS. I check out the latest version of flashrom which support W39V040FC now.<br>
</p></blockquote><div>With the latest version you mean code from HEAD (subversion) ?<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<p>And i have two different BIOS binary, one is the same as current chip burned, the other is different.<br>
now i use flashrom to write binary to chip as follow:<br> <br><font color="#ff0000">1、using the same bin as chip burned<br># flashrom -Vw bios_org.bin -c W39V040FC<br></font></p></blockquote><div><br>Why are you using the -c parameter ? Does your board have two flash chips ?<br>
</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><p><font color="#ff0000"></font> <br><font color="#3366ff">flashrom v0.9.3-runknown on Linux 2.6.36 (i586), built with libpci 3.0.0, GCC 4.4.3, little endian<br>
</font></p></blockquote><div>You say you're using the latest version, is this r1256 ? </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<p><font color="#3366ff">
flashrom is free software, get the source code at </font><a href="http://www.flashrom.org/" target="_blank"><font color="#3366ff">http://www.flashrom.org</font></a><br><font color="#3366ff">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.<br>

Initializing internal programmer<br>No coreboot table found.<br>DMI string system-manufacturer: " "<br>DMI string system-product-name: " "<br>DMI string system-version: " "<br>DMI string baseboard-manufacturer: " "<br>

DMI string baseboard-product-name: "AMD-GX3"<br>DMI string baseboard-version: " "<br>DMI string chassis-type: "Desktop"<br>Found chipset "AMD CS5536", enabling flash write... chipset PCI ID is 1022:2080, OK.<br>

WARNING: unexpected second chipset match: "AMD CS5536"<br>ignoring, please report lspci and board URL to </font><a href="mailto:flashrom@flashrom.org" target="_blank"><font color="#3366ff">flashrom@flashrom.org</font></a><br>
<font color="#3366ff">with 2CHIPSET: your board name in the subject line.<br>
This chipset supports the following protocols: Non-SPI.<br>Probing for Winbond W39V040FC, 512 KB: probe_jedec_common: id1 0xda, id2 0x50<br>Found chip "Winbond W39V040FC" (512 KB, FWH) at physical address 0xfff80000.<br>

Lockout bits:<br>Hardware bootblock locking (#TBL) is not active.<br>Hardware remaining chip locking (#WP) is not active..<br>Lock status of block at 0x00000000 is Write Lock (Default State).<br>Lock status of block at 0x00010000 is Write Lock (Default State).<br>

Lock status of block at 0x00020000 is Write Lock (Default State).<br>Lock status of block at 0x00030000 is Write Lock (Default State).<br>Lock status of block at 0x00040000 is Write Lock (Default State).<br>Lock status of block at 0x00050000 is Write Lock (Default State).<br>

Lock status of block at 0x00060000 is Write Lock (Default State).<br>Lock status of block at 0x00070000 is Write Lock (Default State).<br>===<br>This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE<br>

The test status of this chip may have been updated in the latest development<br>version of flashrom. If you are running the latest development version,<br>please email a report to </font><a href="mailto:flashrom@flashrom.org" target="_blank"><font color="#3366ff">flashrom@flashrom.org</font></a><font color="#3366ff"> if any of the above operations<br>

work correctly for you with this flash part. Please include the flashrom<br>output with the additional -V option for all operations you tested (-V, -Vr,<br>-Vw, -VE), and mention which mainboard or programmer you tested.<br>

Please mention your board in the subject line. Thanks for your help!<br>Flash image seems to be a legacy BIOS. Disabling checks.<br>Reading old flash chip contents...<br>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<br>

Done.<br>Verifying flash... VERIFIED.          </font></p>
<p> <br><font color="#ff0000">2、using the different bin<br># flashrom -Vw bios_new.bin -c W39V040FC</font><br></p></blockquote><div>Again: -c parameter<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<p><font color="#ff0000"></font> <br><font color="#3366ff">flashrom v0.9.3-runknown on Linux 2.6.36 (i586), built with libpci 3.0.0, GCC 4.4.3, little endian<br>
flashrom is free software, get the source code at </font><a href="http://www.flashrom.org/" target="_blank"><font color="#3366ff">http://www.flashrom.org</font></a><br><font color="#3366ff">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.<br>

Initializing internal programmer<br>No coreboot table found.<br>DMI string system-manufacturer: " "<br>DMI string system-product-name: " "<br>DMI string system-version: " "<br>DMI string baseboard-manufacturer: " "<br>

DMI string baseboard-product-name: "AMD-GX3"<br>DMI string baseboard-version: " "<br>DMI string chassis-type: "Desktop"<br>Found chipset "AMD CS5536", enabling flash write... chipset PCI ID is 1022:2080, OK.<br>

WARNING: unexpected second chipset match: "AMD CS5536"<br>ignoring, please report lspci and board URL to </font><a href="mailto:flashrom@flashrom.org" target="_blank"><font color="#3366ff">flashrom@flashrom.org</font></a><br>
<font color="#3366ff">with 2CHIPSET: your board name in the subject line.<br>
This chipset supports the following protocols: Non-SPI.<br>Probing for Winbond W39V040FC, 512 KB: probe_jedec_common: id1 0xda, id2 0x50<br>Found chip "Winbond W39V040FC" (512 KB, FWH) at physical address 0xfff80000.<br>

Lockout bits:<br>Hardware bootblock locking (#TBL) is not active.<br>Hardware remaining chip locking (#WP) is not active..<br>Lock status of block at 0x00000000 is Write Lock (Default State).<br>Lock status of block at 0x00010000 is Write Lock (Default State).<br>

Lock status of block at 0x00020000 is Write Lock (Default State).<br>Lock status of block at 0x00030000 is Write Lock (Default State).<br>Lock status of block at 0x00040000 is Write Lock (Default State).<br>Lock status of block at 0x00050000 is Write Lock (Default State).<br>

Lock status of block at 0x00060000 is Write Lock (Default State).<br>Lock status of block at 0x00070000 is Write Lock (Default State).<br>===<br>This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE<br>

The test status of this chip may have been updated in the latest development<br>version of flashrom. If you are running the latest development version,<br>please email a report to </font><a href="mailto:flashrom@flashrom.org" target="_blank"><font color="#3366ff">flashrom@flashrom.org</font></a><font color="#3366ff"> if any of the above operations<br>

work correctly for you with this flash part. Please include the flashrom<br>output with the additional -V option for all operations you tested (-V, -Vr,<br>-Vw, -VE), and mention which mainboard or programmer you tested.<br>

Please mention your board in the subject line. Thanks for your help!<br>Flash image seems to be a legacy BIOS. Disabling checks.<br>Reading old flash chip contents...<br>Erasing and writing flash chip... Looking at blockwise erase function 0... trying... 0x000000-0x00ffff:E<br>

Looking at blockwise erase function 1... trying... 0x000000-0x07ffff:E<br>Looking at blockwise erase function 2... not defined. trying... <br>Done.<br>Verifying flash... ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x0000ffff: 0xfeee<br>

ERASE FAILED!<br>ERASE FAILED at 0x00000000! Expected=0xff, Read=0x25, failed byte count from 0x00000000-0x0007ffff: 0x446f3<br>ERASE FAILED!<br>VERIFY FAILED at 0x00000001! Expected=0xb5, Read=0x29, failed byte count from 0x00000000-0x0007ffff: 0x464ca<br>

Your flash chip is in an unknown state.<br>Get help on IRC at <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> (channel #flashrom) or<br>mail </font><a href="mailto:flashrom@flashrom.org" target="_blank"><font color="#3366ff">flashrom@flashrom.org</font></a><font color="#3366ff"> with FAILED: your board name in the subject line!<br>

-------------------------------------------------------------------------------<br>DO NOT REBOOT OR POWEROFF!</font></p>
<p> <br>Why can't write a new binary to the chip? Can you help me and show me how to do? Thanks a lot !!<br></p></blockquote><div>There is a patch that enables erasing/writing your chip:<br><a href="http://patchwork.coreboot.org/patch/2456/">http://patchwork.coreboot.org/patch/2456/</a><br>
<br>Although that patch is initially meant for W39V040FA and W39V040FB, it works for your chip too, see this message: <a href="http://www.flashrom.org/pipermail/flashrom/2011-January/005723.html">http://www.flashrom.org/pipermail/flashrom/2011-January/005723.html</a><br>
<br>To apply the patch:<br>1) checkout the source code: <a href="http://www.flashrom.org/Downloads#Installation_from_source">http://www.flashrom.org/Downloads#Installation_from_source</a><br>2) run "svn up -r 1247"<br>
3) apply the patch: patch -p0 < /path/where/you/have/saved/the/patch/enable-unlocking-erasing-writing-W39V040FB-chips.patch<br>4) run "make"<br>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.<br>
</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><p> <br>Best Regards,<br></p></blockquote><div>HTH, <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<p> <br><font color="#3366ff">--------------------------------------------<br>David Huang<br>
R&D Engineer<br>BEC-TECH</font></p></blockquote><div><br>Idwer <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>_______________________________________________<br>
flashrom mailing list<br>
<a href="mailto:flashrom@flashrom.org">flashrom@flashrom.org</a><br>
<a href="http://www.flashrom.org/mailman/listinfo/flashrom" target="_blank">http://www.flashrom.org/mailman/listinfo/flashrom</a><br></blockquote></div><br>