[prev in list] [next in list] [prev in thread] [next in thread] 

List:       flashrom
Subject:    Re: [flashrom] flash failed on W39V040FC
From:       Idwer Vollering <vidwer () gmail ! com>
Date:       2011-01-26 13:10:34
Message-ID: AANLkTinTVSYpa6mj91g8Oou3DfembnPGtYkOhaSO94oh () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


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
>

[Attachment #5 (text/html)]

2011/1/26 hq huang <span dir="ltr">&lt;<a \
href="mailto:bec.hkj@gmail.com">bec.hkj@gmail.com</a>&gt;</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&#39;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: &quot; &quot;<br>DMI string system-product-name: &quot; \
&quot;<br>DMI string system-version: &quot; &quot;<br>DMI string \
baseboard-manufacturer: &quot; &quot;<br>

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

WARNING: unexpected second chipset match: &quot;AMD CS5536&quot;<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 &quot;Winbond W39V040FC&quot; \
(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: &quot; &quot;<br>DMI string system-product-name: &quot; \
&quot;<br>DMI string system-version: &quot; &quot;<br>DMI string \
baseboard-manufacturer: &quot; &quot;<br>

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

WARNING: unexpected second chipset match: &quot;AMD CS5536&quot;<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 &quot;Winbond W39V040FC&quot; \
(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&#39;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 &quot;svn up -r 1247&quot;<br> 3) apply the patch: patch -p0 &lt; \
/path/where/you/have/saved/the/patch/enable-unlocking-erasing-writing-W39V040FB-chips.patch<br>4) \
run &quot;make&quot;<br>5) run &quot;./flashrom -Vw bios_new.bin&quot; as root, and \
don&#39;t forget the leading &quot; ./&quot; that runs flashrom from the directory \
you ran &quot;make&quot; 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&amp;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>




_______________________________________________
flashrom mailing list
flashrom@flashrom.org
http://www.flashrom.org/mailman/listinfo/flashrom

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic