[flashrom] flashrom support for Spansion S25FL128S

Ron_Taylor at DELL.com Ron_Taylor at DELL.com
Tue Feb 17 11:46:16 CET 2015


Dell - Internal Use - Confidential
Hello,

Thanks for your help in this matter. I'm following up with the latest.

The board has actual part Spansion S25FL128SAGNFI003
The flashrom message says:
> Multiple flash chip definitions match the detected chip(s): "S25FL127S-64kB", "S25FL127S-256kB", "S25FL128P......0", "S25FL128P......1", "S25FL128S......0", "S25FL128S......1", "S25FL129P......0", "S25FL129P......1"
> Please specify which chip definition to use with the -c option.

I choose options starting with "S25FL128S" which only leaves "S25FL128S......0", "S25FL128S......1"
I have tried with the following commands, but read still fails, see output below.

Also, in the output I see instruction to add:
-p internal:laptop=this_is_not_a_laptop
and
                -p internal:ich_spi_force=yes
Assuming we get to the write stage, can these be chained together, e.g.:
                -p internal:laptop=this_is_not_a_laptop:ich_spi_force=yes

READ Commands that failed, with logs:
# ./flashrom.0.9.8 -p internal:laptop=this_is_not_a_laptop -c S25FL128S......0 -r curr
flashrom v0.9.8-rc1-r1883 on Linux 3.14.0-rc8 (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OK.
========================================================================
WARNING! You may be running flashrom on an unsupported laptop. We could
not detect this for sure because your vendor has not setup the SMBIOS
tables correctly. You can enforce execution by adding
'-p internal:laptop=this_is_not_a_laptop' to the command line, but
please read the following warning if you are not sure.

Laptops, notebooks and netbooks are difficult to support and we
recommend to use the vendor flashing utility. The embedded controller
(EC) in these machines often interacts badly with flashing.
See the manpage and http://www.flashrom.org/Laptops for details.

If flash is shared with the EC, erase is guaranteed to brick your laptop
and write may brick your laptop.
Read and probe may irritate your EC and cause fan failure, backlight
failure and sudden poweroff.
You have been warned.
========================================================================
Proceeding anyway because user forced us to.
Found chipset "Intel Avoton/Rangeley".
This chipset is marked as untested. If you are using an up-to-date version
of flashrom *and* were (not) able to successfully update your firmware with it,
then please email a report to flashrom at flashrom.org including a verbose (-V) log.
Thank you!
Enabling flash write... Warning: SPI Configuration Lockdown activated.
FREG0: Warning: Flash Descriptor region (0x00000000-0x0000ffff) is read-only.
Not all flash regions are freely accessible by flashrom. This is most likely
due to an active ME. Please see http://flashrom.org/ME for details.
Writes have been disabled for safety reasons. You can enforce write
support with the ich_spi_force programmer option, but you will most likely
harm your hardware! If you force flashrom you will get no support if
something breaks. On a few mainboards it is possible to enable write
access by setting a jumper (see its documentation or the board itself).
OK.
Found Spansion flash chip "S25FL128S......0" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
===
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 at flashrom.org if any of the above operations
work correctly for you with this flash chip. Please include the flashrom log
file for all operations you tested (see the man page for details), and mention
which mainboard or programmer you tested in the subject line.
Thanks for your help!
Reading flash... Transaction error!
Read operation failed!
FAILED.

# ./flashrom.0.9.8 -p internal:laptop=this_is_not_a_laptop  -c S25FL128S......1 -Vr curr
flashrom v0.9.8-rc1-r1883 on Linux 3.14.0-rc8 (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org

flashrom was built with libpci 3.2.1, GCC 4.8.2, little endian
Command line (6 args): ./flashrom.0.9.8 -p internal:laptop=this_is_not_a_laptop -c S25FL128S......1 -Vr curr
Calibrating delay loop... OS timer resolution is 2 usecs, 799M loops per second, 10 myus = 11 us, 100 myus = 101 us, 1000 myus = 1000 us, 10000 myus = 10014 us, 8 myus = 9 us, OK.
Initializing internal programmer
No coreboot table found.
Using Internal DMI decoder.
DMI chassis-type is not specific enough.
DMI string system-manufacturer: "To be filled by O.E.M."
DMI string system-product-name: "To be filled by O.E.M."
DMI string system-version: "To be filled by O.E.M."
DMI string baseboard-manufacturer: "To be filled by O.E.M."
DMI string baseboard-product-name: "To be filled by O.E.M."
DMI string baseboard-version: "To be filled by O.E.M."
========================================================================
WARNING! You may be running flashrom on an unsupported laptop. We could
not detect this for sure because your vendor has not setup the SMBIOS
tables correctly. You can enforce execution by adding
'-p internal:laptop=this_is_not_a_laptop' to the command line, but
please read the following warning if you are not sure.

Laptops, notebooks and netbooks are difficult to support and we
recommend to use the vendor flashing utility. The embedded controller
(EC) in these machines often interacts badly with flashing.
See the manpage and http://www.flashrom.org/Laptops for details.

If flash is shared with the EC, erase is guaranteed to brick your laptop
and write may brick your laptop.
Read and probe may irritate your EC and cause fan failure, backlight
failure and sudden poweroff.
You have been warned.
========================================================================
Proceeding anyway because user forced us to.
Found chipset "Intel Avoton/Rangeley" with PCI ID 8086:1f38.
This chipset is marked as untested. If you are using an up-to-date version
of flashrom *and* were (not) able to successfully update your firmware with it,
then please email a report to flashrom at flashrom.org including a verbose (-V) log.
Thank you!
Enabling flash write... Root Complex Register Block address = 0xfed1c000
GCS = 0x40000c01: BIOS Interface Lock-Down: enabled, Boot BIOS Straps: 0x3 (SPI)
Top Swap: not enabled
0xfff80000/0xffb80000 FWH IDSEL: 0x0
0xfff00000/0xffb00000 FWH IDSEL: 0x0
0xffe80000/0xffa80000 FWH IDSEL: 0x1
0xffe00000/0xffa00000 FWH IDSEL: 0x1
0xffd80000/0xff980000 FWH IDSEL: 0x2
0xffd00000/0xff900000 FWH IDSEL: 0x2
0xffc80000/0xff880000 FWH IDSEL: 0x3
0xffc00000/0xff800000 FWH IDSEL: 0x3
0xfff80000/0xffb80000 FWH decode enabled
0xfff00000/0xffb00000 FWH decode enabled
0xffe80000/0xffa80000 FWH decode enabled
0xffe00000/0xffa00000 FWH decode enabled
0xffd80000/0xff980000 FWH decode enabled
0xffd00000/0xff900000 FWH decode enabled
0xffc80000/0xff880000 FWH decode enabled
0xffc00000/0xff800000 FWH decode enabled
0xff700000/0xff300000 FWH decode enabled
0xff600000/0xff200000 FWH decode enabled
0xff500000/0xff100000 FWH decode enabled
0xff400000/0xff000000 FWH decode enabled
Maximum FWH chip size: 0x100000 bytes
SPI_BASE_ADDRESS = 0xfed01000
SPI Read Configuration: prefetching disabled, caching enabled,
BIOS_CNTL = 0x01: BIOS Lock Enable: disabled, BIOS Write Enable: enabled
0x04: 0xe01c (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=1, BERASE=3, SCIP=0, FDOPSS=1, FDV=1, FLOCKDN=1
Warning: SPI Configuration Lockdown activated.
Reading OPCODES... done
0x06: 0x0000 (HSFC)
HSFC: FGO=0, FCYCLE=0, FDBC=0, SME=0
0x50: 0x00007a7b (FRAP)
BMWAG 0x00, BMRAG 0x00, BRWA 0x7a, BRRA 0x7b
0x54: 0x000f0000 FREG0: Warning: Flash Descriptor region (0x00000000-0x0000ffff) is read-only.
0x58: 0x07ff0200 FREG1: BIOS region (0x00200000-0x007fffff) is read-write.
Not all flash regions are freely accessible by flashrom. This is most likely
due to an active ME. Please see http://flashrom.org/ME for details.
Writes have been disabled for safety reasons. You can enforce write
support with the ich_spi_force programmer option, but you will most likely
harm your hardware! If you force flashrom you will get no support if
something breaks. On a few mainboards it is possible to enable write
access by setting a jumper (see its documentation or the board itself).
0x90: 0x94 (SSFS)
SSFS: SCIP=0, FDONE=1, FCERR=0, AEL=1
0x91: 0xf80000 (SSFC)
SSFC: SCGO=0, ACS=0, SPOP=0, COP=0, DBC=0, SME=0, SCF=0
0x94: 0x0006     (PREOP)
0x96: 0x043b     (OPTYPE)
0x98: 0x05d80302 (OPMENU)
0x9C: 0x0000019f (OPMENU+4)
0xC4: 0x0080d807 (LVSCC)
LVSCC: BES=0x3, WG=1, WSR=0, WEWS=0, EO=0xd8, VCL=1
0xC8: 0x0000d807 (UVSCC)
UVSCC: BES=0x3, WG=1, WSR=0, WEWS=0, EO=0xd8
0xD0: 0x00000000 (FPB)
OK.
The following protocols are supported: FWH, SPI.
Probing for Spansion S25FL128S......1, 16384 kB: probe_spi_rdid_generic: id1 0x01, id2 0x2018
Found Spansion flash chip "S25FL128S......1" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
Chip status register is 0x00.
Chip status register: Status Register Write Disable (SRWD, SRP, ...) is not set
Chip status register: Program Fail Flag (P_FAIL) is not set
Chip status register: Erase Fail Flag (E_FAIL) is not set
Chip status register: Block Protect 2 (BP2) is not set
Chip status register: Block Protect 1 (BP1) is not set
Chip status register: Block Protect 0 (BP0) is not set
Chip status register: Write Enable Latch (WEL) is not set
Chip status register: Write In Progress (WIP/BUSY) is not set
This chip may contain one-time programmable memory. flashrom cannot read
and may never be able to write it, hence it may not be able to completely
clone the contents of this chip (see man page for details).
===
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 at flashrom.org if any of the above operations
work correctly for you with this flash chip. Please include the flashrom log
file for all operations you tested (see the man page for details), and mention
which mainboard or programmer you tested in the subject line.
Thanks for your help!
Reading flash... Transaction error!
SSFS: SCIP=0, FDONE=1, FCERR=1, AEL=1
SSFC: SCGO=0, ACS=0, SPOP=0, COP=1, DBC=63, SME=0, SCF=0
Running OPCODE 0x03 failed at address 0x010000 (payload length was 64).
Read operation failed!
FAILED.

Thanks,
Ron

-----Original Message-----
From: Antonio Ospite [mailto:ao2 at ao2.it]
Sent: Tuesday, February 17, 2015 12:38 AM
To: flashrom at flashrom.org
Cc: vidwer at gmail.com; Taylor, Ron; Natarajan, Kannan; flashrom at flashrom.org
Subject: Re: [flashrom] flashrom support for Spansion S25FL128S

On Mon, 16 Feb 2015 20:50:39 -0600
wrote:

>
> Hi Idwer
>
> I had fixed the compilation issues and could generate the binary.
> I tried to read the bios chip first, but it does not seem to recognize
> S25FL128S
>
> (1) It lists the chip as supported:
> flashrom# ./flashrom --list-supported | grep S25FL128S
> Spansion S25FL128S......0 16384 SPI
> Spansion S25FL128S......1 16384 SPI
>
>
> (2) However when it is specified with --chip options, it says not supported or unknown.
>
> flashrom# ./flashrom --chip S25FL128S

flashrom# ./flashrom --chip "SS25FL128S......0"

or the other one depending on your actual chip.

The dots are placeholders for variable characters in the chip name for different chip variants.

And remember to add the -c option also when you perform the other operations, flashrom still can't discriminate between the variants on its own.

> flashrom v0.9.8-rc1-r1883 on Linux 3.14.0-rc8 (x86_64) flashrom is
> free software, get the source code at http://www.flashrom.org
>
> Error: Unknown chip 'S25FL128S' specified.
> Run flashrom -L to view the hardware supported in this flashrom version.
>
>
> (3) Tried to read the chip first. It could not determine the chip type.
>
>
> ./flashrom -p internal:laptop=this_is_not_a_laptop -r file_name.bin
> flashrom v0.9.8-rc1-r1883 on Linux 3.14.0-rc8 (x86_64) flashrom is
> free software, get the source code at http://www.flashrom.org
>
> Calibrating delay loop... OK.
> ======================================================================
> == WARNING! You may be running flashrom on an unsupported laptop. We
> could not detect this for sure because your vendor has not setup the
> SMBIOS tables correctly. You can enforce execution by adding '-p
> internal:laptop=this_is_not_a_laptop' to the command line, but please
> read the following warning if you are not sure.
>
> Laptops, notebooks and netbooks are difficult to support and we
> recommend to use the vendor flashing utility. The embedded controller
> (EC) in these machines often interacts badly with flashing.
> See the manpage and http://www.flashrom.org/Laptops for details.
>
> If flash is shared with the EC, erase is guaranteed to brick your
> laptop and write may brick your laptop.
> Read and probe may irritate your EC and cause fan failure, backlight
> failure and sudden poweroff.
> You have been warned.
> ======================================================================
> == Proceeding anyway because user forced us to.
> Found chipset "Intel Avoton/Rangeley".
> This chipset is marked as untested. If you are using an up-to-date
> version of flashrom *and* were (not) able to successfully update your
> firmware with it, then please email a report to flashrom at flashrom.org including a verbose (-V) log.
> Thank you!
> Enabling flash write... Warning: SPI Configuration Lockdown activated.
> OK.
> Found Spansion flash chip "S25FL127S-64kB" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL127S-256kB" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL128P......0" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL128P......1" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL128S......0" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL128S......1" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL129P......0" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Found Spansion flash chip "S25FL129P......1" (16384 kB, SPI) mapped at physical address 0x00000000ff000000.
> Multiple flash chip definitions match the detected chip(s): "S25FL127S-64kB", "S25FL127S-256kB", "S25FL128P......0", "S25FL128P......1", "S25FL128S......0", "S25FL128S......1", "S25FL129P......0", "S25FL129P......1"
> Please specify which chip definition to use with the -c option.
>

IOT just do what flashrom is telling you here :)

Ciao,
Antonio

--
Antonio Ospite
http://ao2.it

A: Because it messes up the order in which people normally read text.
See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.flashrom.org/pipermail/flashrom/attachments/20150217/0c5cae96/attachment.html>


More information about the flashrom mailing list