My mistake - that patch hasn't made a difference to the behaviour.
It looks to me as if I'm unable to write to the top-block of the Pm49FL004 device. Looking at the data sheet it appears that this device has 2 write-protect pins - WP# (which looks as if it's wired up to the AMD C5536 appropriately - such that writes to MSR 0x1808 have an effect) and TBL# (Top-Block-Lock) which enables hardware write protection of the top boot block (64Kbytes). Unfortunately I don't know how the TBL# pin is connected to the CS5536. I'm guessing a GPIO.
Does anyone have any experience of using this BIOS flash with the CS5536?
Many thanks,
Alan
Alan Alexander mailto:alan@icerasemi.com Software Toolchain Engineering Icera Inc, 2520 The Quadrant, Aztec west, Bristol BS32 4AQ, UK Tel. +44 (0)1454 284805 -----Original Message----- From: linuxbios-bounces+alan=icerasemi.com@linuxbios.org [mailto:linuxbios-bounces+alan=icerasemi.com@linuxbios.org] On Behalf Of Alan Alexander Sent: 23 November 2007 11:24 To: Nikolay Petukhov; linuxbios@linuxbios.org Subject: Re: [LinuxBIOS] flashrom support for AMD CS5536
Thanks for the information. The patch certainly seems to have cured that problem. Unfortunately, although I can now write to the Flash (and verify the contents) it seems that the image is over-written when the board reboots (i.e. the BIOS change doesn't take effect and a subsequent verification of the previously verified image fails).
Presumably there's a shadow copy left unmodified somewhere?
Any ideas?
Best regards,
Alan Alexander mailto:alan@icerasemi.com Software Toolchain Engineering Icera Inc, 2520 The Quadrant, Aztec west, Bristol BS32 4AQ, UK Tel. +44 (0)1454 284805 -----Original Message----- From: linuxbios-bounces+alan=icerasemi.com@linuxbios.org [mailto:linuxbios-bounces+alan=icerasemi.com@linuxbios.org] On Behalf Of Nikolay Petukhov Sent: 23 November 2007 07:06 To: linuxbios@linuxbios.org Subject: Re: [LinuxBIOS] flashrom support for AMD CS5536
2007/11/22, "Alan Alexander" alan@IceraSemi.com:
Hi all,
I've recently checked out and built revision 2977 of flashrom in order to apply a simple BIOS configuration change to approx 200 embedded
Linux
devices. Unfortunately although flashrom is able to read the contents of the
BIOS
flash, writes fail to take (verification fails).
The system basics are as follows: IEI NanoLX Board (AMD LX800 + CS5536 + Winbond W83627EHG) http://www.ieiworld.com/en/product_IPC.asp?model=NANO-LX Linux Kernel Version 2.6.20 Flash part identified by flashrom as Pm49FL004 at physical address 0xfff80000 (512 KB)
I see from the source code that the CS5536 chipset is directly
supported
and that the code attempts to remove the write protection via MSR 0x1808. This all looks good and yet the writes fail to take. I assume therefore that this board is using some GPIOs to disable writes to the BIOS flash?
Does it sound likely that GPIOs are causing the write problem that I
am
seeing? Does anyone know how I might go about figuring out which GPIOs to look at?
Any help would be very appreciated.
Best regards,
Alan Alexander mailto:alan@icerasemi.com Icera Inc, 2520 The Quadrant, Aztec west, Bristol BS32 4AQ, UK Tel. +44 (0)1454 284805
I have the same problems with flashrom on iei/pcisa-lx. http://www.ieiworld.com/en/product_IPC.asp?model=PCISA-LX (Flash Pm49FL004)
Info from pm49fl002/4's manual: Pm49fl002/4 write protected at power up. This patch fix it.