Good morning.
You are right, the revised message was sent to your mailbox only. I am resending it to flashrom(a)flashrom.org<mailto:flashrom@flashrom.org>, too, as you requested.
[ULP-NG]# ./flashrom -p internal -V -c W25Q256JV_M -w COB_G509_000_v007.BIN
flashrom v1.1 on Linux 4.15.18-1-ULP-NG+ (x86_64)
flashrom is free software, get the source code at https://flashrom.org<https://clicktime.symantec.com/3Vrx3RWZjMwHS9TMzsSaiWF6H2?u=https%3A%2F%2Ff…>
flashrom was built with libpci 3.5.2, GCC 7.4.0, little endian
Command line (7 args): ./flashrom -p internal -V -c W25Q256JV_M -w COB_G509_000_
v007.BIN
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Initializing internal programmer
/sys/class/mtd/mtd0 does not exist
No coreboot table found.
Using Internal DMI decoder.
DMI string chassis-type: "Desktop"
DMI string system-manufacturer: "Default string"
DMI string system-product-name: "Default string"
DMI string system-version: "Default string"
DMI string baseboard-manufacturer: "Default string"
DMI string baseboard-product-name: "Default string"
DMI string baseboard-version: "Default string"
Found chipset "Intel C627 Series Chipset (QS/PRQ)" with PCI ID 8086:a1c6.
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(a)flashrom.org<mailto:flashrom@flashrom.org> including a verbose (-V) log
.
Thank you!
Enabling flash write... BIOS_SPI_BC = 0x8aa: BIOS Interface Lock-Down: enabled,
Boot BIOS Straps: 0x0 (SPI)
Top Swap: not enabled
SPI Read Configuration: prefetching enabled, caching enabled,
BIOS_CNTL = 0xaa: BIOS Lock Enable: enabled, BIOS Write Enable: disabled
Warning: BIOS region SMM protection is enabled!
Warning: Setting Bios Control at 0xdc from 0xaa to 0x89 failed.
New value is 0xaa.
SPIBAR = 0x00007f4dca80c000 (phys = 0xfe010000)
0x04: 0xc800 (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=0, SCIP=0, PRR34_LOCKDN=0, WRSDIS=1, FDOPSS=0, FDV=1
, FLOCKDN=1
SPI Configuration is locked down.
The Flash Descriptor Override Strap-Pin is set. Restrictions implied by
the Master Section of the flash descriptor are NOT in effect. Please note
that Protected Range (PR) restrictions still apply.
Reading OPCODES... done
0x06: 0x0200 (HSFC)
HSFC: FGO=0, HSFC=0, WET=0, FDBC=2, SME=0
0x0c: 0x00000000 (DLOCK)
DLOCK: BMWAG_LOCKDN=0, BMRAG_LOCKDN=0, SBMWAG_LOCKDN=0, SBMRAG_LOCKDN=0,
PR0_LOCKDN=0, PR1_LOCKDN=0, PR2_LOCKDN=0, PR3_LOCKDN=0, PR4_LOCKDN=0,
SSEQ_LOCKDN=0
0x50: 0x0000ffff (FRAP)
BMWAG 0x00, BMRAG 0x00, BRWA 0xff, BRRA 0xff
0x54: 0x00000000 FREG0: Flash Descriptor region (0x00000000-0x00000fff) is read-
write.
0x58: 0x1fff1000 FREG1: BIOS region (0x01000000-0x01ffffff) is read-write.
0x5C: 0x0a350003 FREG2: Management Engine region (0x00003000-0x00a35fff) is read
-write.
0x60: 0x00020001 FREG3: Gigabit Ethernet region (0x00001000-0x00002fff) is read-
write.
0x80: 0x0fef0a36 FREG11: unknown region (0x00a36000-0x00feffff) has unknown perm
issions.
0xa0: 0xc0 (SSFS)
SSFS: SCIP=0, FDONE=0, FCERR=0, AEL=0
0xa1: 0xfe0000 (SSFC)
SSFC: SCGO=0, ACS=0, SPOP=0, COP=0, DBC=0, SME=0, SCF=6
0xa4: 0x0000 (PREOP)
0xa6: 0x0000 (OPTYPE)
0xa8: 0x00000000 (OPMENU)
0xac: 0x00000000 (OPMENU+4)
Enabling hardware sequencing because some important opcode is locked.
PROBLEMS, continuing anyway
The following protocols are supported: Parallel, LPC, FWH, Programmer-specific.
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.
Restoring PCI config space for 00:1f:5 reg 0xdc
[ULP-NG]#
From: David Hendricks <david.hendricks(a)gmail.com>
Sent: יום ה 14 נובמבר 2019 20:52
To: Misha Wiesel <MishaW(a)Radware.com>
Subject: Re: flashrom(a)flashrom.org post from mishaw(a)radware.com requires approval
Thanks, Misha. One more thing - Can you please send the revised message to the mailing list? It seems it was only sent to my personal email account.
On Thu, Nov 14, 2019 at 1:01 AM Misha Wiesel <MishaW(a)radware.com<mailto:MishaW@radware.com>> wrote:
Good morning.
As you say, I copy the output of “exact chip” with -V (not -VVV) into the message.
Also, as far as I saw during my own minor “experiments”, it seems the flashrom does not detect the SPI bus presence at the programmer side…
[ULP-NG]# ./flashrom -p internal -V -c W25Q256JV_M -w COB_G509_000_v007.BIN
flashrom v1.1 on Linux 4.15.18-1-ULP-NG+ (x86_64)
flashrom is free software, get the source code at https://flashrom.org<https://clicktime.symantec.com/3Vrx3RWZjMwHS9TMzsSaiWF6H2?u=https%3A%2F%2Ff…>
flashrom was built with libpci 3.5.2, GCC 7.4.0, little endian
Command line (7 args): ./flashrom -p internal -V -c W25Q256JV_M -w COB_G509_000_
v007.BIN
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Initializing internal programmer
/sys/class/mtd/mtd0 does not exist
No coreboot table found.
Using Internal DMI decoder.
DMI string chassis-type: "Desktop"
DMI string system-manufacturer: "Default string"
DMI string system-product-name: "Default string"
DMI string system-version: "Default string"
DMI string baseboard-manufacturer: "Default string"
DMI string baseboard-product-name: "Default string"
DMI string baseboard-version: "Default string"
Found chipset "Intel C627 Series Chipset (QS/PRQ)" with PCI ID 8086:a1c6.
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(a)flashrom.org<mailto:flashrom@flashrom.org> including a verbose (-V) log
.
Thank you!
Enabling flash write... BIOS_SPI_BC = 0x8aa: BIOS Interface Lock-Down: enabled,
Boot BIOS Straps: 0x0 (SPI)
Top Swap: not enabled
SPI Read Configuration: prefetching enabled, caching enabled,
BIOS_CNTL = 0xaa: BIOS Lock Enable: enabled, BIOS Write Enable: disabled
Warning: BIOS region SMM protection is enabled!
Warning: Setting Bios Control at 0xdc from 0xaa to 0x89 failed.
New value is 0xaa.
SPIBAR = 0x00007f4dca80c000 (phys = 0xfe010000)
0x04: 0xc800 (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=0, SCIP=0, PRR34_LOCKDN=0, WRSDIS=1, FDOPSS=0, FDV=1
, FLOCKDN=1
SPI Configuration is locked down.
The Flash Descriptor Override Strap-Pin is set. Restrictions implied by
the Master Section of the flash descriptor are NOT in effect. Please note
that Protected Range (PR) restrictions still apply.
Reading OPCODES... done
0x06: 0x0200 (HSFC)
HSFC: FGO=0, HSFC=0, WET=0, FDBC=2, SME=0
0x0c: 0x00000000 (DLOCK)
DLOCK: BMWAG_LOCKDN=0, BMRAG_LOCKDN=0, SBMWAG_LOCKDN=0, SBMRAG_LOCKDN=0,
PR0_LOCKDN=0, PR1_LOCKDN=0, PR2_LOCKDN=0, PR3_LOCKDN=0, PR4_LOCKDN=0,
SSEQ_LOCKDN=0
0x50: 0x0000ffff (FRAP)
BMWAG 0x00, BMRAG 0x00, BRWA 0xff, BRRA 0xff
0x54: 0x00000000 FREG0: Flash Descriptor region (0x00000000-0x00000fff) is read-
write.
0x58: 0x1fff1000 FREG1: BIOS region (0x01000000-0x01ffffff) is read-write.
0x5C: 0x0a350003 FREG2: Management Engine region (0x00003000-0x00a35fff) is read
-write.
0x60: 0x00020001 FREG3: Gigabit Ethernet region (0x00001000-0x00002fff) is read-
write.
0x80: 0x0fef0a36 FREG11: unknown region (0x00a36000-0x00feffff) has unknown perm
issions.
0xa0: 0xc0 (SSFS)
SSFS: SCIP=0, FDONE=0, FCERR=0, AEL=0
0xa1: 0xfe0000 (SSFC)
SSFC: SCGO=0, ACS=0, SPOP=0, COP=0, DBC=0, SME=0, SCF=6
0xa4: 0x0000 (PREOP)
0xa6: 0x0000 (OPTYPE)
0xa8: 0x00000000 (OPMENU)
0xac: 0x00000000 (OPMENU+4)
Enabling hardware sequencing because some important opcode is locked.
PROBLEMS, continuing anyway
The following protocols are supported: Parallel, LPC, FWH, Programmer-specific.
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.
Restoring PCI config space for 00:1f:5 reg 0xdc
[ULP-NG]#
From: David Hendricks <david.hendricks(a)gmail.com<mailto:david.hendricks@gmail.com>>
Sent: יום ה 14 נובמבר 2019 07:56
To: Misha Wiesel <MishaW(a)Radware.com<mailto:MishaW@Radware.com>>
Subject: Re: flashrom(a)flashrom.org<mailto:flashrom@flashrom.org> post from mishaw(a)radware.com<mailto:mishaw@radware.com> requires approval
Hello Misha,
Your e-mail got stuck in the moderation queue due to the large attachments. I suggest copy & pasting write-flash-exact-chip.log directly into the body of the e-mail. The other logs are quite large (-V is usually sufficient, -VVV is extra verbose for development) and might not be much help.
On Wed, Nov 13, 2019 at 8:37 AM <flashrom-owner(a)flashrom.org<mailto:flashrom-owner@flashrom.org>> wrote:
As list administrator, your authorization is requested for the
following mailing list posting:
List: flashrom(a)flashrom.org<mailto:flashrom@flashrom.org>
From: mishaw(a)radware.com<mailto:mishaw@radware.com>
Subject: Flashrom 1.1 + C627 board + W25Q256* flash chip
The message is being held because:
The message is not from a list member
At your convenience, visit your dashboard to approve or deny the
request.
---------- Forwarded message ----------
From: Misha Wiesel <MishaW(a)radware.com<mailto:MishaW@radware.com>>
To: "flashrom(a)flashrom.org<mailto:flashrom@flashrom.org>" <flashrom(a)flashrom.org<mailto:flashrom@flashrom.org>>
Cc:
Bcc:
Date: Wed, 13 Nov 2019 16:37:22 +0000
Subject: Flashrom 1.1 + C627 board + W25Q256* flash chip
Good morning.
I am trying to write the SPI flash using the Fashrom v1.1 for C627 board (Intel PCH) and flash chip W25Q256 JV M.
According to release notes for version 1.1, these HW components are supported already by flashrom. But I encounter problems. As it is being asked by flashrom utility, I report about it. Following some details:
1. First, I read the existing flash. See the attached log file “read-flash.log”.
2. Then, I try to write the flash (from its original image) using the -c option. The write fails. See the attached log “write-flash-exact-chip.log”.
3. Next, I try to write the flash (from the same image) followed by verification, but without -c option. See the attached log “write-verify-flash.log”.
a. If it will help… The verification reports an error at address 0x1000008f (values f8 vs f0). Comparison of original and read from flash chip images shows the same difference at the same offset.
4. The flashrom I used was downloaded from the flashrom.org<https://clicktime.symantec.com/3MEY6WtGEXZe52MGS5LGKvf6H2?u=http%3A%2F%2Ffl…>, version 1.1. Compiled locally under Ubuntu 18.04:
a. Build machine kernel version: 4.15.0
b. Target machine kernel version: 4.15.18
c. ‘make’ version : GNU Make 4.1
d. ‘cc’ version : cc (Ubuntu 7.4.0-1ubunutu-1~18/04/1) 7.4.0
e. Build command: make CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no
5. If it is essential: the build environment and the target are not the same machine. Both machines are x86_64, running kernel 4.15 (different revisions) and Ubuntu 18.04 (different set of packages installed).
---------- Forwarded message ----------
From: flashrom-request(a)flashrom.org<mailto:flashrom-request@flashrom.org>
To:
Cc:
Bcc:
Date: Wed, 13 Nov 2019 16:37:35 +0000
Subject: confirm 4a0a115cd8f10c51539c5dcaa3861e3efba29d0f
If you reply to this message, keeping the Subject: header intact,
Mailman will discard the held message. Do this if the message is
spam. If you reply to this message and include an Approved: header
with the list password in it, the message will be approved for posting
to the list. The Approved: header can also appear in the first line
of the body of the reply.
flashrom v1.1-rc1-108-g1a11949 on Linux 5.3.11-arch1-1 (x86_64)
flashrom is free software, get the source code at https://flashrom.org
flashrom was built with libpci 3.6.2, GCC 9.2.0, little endian
Command line (3 args): flashrom -p internal -V
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Initializing internal programmer
/sys/class/mtd/mtd0 does not exist
No coreboot table found.
Using Internal DMI decoder.
DMI string chassis-type: "Desktop"
DMI string system-manufacturer: "Gigabyte Technology Co., Ltd."
DMI string system-product-name: "B360 HD3P-LM"
DMI string system-version: "Default string"
DMI string baseboard-manufacturer: "Gigabyte Technology Co., Ltd."
DMI string baseboard-product-name: "B360HD3PLM-CF"
DMI string baseboard-version: "Default string"
Found ITE Super I/O, ID 0x8686 on port 0x2e
Found chipset "Intel B360" with PCI ID 8086:a308.
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(a)flashrom.org including a verbose
(-V) log.
Thank you!
Enabling flash write... BIOS_SPI_BC = 0x888: BIOS Interface Lock-Down:
enabled, Boot BIOS Straps: 0x0 (SPI)
Top Swap: not enabled
SPI Read Configuration: prefetching enabled, caching enabled,
BIOS_CNTL = 0x89: BIOS Lock Enable: disabled, BIOS Write Enable: enabled
SPIBAR = 0x00007fe5203ec000 (phys = 0xfe010000)
0x04: 0xe800 (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=0, SCIP=0, PRR34_LOCKDN=0, WRSDIS=1, FDOPSS=1,
FDV=1, FLOCKDN=1
SPI Configuration is locked down.
Reading OPCODES... done
0x06: 0x3f00 (HSFC)
HSFC: FGO=0, HSFC=0, WET=0, FDBC=63, SME=0
0x0c: 0x00000000 (DLOCK)
DLOCK: BMWAG_LOCKDN=0, BMRAG_LOCKDN=0, SBMWAG_LOCKDN=0, SBMRAG_LOCKDN=0,
PR0_LOCKDN=0, PR1_LOCKDN=0, PR2_LOCKDN=0, PR3_LOCKDN=0, PR4_LOCKDN=0,
SSEQ_LOCKDN=0
0x50: 0x0000ffff (FRAP)
BMWAG 0x00, BMRAG 0x00, BRWA 0xff, BRRA 0xff
0x54: 0x00000000 FREG0: Flash Descriptor region (0x00000000-0x00000fff) is
read-write.
0x58: 0x0fff0300 FREG1: BIOS region (0x00300000-0x00ffffff) is read-write.
0x5C: 0x02ff0003 FREG2: Management Engine region (0x00003000-0x002fffff) is
read-write.
0x60: 0x00020001 FREG3: Gigabit Ethernet region (0x00001000-0x00002fff) is
read-write.
0xa0: 0x80 (SSFS)
SSFS: SCIP=0, FDONE=0, FCERR=0, AEL=0
0xa1: 0xfe0000 (SSFC)
SSFC: SCGO=0, ACS=0, SPOP=0, COP=0, DBC=0, SME=0, SCF=6
0xa4: 0x0000 (PREOP)
0xa6: 0x0000 (OPTYPE)
0xa8: 0x00000000 (OPMENU)
0xac: 0x00000000 (OPMENU+4)
0xc4: 0xf1d82085 (LVSCC)
LVSCC: BES=0x1, WG=1, WSR=0, WEWS=0, EO=0x20, VCL=1
0xc8: 0x20252025 (UVSCC)
UVSCC: BES=0x1, WG=1, WSR=0, WEWS=0, EO=0x20
Enabling hardware sequencing because some important opcode is locked.
OK.
The following protocols are supported: Parallel, LPC, FWH,
Programmer-specific.
Probing for Programmer Opaque flash chip, 0 kB: Hardware sequencing reports
1 attached SPI flash chip with a density of 16384 kB.
Found Programmer flash chip "Opaque flash chip" (16384 kB,
Programmer-specific) mapped at physical address 0x0000000000000000.
Probing for AMD Am29F002(N)BB, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for AMD Am29F002(N)BT, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for AMD Am29F010, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29F010A/B, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29F016D, 2048 kB: probe_jedec_common: id1 0x48, id2 0x89,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29F040, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29F040B, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29F080, 1024 kB: probe_jedec_common: id1 0x00, id2 0x00,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29F080B, 1024 kB: probe_jedec_common: id1 0x00, id2 0x00,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29LV001BB, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29LV001BT, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29LV002BB, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for AMD Am29LV002BT, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for AMD Am29LV004BB, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29LV004BT, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29LV008BB, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29LV008BT, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMD Am29LV040B, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMD Am29LV081B, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for AMIC A29002B, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for AMIC A29002T, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for AMIC A29040B, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for AMIC A49LF040A, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Atmel AT29C010A, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Atmel AT29C020, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for Atmel AT29C040A, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Atmel AT29C512, 64 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Atmel AT49(H)F010, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Atmel AT49BV512, 64 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Atmel AT49F002(N), 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Atmel AT49F002(N)T, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Atmel AT49F020, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for Atmel AT49F040, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Atmel AT49F080, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Atmel AT49F080T, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Atmel AT49LH002, 256 kB: probe_82802ab: id1 0xe0, id2 0x18, id1
is normal flash content, id2 is normal flash content
Probing for Atmel AT49LH004, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for Atmel AT49LH00B4, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Bright BM29F040, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Catalyst CAT28F512, 64 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for ESMT F49B002UA, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for Eon EN29F002(A)(N)B, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Eon EN29F002(A)(N)T, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Eon EN29F010, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for Eon EN29GL064(A)B, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Eon EN29GL064(A)T, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Eon EN29GL064H/L, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Eon EN29GL128, 16384 kB: probe_jedec_29gl: man_id 0xff, dev_id
0xffffff, man_id parity violation, man_id seems to be normal flash content,
dev_id seems to be normal flash content
Probing for Eon EN29LV040(A), 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Eon EN29LV640B, 8192 kB: probe_en29lv640b: id1 0xffff, id2
0x00ff
Probing for Fujitsu MBM29F004BC, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Fujitsu MBM29F004TC, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Fujitsu MBM29F400BC, 512 kB: probe_jedec_common: id1 0x8b, id2
0x66, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Fujitsu MBM29F400TC, 512 kB: probe_jedec_common: id1 0x8b, id2
0x66, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Fujitsu MBM29LV160BE, 2048 kB: probe_jedec_common: id1 0x48,
id2 0x2d, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Fujitsu MBM29LV160TE, 2048 kB: probe_jedec_common: id1 0x48,
id2 0x2d, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Hyundai HY29F002B, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Hyundai HY29F002T, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Hyundai HY29F040A, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for ISSI IS29GL064B, 8192 kB: probe_jedec_29gl: man_id 0xff, dev_id
0xffffff, man_id parity violation, man_id seems to be normal flash content,
dev_id seems to be normal flash content
Probing for ISSI IS29GL064H/L, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for ISSI IS29GL064T, 8192 kB: probe_jedec_29gl: man_id 0xff, dev_id
0xffffff, man_id parity violation, man_id seems to be normal flash content,
dev_id seems to be normal flash content
Probing for ISSI IS29GL128H/L, 16384 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Intel 28F001BN/BX-B, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 28F001BN/BX-T, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 28F002BC/BL/BV/BX-T, 256 kB: probe_82802ab: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Intel 28F004B5/BE/BV/BX-B, 512 kB: probe_82802ab: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 28F004B5/BE/BV/BX-T, 512 kB: probe_82802ab: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 28F008S3/S5/SC, 512 kB: probe_82802ab: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 28F400BV/BX/CE/CV-B, 512 kB: probe_82802ab: id1 0x8b, id2
0x66, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 28F400BV/BX/CE/CV-T, 512 kB: probe_82802ab: id1 0x8b, id2
0x66, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Intel 82802AB, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for Intel 82802AC, 1024 kB: probe_82802ab: id1 0x00, id2 0x00, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for Macronix MX29F001B, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Macronix MX29F001T, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Macronix MX29F002(N)B, 256 kB: probe_jedec_common: id1 0xe0,
id2 0x18, id1 is normal flash content, id2 is normal flash content
Probing for Macronix MX29F002(N)T, 256 kB: probe_jedec_common: id1 0xe0,
id2 0x18, id1 is normal flash content, id2 is normal flash content
Probing for Macronix MX29F022(N)B, 256 kB: probe_jedec_common: id1 0xe0,
id2 0x18, id1 is normal flash content, id2 is normal flash content
Probing for Macronix MX29F022(N)T, 256 kB: probe_jedec_common: id1 0xe0,
id2 0x18, id1 is normal flash content, id2 is normal flash content
Probing for Macronix MX29F040, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Macronix MX29GL128F, 16384 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29GL320EB, 4096 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29GL320EH/L, 4096 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29GL320ET, 4096 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29GL640EB, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29GL640EH/L, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29GL640ET, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Macronix MX29LV040, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29C51000B, 64 kB: probe_jedec_common: id1 0xff,
id2 0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29C51000T, 64 kB: probe_jedec_common: id1 0xff,
id2 0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29C51400B, 512 kB: probe_jedec_common: id1 0x8b,
id2 0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29C51400T, 512 kB: probe_jedec_common: id1 0x8b,
id2 0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29LC51000, 64 kB: probe_jedec_common: id1 0xff,
id2 0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29LC51001, 128 kB: probe_jedec_common: id1 0xff,
id2 0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for MoselVitelic V29LC51002, 256 kB: probe_jedec_common: id1 0xe0,
id2 0x18, id1 is normal flash content, id2 is normal flash content
Probing for PMC Pm29F002B, 256 kB: Chip lacks correct probe timing
information, using default 10ms/40us. probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for PMC Pm29F002T, 256 kB: Chip lacks correct probe timing
information, using default 10ms/40us. probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for PMC Pm39LV010, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for PMC Pm39LV020, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for PMC Pm39LV040, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for PMC Pm39LV512, 64 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for PMC Pm49FL002, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for PMC Pm49FL004, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST28SF040A, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for SST SST29EE010, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST29EE020A, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for SST SST29LE010, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST29LE020, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for SST SST39SF010A, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST39SF020A, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for SST SST39SF040, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST39SF512, 64 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST39VF010, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST39VF020, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for SST SST39VF040, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST39VF080, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST39VF512, 64 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST49LF002A/B, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF003A/B, 384 kB: probe_jedec_common: id1 0x6a, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF004A/B, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF004C, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF008A, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF008C, 1024 kB: probe_82802ab: id1 0x00, id2 0x00,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST49LF016C, 2048 kB: probe_82802ab: id1 0x48, id2 0x89,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST49LF020, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF020A, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for SST SST49LF040, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for SST SST49LF040B, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF080A, 1024 kB: Chip lacks correct probe timing
information, using default 10ms/40us. probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for SST SST49LF160C, 2048 kB: probe_82802ab: id1 0x48, id2 0x89,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M29F002B, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for ST M29F002T/NT, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for ST M29F040B, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M29F400BB, 512 kB: probe_jedec_common: id1 0x8b, id2 0x66,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M29F400BT, 512 kB: probe_jedec_common: id1 0x8b, id2 0x66,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M29W010B, 128 kB: probe_jedec_common: id1 0xff, id2 0xff,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M29W040B, 512 kB: probe_jedec_common: id1 0x8b, id2 0xd3,
id1 parity violation, id1 is normal flash content, id2 is normal flash
content
Probing for ST M29W512B, 64 kB: probe_jedec_common: id1 0xff, id2 0xff, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FLW040A, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FLW040B, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FLW080A, 1024 kB: probe_82802ab: id1 0x00, id2 0x00, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FLW080B, 1024 kB: probe_82802ab: id1 0x00, id2 0x00, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FW002, 256 kB: probe_82802ab: id1 0xe0, id2 0x18, id1 is
normal flash content, id2 is normal flash content
Probing for ST M50FW016, 2048 kB: probe_82802ab: id1 0x48, id2 0x89, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FW040, 512 kB: probe_82802ab: id1 0x8b, id2 0xd3, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50FW080, 1024 kB: probe_82802ab: id1 0x00, id2 0x00, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50LPW080, 1024 kB: probe_82802ab: id1 0x00, id2 0x00, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for ST M50LPW116, 2048 kB: probe_82802ab: id1 0x48, id2 0x89, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for Sharp LH28F008BJT-BTLZ1, 1024 kB: probe_82802ab: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Sharp LHF00L04, 1024 kB: probe_82802ab: id1 0x00, id2 0x00, id1
parity violation, id1 is normal flash content, id2 is normal flash content
Probing for SyncMOS/MoselVitelic {F,S,V}29C51001B, 128 kB:
probe_jedec_common: id1 0xff, id2 0xff, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for SyncMOS/MoselVitelic {F,S,V}29C51001T, 128 kB:
probe_jedec_common: id1 0xff, id2 0xff, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for SyncMOS/MoselVitelic {F,S,V}29C51002B, 256 kB:
probe_jedec_common: id1 0xe0, id2 0x18, id1 is normal flash content, id2 is
normal flash content
Probing for SyncMOS/MoselVitelic {F,S,V}29C51002T, 256 kB:
probe_jedec_common: id1 0xe0, id2 0x18, id1 is normal flash content, id2 is
normal flash content
Probing for SyncMOS/MoselVitelic {F,S,V}29C51004B, 512 kB:
probe_jedec_common: id1 0x8b, id2 0xd3, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for SyncMOS/MoselVitelic {F,S,V}29C51004T, 512 kB:
probe_jedec_common: id1 0x8b, id2 0xd3, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for SyncMOS/MoselVitelic {S,V}29C31004B, 512 kB:
probe_jedec_common: id1 0x8b, id2 0xd3, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for SyncMOS/MoselVitelic {S,V}29C31004T, 512 kB:
probe_jedec_common: id1 0x8b, id2 0xd3, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for TI TMS29F002RB, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for TI TMS29F002RT, 256 kB: probe_jedec_common: id1 0xe0, id2 0x18,
id1 is normal flash content, id2 is normal flash content
Probing for Winbond W29C010(M)/W29C011A/W29EE011/W29EE012, 128 kB:
probe_jedec_common: id1 0xff, id2 0xff, id1 parity violation, id1 is normal
flash content, id2 is normal flash content
Probing for Winbond W29C010(M)/W29C011A/W29EE011/W29EE012-old, 128 kB: Old
Winbond W29* probe method disabled because the probing sequence puts the
AMIC A49LF040A in a funky state. Use 'flashrom -c
W29C010(M)/W29C011A/W29EE011/W29EE012-old' if you have a board with such a
chip.
Probing for Winbond W29C020(C)/W29C022, 256 kB: probe_jedec_common: id1
0xe0, id2 0x18, id1 is normal flash content, id2 is normal flash content
Probing for Winbond W29C040/P, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W29C512A/W29EE512, 64 kB: probe_jedec_common: id1 0xff,
id2 0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W29GL032CB, 4096 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W29GL032CH/L, 4096 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W29GL032CT, 4096 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W29GL064CB, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W29GL064CH/L, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W29GL064CT, 8192 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W29GL128C, 16384 kB: probe_jedec_29gl: man_id 0xff,
dev_id 0xffffff, man_id parity violation, man_id seems to be normal flash
content, dev_id seems to be normal flash content
Probing for Winbond W39F010, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39L010, 128 kB: probe_jedec_common: id1 0xff, id2
0xff, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39L020, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Winbond W39L040, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V040A, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V040B, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V040C, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V040FA, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V040FB, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V040FC, 512 kB: probe_jedec_common: id1 0x8b, id2
0xd3, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V080A, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V080FA, 1024 kB: probe_jedec_common: id1 0x00, id2
0x00, id1 parity violation, id1 is normal flash content, id2 is normal
flash content
Probing for Winbond W39V080FA (dual mode), 512 kB: probe_jedec_common: id1
0x8b, id2 0xd3, id1 parity violation, id1 is normal flash content, id2 is
normal flash content
Probing for Winbond W49F002U/N, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Winbond W49F020, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Winbond W49V002A, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Probing for Winbond W49V002FA, 256 kB: probe_jedec_common: id1 0xe0, id2
0x18, id1 is normal flash content, id2 is normal flash content
Found Programmer flash chip "Opaque flash chip" (16384 kB,
Programmer-specific).
No operations were specified.
Restoring PCI config space for 00:1f:5 reg 0xdc
Good morning.
I am trying to write the SPI flash using the Fashrom v1.1 for C627 board (Intel PCH) and flash chip W25Q256 JV M.
According to release notes for version 1.1, these HW components are supported already by flashrom. But I encounter problems. As it is being asked by flashrom utility, I report about it. Following some details:
1. First, I read the existing flash. See the attached log file “read-flash.log”.
2. Then, I try to write the flash (from its original image) using the -c option. The write fails. See the attached log “write-flash-exact-chip.log”.
3. Next, I try to write the flash (from the same image) followed by verification, but without -c option. See the attached log “write-verify-flash.log”.
* If it will help… The verification reports an error at address 0x1000008f (values f8 vs f0). Comparison of original and read from flash chip images shows the same difference at the same offset.
4. The flashrom I used was downloaded from the flashrom.org, version 1.1. Compiled locally under Ubuntu 18.04:
* Build machine kernel version: 4.15.0
* Target machine kernel version: 4.15.18
* ‘make’ version : GNU Make 4.1
* ‘cc’ version : cc (Ubuntu 7.4.0-1ubunutu-1~18/04/1) 7.4.0
* Build command: make CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no
5. If it is essential: the build environment and the target are not the same machine. Both machines are x86_64, running kernel 4.15 (different revisions) and Ubuntu 18.04 (different set of packages installed).
Hi
I would like to use your tool to mod my bios.
First step would be to create a backup of my BIOS:
# dmidecode 2.12
SMBIOS 2.7 present.
66 structures occupying 2563 bytes.
Table at 0x000EB4C0.
Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
Vendor: American Megatrends Inc.
Version: 4.6.5
Release Date: 10/11/2013
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 3072 kB
When I read that correctly the ROM Size is 3072 kB
# flashrom -r RDD516-NT.rom --programmer internal
flashrom v0.9.7-r1782 on Linux 4.4.184.x86_64.1 (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK.
Found chipset "Intel C206".
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(a)flashrom.org including a verbose (-V) log.
Thank you!
Enabling flash write... Warning: SPI Configuration Lockdown activated.
OK.
Found Macronix flash chip "MX25L6405(D)" (8192 kB, SPI) at physical address 0xff800000.
Found Macronix flash chip "MX25L6406E/MX25L6436E" (8192 kB, SPI) at physical address 0xff800000.
Found Macronix flash chip "MX25L6445E" (8192 kB, SPI) at physical address 0xff800000.
Multiple flash chip definitions match the detected chip(s): "MX25L6405(D)", "MX25L6406E/MX25L6436E", "MX25L6445E"
Please specify which chip definition to use with the -c <chipname> option.
Which chip should I select?
When I select one chipset a 8MB file is created. Shouldn’t a ROM back be only 3072 kB?
Any help is appreciated.
Best Regards
Jochen
i was using your awesome flashrom program, and it told me to send this info to you. so here it is. its the output of
sudo flashrom -VV -p ch341a_spi
Cheers!
Hello,
I've recently got a new laptop from Acer (Predator Helios 300) and I
tried to dump its BIOS from a separate PC running Kali linux with
flashrom v1.1. I used a BusPirate SPI programmer and a SOIC-8 clip on
the BIOS chip after carefully removing (clipping) it from the mobo.
Unfortunately the chip was not recognized, and the process failed to
read anything. I tested the connections by placing a spare Winbond chip
into the clip, and it read perfectly fine.
The laptop BIOS chip was labeled "XMC QH128AHIG" I did some googling for
this name and apparently there are some new SPI NOR Flash chips on the
market by a chinese company called XMC. My specific chip was actually
called "XM25QH128A", but there are whole series available.
Datasheet for my chip:
http://www.xmcwh.com/cn/Uploads/2019-08-26/5d63754eed501.pdf
Product pages:
http://www.xmcwh.com/index.php?s=/cms/list/61.htmlhttp://www.xmcwh.com/index.php?s=/cms/list/62.htmlhttp://www.xmcwh.com/index.php?s=/cms/list/63.html
Flashrom bus pirate log:
https://pastebin.com/c2c2tmj0
Regards,
D
Hi, I can report that both reading and writing work correctly with
GD25Q128 using the KGPE-D16 motherboard coreboot "internal" eeprom
flasher. I don't know if my chips are the B-type or C-type, so I
guessed "B", and it worked. Again, both readback and write worked, and
I was able to successfully boot the machine from the written eeprom.
Output below.
$dpkg -l | grep flashrom
ii flashrom
1.0-1 amd64 Identify, read,
write, erase, and verify BIOS/ROM/flash chips
$sudo flashrom -p internal -c GD25Q128B -w coreboot.rom
flashrom on Linux 5.3.5+ (x86_64)
flashrom is free software, get the source code at https://flashrom.org
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
coreboot table found at 0xb7ce0000.
Found chipset "AMD SB7x0/SB8x0/SB9x0".
Enabling flash write... OK.
Found GigaDevice flash chip "GD25Q128B" (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(a)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 old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.
flashrom v1.1-rc1-69-g188127e on Linux 4.15.0-45-generic (x86_64)
flashrom is free software, get the source code at https://flashrom.org
flashrom was built with libpci 3.3.1, GCC 5.4.0 20160609, little endian
Command line (3 args): ./flashrom --programmer internal -V
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Initializing internal programmer
/sys/class/mtd/mtd0 does not exist
No coreboot table found.
Using Internal DMI decoder.
No DMI table found.
Found chipset "Intel C246" with PCI ID 8086:a309.
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(a)flashrom.org including a verbose (-V) log.
Thank you!
Enabling flash write... BIOS_SPI_BC = 0x888: BIOS Interface Lock-Down: enabled, Boot BIOS Straps: 0x0 (SPI)
Top Swap: not enabled
SPI Read Configuration: prefetching enabled, caching enabled,
BIOS_CNTL = 0x89: BIOS Lock Enable: disabled, BIOS Write Enable: enabled
SPIBAR = 0x00007ffa5bcdb000 (phys = 0xfe010000)
0x04: 0xe800 (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=0, SCIP=0, PRR34_LOCKDN=0, WRSDIS=1, FDOPSS=1, FDV=1, FLOCKDN=1
SPI Configuration is locked down.
Reading OPCODES... done
0x06: 0x3f00 (HSFC)
HSFC: FGO=0, HSFC=0, WET=0, FDBC=63, SME=0
0x0c: 0x00000000 (DLOCK)
DLOCK: BMWAG_LOCKDN=0, BMRAG_LOCKDN=0, SBMWAG_LOCKDN=0, SBMRAG_LOCKDN=0,
PR0_LOCKDN=0, PR1_LOCKDN=0, PR2_LOCKDN=0, PR3_LOCKDN=0, PR4_LOCKDN=0,
SSEQ_LOCKDN=0
0x50: 0x00005afb (FRAP)
BMWAG 0x00, BMRAG 0x00, BRWA 0x5a, BRRA 0xfb
0x54: 0x00000000 FREG0: Flash Descriptor region (0x00000000-0x00000fff) is read-only.
0x58: 0x1fff1800 FREG1: BIOS region (0x01800000-0x01ffffff) is read-write.
0x5C: 0x0fdf0001 FREG2: Management Engine region (0x00001000-0x00fdffff) is locked.
0x68: 0x0fef0fe0 FREG5: Device Expansion region (0x00fe0000-0x00feffff) is read-only.
0xE8: 0x17ef0ff0 FREG14: unknown region (0x00ff0000-0x017effff) has unknown permissions.
0xEC: 0x17ff17f0 FREG15: unknown region (0x017f0000-0x017fffff) has unknown permissions.
Not all flash regions are freely accessible by flashrom. This is most likely
due to an active ME. Please see https://flashrom.org/ME for details.
At least some flash regions are read protected. You have to use a flash
layout and include only accessible regions. For write operations, you'll
additionally need the --noverify-all switch. See manpage for more details.
0xa0: 0x80 (SSFS)
SSFS: SCIP=0, FDONE=0, FCERR=0, AEL=0
0xa1: 0xfe0000 (SSFC)
SSFC: SCGO=0, ACS=0, SPOP=0, COP=0, DBC=0, SME=0, SCF=6
0xa4: 0x0000 (PREOP)
0xa6: 0x0000 (OPTYPE)
0xa8: 0x00000000 (OPMENU)
0xac: 0x00000000 (OPMENU+4)
0xc4: 0xf1d82045 (LVSCC)
LVSCC: BES=0x1, WG=1, WSR=0, WEWS=0, EO=0x20, VCL=1
0xc8: 0x20452045 (UVSCC)
UVSCC: BES=0x1, WG=1, WSR=0, WEWS=0, EO=0x20
Enabling hardware sequencing because some important opcode is locked.
OK.
The following protocols are supported: Programmer-specific.
Probing for Programmer Opaque flash chip, 0 kB: Hardware sequencing reports 1 attached SPI flash chip with a density of 32768 kB.
Found Programmer flash chip "Opaque flash chip" (32768 kB, Programmer-specific) mapped at physical address 0x0000000000000000.
Found Programmer flash chip "Opaque flash chip" (32768 kB, Programmer-specific).
No operations were specified.
Restoring PCI config space for 00:1f:5 reg 0xdc
--
Jethro Beekman | Fortanix