I've been tasked with updating bioses on some machines we have which have no manufacturer support. They were made by Quanta I think, as part of OpenCompute project. I have several boards that area all physically the same, but half of them have a different bios version, and we need them to all match.
For testing, I took a node with the old bios version, F02_3A18, and a board with the new one, F02_3A20, and used -r to create a bios image.
Then I used -w to write that same image back to the mobo and rebooted. No problem on either board...
Then I copied the images to the opposite machine, and tried a -w, and that's when I saw: This means we have to add special support for your board, programmer or flash chip. Please report this on IRC at chat.freenode.net (channel #flashrom) or mail flashrom@flashrom.org, thanks!
So, here I am.
it may be worth mentioning that between the two machines, the CHIPNAME, referred to as such at https://wiki.archlinux.org/title/Flashing_BIOS_from_Linux is different. Here's what it shows:
[root@GH-11 ~]# flashrom --programmer internal flashrom v1.0.1 on Linux 3.10.0-1160.49.1.el7.x86_64 (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). Found chipset "Intel ICH10R". Enabling flash write... Warning: Setting Bios Control at 0xdc from 0x02 to 0x01 failed. New value is 0x03. OK. Found Macronix flash chip "MX25L3205(A)" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3205D/MX25L3208D" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3206E/MX25L3208E" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3273E" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Multiple flash chip definitions match the detected chip(s): "MX25L3205(A)", "MX25L3205D/MX25L3208D", "MX25L3206E/MX25L3208E", "MX25L3273E" Please specify which chip definition to use with the -c <chipname> option. [root@GH-11 ~]#
[root@GH-12 ~]# flashrom --programmer internal flashrom v1.0.1 on Linux 3.10.0-1160.49.1.el7.x86_64 (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). Found chipset "Intel ICH10R". Enabling flash write... Warning: Setting Bios Control at 0xdc from 0x02 to 0x01 failed. New value is 0x03. OK. Found Winbond flash chip "W25Q32.V" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. No operations were specified. [root@GH-12 ~]#
comparing dmidecode on the two machines only shows differences in serial numbers, and ram slots used. all other hardware matches, so I'm pretty sure they're the same hardware.
Why might one show up with a different chipset for bios image?
Here's some info I've gathered on these boards. https://docs.google.com/document/d/1qp1qBXW0Y9k_Xlj1VZ-OYmF6gfm31G00tRRXYmoP... Th G Doc lists all three hardware types we have from Quanta. The boards I'm writing about in this message, for this firmware exercise are called 13-P in this document.
I have yet to see any actual manual for this hardware. tarball attached has firmware as captured on both machines.
So. *What might I try to gain confidence that I can freely reboot these machines again without them being bricked?*
When I tried flashing the originally captured firmware back on it, I got the same error message as I got when I tried transplanting the firmwares.
I did make sure that flashing the original firmware of each node back to them didn't brick them first. And I did make sure the firmware files were the same size to the byte on both of them. But it feels like the flash storage is tainted now on GH-11 because it gets transaction errors now.
*Is there something I need to do to initialize the bios flashing chipset to work properly?*
Here's lspci output: 00:00.0 Host bridge [0600]: Intel Corporation 5500 I/O Hub to ESI Port [8086:3403] (rev 22) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: fast devsel Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot-), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Capabilities: [160] Vendor Specific Information: ID=0002 Rev=0 Len=00c <?>
00:01.0 PCI bridge [0604]: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 1 [8086:3408] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 0000d000-0000dfff Memory behind bridge: dfe00000-dfefffff Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot+), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Capabilities: [160] Vendor Specific Information: ID=0002 Rev=0 Len=00c <?> Kernel driver in use: pcieport
00:07.0 PCI bridge [0604]: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 [8086:340e] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 I/O behind bridge: 0000e000-0000efff Memory behind bridge: dff00000-dfffffff Prefetchable memory behind bridge: 00000000d0000000-00000000d7ffffff Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot+), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Capabilities: [160] Vendor Specific Information: ID=0002 Rev=0 Len=00c <?> Kernel driver in use: pcieport
00:09.0 PCI bridge [0604]: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 9 [8086:3410] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=03, subordinate=03, sec-latency=0 Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot+), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Kernel driver in use: pcieport
00:0a.0 PCI bridge [0604]: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 10 [8086:3411] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=04, subordinate=04, sec-latency=0 Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot-), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Kernel driver in use: pcieport
00:13.0 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub I/OxAPIC Interrupt Controller [8086:342d] (rev 22) (prog-if 20 [IO(X)-APIC]) Flags: bus master, fast devsel, latency 0 Memory at fec8a000 (32-bit, non-prefetchable) [size=4K] Capabilities: [6c] Power Management version 3
00:14.0 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub System Management Registers [8086:342e] (rev 22) (prog-if 00 [8259]) Flags: fast devsel Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00 Kernel driver in use: i7core_edac Kernel modules: i7core_edac
00:14.1 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers [8086:3422] (rev 22) (prog-if 00 [8259]) Flags: fast devsel Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00
00:14.2 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub Control Status and RAS Registers [8086:3423] (rev 22) (prog-if 00 [8259]) Flags: fast devsel Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00
00:14.3 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub Throttle Registers [8086:3438] (rev 22) (prog-if 00 [8259]) Flags: fast devsel
00:16.0 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3430] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 31 Memory at dfdfc000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.1 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3431] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 33 Memory at dfdf8000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.2 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3432] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 35 Memory at dfdf4000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.3 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3433] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 37 Memory at dfdf0000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.4 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3429] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 31 Memory at dfdec000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.5 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:342a] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 33 Memory at dfde8000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.6 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:342b] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 35 Memory at dfde4000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.7 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:342c] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 37 Memory at dfde0000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:1a.0 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4 [8086:3a37] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 23 I/O ports at cc00 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1a.7 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2 [8086:3a3c] (prog-if 20 [EHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 20 Memory at dfdde000 (32-bit, non-prefetchable) [size=1K] Capabilities: [50] Power Management version 2 Capabilities: [58] Debug port: BAR=1 offset=00a0 Capabilities: [98] PCI Advanced Features Kernel driver in use: ehci-pci
00:1d.0 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1 [8086:3a34] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 23 I/O ports at c880 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1d.1 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2 [8086:3a35] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 22 I/O ports at c800 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1d.2 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3 [8086:3a36] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 21 I/O ports at c480 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1d.7 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1 [8086:3a3a] (prog-if 20 [EHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 23 Memory at dfddc000 (32-bit, non-prefetchable) [size=1K] Capabilities: [50] Power Management version 2 Capabilities: [58] Debug port: BAR=1 offset=00a0 Capabilities: [98] PCI Advanced Features Kernel driver in use: ehci-pci
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev 90) (prog-if 01 [Subtractive decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=05, subordinate=05, sec-latency=32 Capabilities: [50] Subsystem: QUANTA Computer Inc Device [152d:8983]
00:1f.0 ISA bridge [0601]: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller [8086:3a16] Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0 Capabilities: [e0] Vendor Specific Information: Len=0c <?> Kernel driver in use: lpc_ich Kernel modules: lpc_ich
00:1f.2 SATA controller [0106]: Intel Corporation 82801JI (ICH10 Family) SATA AHCI Controller [8086:3a22] (prog-if 01 [AHCI 1.0]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 28 I/O ports at b880 [size=8] I/O ports at c400 [size=4] I/O ports at c080 [size=8] I/O ports at c000 [size=4] I/O ports at bc00 [size=32] Memory at dfdda000 (32-bit, non-prefetchable) [size=2K] Capabilities: [80] MSI: Enable+ Count=1/16 Maskable- 64bit- Capabilities: [70] Power Management version 3 Capabilities: [a8] SATA HBA v1.0 Capabilities: [b0] PCI Advanced Features Kernel driver in use: ahci Kernel modules: ahci
00:1f.3 SMBus [0c05]: Intel Corporation 82801JI (ICH10 Family) SMBus Controller [8086:3a30] Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: medium devsel, IRQ 18 Memory at dfdd8000 (64-bit, non-prefetchable) [size=256] I/O ports at 0400 [size=32] Kernel driver in use: i801_smbus Kernel modules: i2c_i801
01:00.0 Ethernet controller [0200]: Intel Corporation 82574L Gigabit Network Connection [8086:10d3] Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 24 Memory at dfee0000 (32-bit, non-prefetchable) [size=128K] I/O ports at dc00 [size=32] Memory at dfedc000 (32-bit, non-prefetchable) [size=16K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [e0] Express Endpoint, MSI 00 Capabilities: [a0] MSI-X: Enable+ Count=5 Masked- Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 60-eb-69-ff-ff-c6-4c-83 Kernel driver in use: e1000e Kernel modules: e1000e
02:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] RV370 [Radeon X300] [1002:5b60] (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. Device [1043:032a] Flags: bus master, fast devsel, latency 0, IRQ 30 Memory at d0000000 (32-bit, prefetchable) [size=128M] I/O ports at e000 [size=256] Memory at dffd0000 (32-bit, non-prefetchable) [size=64K] Expansion ROM at dffe0000 [disabled] [size=128K] Capabilities: [50] Power Management version 2 Capabilities: [58] Express Endpoint, MSI 00 Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit+ Capabilities: [100] Advanced Error Reporting Kernel driver in use: radeon Kernel modules: radeon
02:00.1 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] RV370 [Radeon X300 SE] [1002:5b70] Subsystem: ASUSTeK Computer Inc. Device [1043:032b] Flags: bus master, fast devsel, latency 0 Memory at dffc0000 (32-bit, non-prefetchable) [size=64K] Capabilities: [50] Power Management version 2 Capabilities: [58] Express Endpoint, MSI 00
fe:00.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture Generic Non-core Registers [8086:2c70] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:00.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture System Address Decoder [8086:2d81] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 0 [8086:2d90] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 0 [8086:2d91] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 0 [8086:2d92] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 1 [8086:2d93] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 1 [8086:2d94] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.5 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 1 [8086:2d95] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Registers [8086:2d98] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Target Address Decoder [8086:2d99] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller RAS Registers [8086:2d9a] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Test Registers [8086:2d9c] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Control [8086:2da0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Address [8086:2da1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Rank [8086:2da2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Thermal Control [8086:2da3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Control [8086:2da8] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Address [8086:2da9] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Rank [8086:2daa] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Thermal Control [8086:2dab] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Control [8086:2db0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Address [8086:2db1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Rank [8086:2db2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Thermal Control [8086:2db3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:00.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture Generic Non-core Registers [8086:2c70] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:00.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture System Address Decoder [8086:2d81] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 0 [8086:2d90] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 0 [8086:2d91] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 0 [8086:2d92] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 1 [8086:2d93] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 1 [8086:2d94] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.5 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 1 [8086:2d95] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Registers [8086:2d98] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Target Address Decoder [8086:2d99] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller RAS Registers [8086:2d9a] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Test Registers [8086:2d9c] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Control [8086:2da0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Address [8086:2da1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Rank [8086:2da2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Thermal Control [8086:2da3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Control [8086:2da8] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Address [8086:2da9] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Rank [8086:2daa] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Thermal Control [8086:2dab] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Control [8086:2db0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Address [8086:2db1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Rank [8086:2db2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Thermal Control [8086:2db3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
You've said these Quanta boards are a part of the OpenCompute project. That means, instead of looking for a proprietary BIOS workaround, these OCP boards - to match the OCP certification - should be ported to open source firmware (most likely, coreboot BIOS), considering the new requirements of OCP project regarding the firmware. Please take a look at https://www.opencompute.org/wiki/Open_System_Firmware/Checklist , document v1.1 from October 2020, and forward this info to your supervisor.
вт, 7 дек. 2021 г. в 11:23, Billy Croan BCroan@unrealservers.net:
I've been tasked with updating bioses on some machines we have which have no manufacturer support. They were made by Quanta I think, as part of OpenCompute project. I have several boards that area all physically the same, but half of them have a different bios version, and we need them to all match.
For testing, I took a node with the old bios version, F02_3A18, and a board with the new one, F02_3A20, and used -r to create a bios image.
Then I used -w to write that same image back to the mobo and rebooted. No problem on either board...
Then I copied the images to the opposite machine, and tried a -w, and that's when I saw: This means we have to add special support for your board, programmer or flash chip. Please report this on IRC at chat.freenode.net (channel #flashrom) or mail flashrom@flashrom.org, thanks!
So, here I am.
it may be worth mentioning that between the two machines, the CHIPNAME, referred to as such at https://wiki.archlinux.org/title/Flashing_BIOS_from_Linux is different. Here's what it shows:
[root@GH-11 ~]# flashrom --programmer internal flashrom v1.0.1 on Linux 3.10.0-1160.49.1.el7.x86_64 (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). Found chipset "Intel ICH10R". Enabling flash write... Warning: Setting Bios Control at 0xdc from 0x02 to 0x01 failed. New value is 0x03. OK. Found Macronix flash chip "MX25L3205(A)" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3205D/MX25L3208D" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3206E/MX25L3208E" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3273E" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Multiple flash chip definitions match the detected chip(s): "MX25L3205(A)", "MX25L3205D/MX25L3208D", "MX25L3206E/MX25L3208E", "MX25L3273E" Please specify which chip definition to use with the -c <chipname> option. [root@GH-11 ~]#
[root@GH-12 ~]# flashrom --programmer internal flashrom v1.0.1 on Linux 3.10.0-1160.49.1.el7.x86_64 (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). Found chipset "Intel ICH10R". Enabling flash write... Warning: Setting Bios Control at 0xdc from 0x02 to 0x01 failed. New value is 0x03. OK. Found Winbond flash chip "W25Q32.V" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. No operations were specified. [root@GH-12 ~]#
comparing dmidecode on the two machines only shows differences in serial numbers, and ram slots used. all other hardware matches, so I'm pretty sure they're the same hardware.
Why might one show up with a different chipset for bios image?
Here's some info I've gathered on these boards. https://docs.google.com/document/d/1qp1qBXW0Y9k_Xlj1VZ-OYmF6gfm31G00tRRXYmoP... Th G Doc lists all three hardware types we have from Quanta. The boards I'm writing about in this message, for this firmware exercise are called 13-P in this document.
I have yet to see any actual manual for this hardware. tarball attached has firmware as captured on both machines.
So. What might I try to gain confidence that I can freely reboot these machines again without them being bricked?
When I tried flashing the originally captured firmware back on it, I got the same error message as I got when I tried transplanting the firmwares.
I did make sure that flashing the original firmware of each node back to them didn't brick them first. And I did make sure the firmware files were the same size to the byte on both of them. But it feels like the flash storage is tainted now on GH-11 because it gets transaction errors now.
Is there something I need to do to initialize the bios flashing chipset to work properly?
Here's lspci output: 00:00.0 Host bridge [0600]: Intel Corporation 5500 I/O Hub to ESI Port [8086:3403] (rev 22) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: fast devsel Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot-), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Capabilities: [160] Vendor Specific Information: ID=0002 Rev=0 Len=00c <?>
00:01.0 PCI bridge [0604]: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 1 [8086:3408] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 0000d000-0000dfff Memory behind bridge: dfe00000-dfefffff Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot+), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Capabilities: [160] Vendor Specific Information: ID=0002 Rev=0 Len=00c <?> Kernel driver in use: pcieport
00:07.0 PCI bridge [0604]: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 [8086:340e] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 I/O behind bridge: 0000e000-0000efff Memory behind bridge: dff00000-dfffffff Prefetchable memory behind bridge: 00000000d0000000-00000000d7ffffff Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot+), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Capabilities: [160] Vendor Specific Information: ID=0002 Rev=0 Len=00c <?> Kernel driver in use: pcieport
00:09.0 PCI bridge [0604]: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 9 [8086:3410] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=03, subordinate=03, sec-latency=0 Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot+), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Kernel driver in use: pcieport
00:0a.0 PCI bridge [0604]: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 10 [8086:3411] (rev 22) (prog-if 00 [Normal decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=04, subordinate=04, sec-latency=0 Capabilities: [40] Subsystem: Intel Corporation Device [8086:0000] Capabilities: [60] MSI: Enable- Count=1/2 Maskable+ 64bit- Capabilities: [90] Express Root Port (Slot-), MSI 00 Capabilities: [e0] Power Management version 3 Capabilities: [100] Advanced Error Reporting Capabilities: [150] Access Control Services Kernel driver in use: pcieport
00:13.0 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub I/OxAPIC Interrupt Controller [8086:342d] (rev 22) (prog-if 20 [IO(X)-APIC]) Flags: bus master, fast devsel, latency 0 Memory at fec8a000 (32-bit, non-prefetchable) [size=4K] Capabilities: [6c] Power Management version 3
00:14.0 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub System Management Registers [8086:342e] (rev 22) (prog-if 00 [8259]) Flags: fast devsel Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00 Kernel driver in use: i7core_edac Kernel modules: i7core_edac
00:14.1 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers [8086:3422] (rev 22) (prog-if 00 [8259]) Flags: fast devsel Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00
00:14.2 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub Control Status and RAS Registers [8086:3423] (rev 22) (prog-if 00 [8259]) Flags: fast devsel Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00
00:14.3 PIC [0800]: Intel Corporation 7500/5520/5500/X58 I/O Hub Throttle Registers [8086:3438] (rev 22) (prog-if 00 [8259]) Flags: fast devsel
00:16.0 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3430] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 31 Memory at dfdfc000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.1 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3431] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 33 Memory at dfdf8000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.2 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3432] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 35 Memory at dfdf4000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.3 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3433] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 37 Memory at dfdf0000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.4 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:3429] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 31 Memory at dfdec000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.5 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:342a] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 33 Memory at dfde8000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.6 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:342b] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 35 Memory at dfde4000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:16.7 System peripheral [0880]: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device [8086:342c] (rev 22) Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 37 Memory at dfde0000 (64-bit, non-prefetchable) [size=16K] Capabilities: [80] MSI-X: Enable+ Count=1 Masked- Capabilities: [90] Express Root Complex Integrated Endpoint, MSI 00 Capabilities: [e0] Power Management version 3 Kernel driver in use: ioatdma Kernel modules: ioatdma
00:1a.0 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4 [8086:3a37] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 23 I/O ports at cc00 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1a.7 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2 [8086:3a3c] (prog-if 20 [EHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 20 Memory at dfdde000 (32-bit, non-prefetchable) [size=1K] Capabilities: [50] Power Management version 2 Capabilities: [58] Debug port: BAR=1 offset=00a0 Capabilities: [98] PCI Advanced Features Kernel driver in use: ehci-pci
00:1d.0 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1 [8086:3a34] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 23 I/O ports at c880 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1d.1 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2 [8086:3a35] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 22 I/O ports at c800 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1d.2 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3 [8086:3a36] (prog-if 00 [UHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 21 I/O ports at c480 [size=32] Capabilities: [50] PCI Advanced Features Kernel driver in use: uhci_hcd
00:1d.7 USB controller [0c03]: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1 [8086:3a3a] (prog-if 20 [EHCI]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0, IRQ 23 Memory at dfddc000 (32-bit, non-prefetchable) [size=1K] Capabilities: [50] Power Management version 2 Capabilities: [58] Debug port: BAR=1 offset=00a0 Capabilities: [98] PCI Advanced Features Kernel driver in use: ehci-pci
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev 90) (prog-if 01 [Subtractive decode]) Flags: bus master, fast devsel, latency 0 Bus: primary=00, secondary=05, subordinate=05, sec-latency=32 Capabilities: [50] Subsystem: QUANTA Computer Inc Device [152d:8983]
00:1f.0 ISA bridge [0601]: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller [8086:3a16] Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, medium devsel, latency 0 Capabilities: [e0] Vendor Specific Information: Len=0c <?> Kernel driver in use: lpc_ich Kernel modules: lpc_ich
00:1f.2 SATA controller [0106]: Intel Corporation 82801JI (ICH10 Family) SATA AHCI Controller [8086:3a22] (prog-if 01 [AHCI 1.0]) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 28 I/O ports at b880 [size=8] I/O ports at c400 [size=4] I/O ports at c080 [size=8] I/O ports at c000 [size=4] I/O ports at bc00 [size=32] Memory at dfdda000 (32-bit, non-prefetchable) [size=2K] Capabilities: [80] MSI: Enable+ Count=1/16 Maskable- 64bit- Capabilities: [70] Power Management version 3 Capabilities: [a8] SATA HBA v1.0 Capabilities: [b0] PCI Advanced Features Kernel driver in use: ahci Kernel modules: ahci
00:1f.3 SMBus [0c05]: Intel Corporation 82801JI (ICH10 Family) SMBus Controller [8086:3a30] Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: medium devsel, IRQ 18 Memory at dfdd8000 (64-bit, non-prefetchable) [size=256] I/O ports at 0400 [size=32] Kernel driver in use: i801_smbus Kernel modules: i2c_i801
01:00.0 Ethernet controller [0200]: Intel Corporation 82574L Gigabit Network Connection [8086:10d3] Subsystem: Intel Corporation Device [8086:0000] Flags: bus master, fast devsel, latency 0, IRQ 24 Memory at dfee0000 (32-bit, non-prefetchable) [size=128K] I/O ports at dc00 [size=32] Memory at dfedc000 (32-bit, non-prefetchable) [size=16K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [e0] Express Endpoint, MSI 00 Capabilities: [a0] MSI-X: Enable+ Count=5 Masked- Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 60-eb-69-ff-ff-c6-4c-83 Kernel driver in use: e1000e Kernel modules: e1000e
02:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] RV370 [Radeon X300] [1002:5b60] (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. Device [1043:032a] Flags: bus master, fast devsel, latency 0, IRQ 30 Memory at d0000000 (32-bit, prefetchable) [size=128M] I/O ports at e000 [size=256] Memory at dffd0000 (32-bit, non-prefetchable) [size=64K] Expansion ROM at dffe0000 [disabled] [size=128K] Capabilities: [50] Power Management version 2 Capabilities: [58] Express Endpoint, MSI 00 Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit+ Capabilities: [100] Advanced Error Reporting Kernel driver in use: radeon Kernel modules: radeon
02:00.1 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] RV370 [Radeon X300 SE] [1002:5b70] Subsystem: ASUSTeK Computer Inc. Device [1043:032b] Flags: bus master, fast devsel, latency 0 Memory at dffc0000 (32-bit, non-prefetchable) [size=64K] Capabilities: [50] Power Management version 2 Capabilities: [58] Express Endpoint, MSI 00
fe:00.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture Generic Non-core Registers [8086:2c70] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:00.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture System Address Decoder [8086:2d81] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 0 [8086:2d90] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 0 [8086:2d91] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 0 [8086:2d92] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 1 [8086:2d93] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 1 [8086:2d94] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:02.5 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 1 [8086:2d95] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Registers [8086:2d98] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Target Address Decoder [8086:2d99] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller RAS Registers [8086:2d9a] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:03.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Test Registers [8086:2d9c] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Control [8086:2da0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Address [8086:2da1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Rank [8086:2da2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:04.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Thermal Control [8086:2da3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Control [8086:2da8] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Address [8086:2da9] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Rank [8086:2daa] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:05.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Thermal Control [8086:2dab] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Control [8086:2db0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Address [8086:2db1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Rank [8086:2db2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
fe:06.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Thermal Control [8086:2db3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:00.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture Generic Non-core Registers [8086:2c70] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:00.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QuickPath Architecture System Address Decoder [8086:2d81] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 0 [8086:2d90] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 0 [8086:2d91] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 0 [8086:2d92] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Mirror Port Link 1 [8086:2d93] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Link 1 [8086:2d94] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:02.5 Host bridge [0600]: Intel Corporation Xeon 5600 Series QPI Physical 1 [8086:2d95] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Registers [8086:2d98] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Target Address Decoder [8086:2d99] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller RAS Registers [8086:2d9a] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:03.4 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Test Registers [8086:2d9c] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Control [8086:2da0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Address [8086:2da1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Rank [8086:2da2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:04.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Thermal Control [8086:2da3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Control [8086:2da8] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Address [8086:2da9] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Rank [8086:2daa] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:05.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Thermal Control [8086:2dab] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.0 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Control [8086:2db0] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.1 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Address [8086:2db1] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.2 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Rank [8086:2db2] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
ff:06.3 Host bridge [0600]: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Thermal Control [8086:2db3] (rev 02) Subsystem: QUANTA Computer Inc Device [152d:8983] Flags: bus master, fast devsel, latency 0
flashrom mailing list -- flashrom@flashrom.org To unsubscribe send an email to flashrom-leave@flashrom.org
Hi Billy,
On Tue, Dec 7, 2021 at 8:23 AM Billy Croan BCroan@unrealservers.net wrote:
I've been tasked with updating bioses on some machines we have which have no manufacturer support. They were made by Quanta I think, as part of OpenCompute project. I have several boards that area all physically the same, but half of them have a different bios version, and we need them to all match.
For testing, I took a node with the old bios version, F02_3A18, and a board with the new one, F02_3A20, and used -r to create a bios image.
Then I used -w to write that same image back to the mobo and rebooted. No problem on either board...
Before writing, flashrom reads the current flash chip contents and only rewrites the parts that have changed. I'm pretty sure flashrom didn't write anything in your case, you can check if `Warning: Chip content is identical to the requested image.` appears in the log.
Then I copied the images to the opposite machine, and tried a -w, and that's when I saw: This means we have to add special support for your board, programmer or flash chip. Please report this on IRC at chat.freenode.net (channel #flashrom) or mail flashrom@flashrom.org, thanks!
Without the rest of the log, this message is meaningless. Could you please provide a full log? You can add `-o logfile.txt` to your flashrom command to generate a debug log file. This is the preferred method because it ensures all flashrom output gets logged: it's common to forget about stderr when using shell redirection.
So, here I am.
it may be worth mentioning that between the two machines, the CHIPNAME, referred to as such at https://wiki.archlinux.org/title/Flashing_BIOS_from_Linux is different. Here's what it shows:
[root@GH-11 ~]# flashrom --programmer internal flashrom v1.0.1 on Linux 3.10.0-1160.49.1.el7.x86_64 (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). Found chipset "Intel ICH10R". Enabling flash write... Warning: Setting Bios Control at 0xdc from 0x02 to 0x01 failed. New value is 0x03. OK. Found Macronix flash chip "MX25L3205(A)" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3205D/MX25L3208D" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3206E/MX25L3208E" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Found Macronix flash chip "MX25L3273E" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. Multiple flash chip definitions match the detected chip(s): "MX25L3205(A)", "MX25L3205D/MX25L3208D", "MX25L3206E/MX25L3208E", "MX25L3273E" Please specify which chip definition to use with the -c <chipname> option. [root@GH-11 ~]#
[root@GH-12 ~]# flashrom --programmer internal flashrom v1.0.1 on Linux 3.10.0-1160.49.1.el7.x86_64 (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). Found chipset "Intel ICH10R". Enabling flash write... Warning: Setting Bios Control at 0xdc from 0x02 to 0x01 failed. New value is 0x03. OK. Found Winbond flash chip "W25Q32.V" (4096 kB, SPI) mapped at physical address 0x00000000ffc00000. No operations were specified. [root@GH-12 ~]#
comparing dmidecode on the two machines only shows differences in serial numbers, and ram slots used. all other hardware matches, so I'm pretty sure they're the same hardware.
Why might one show up with a different chipset for bios image?
These two flash chips are equivalent and interchangeable. They're not 100% equivalent, but they have lots of things in common. For example, they have the same size, both use the SPI protocol ("speak the same language") and many commands are supported by both chips (including identification commands). Using equivalent parts from different vendors is common practice in circuit board design, as it reduces the risk of not being able to assemble circuit boards because some component is unavailable.
This is nothing to worry about. To choose the correct flash chip definition in the Macronix case, the most straightforward way is to read the model numbers written on the flash chip itself. From your pictures, I see it's next to a corner of the ICH10R southbridge (the square Intel chip next to the SATA ports), in a white socket.
Here's some info I've gathered on these boards. https://docs.google.com/document/d/1qp1qBXW0Y9k_Xlj1VZ-OYmF6gfm31G00tRRXYmoP... Th G Doc lists all three hardware types we have from Quanta. The boards I'm writing about in this message, for this firmware exercise are called 13-P in this document.
I have yet to see any actual manual for this hardware. tarball attached has firmware as captured on both machines.
For context, this attachment is missing because this mailing list rejects emails with binary files attached. I just saw your messages on IRC about your message not going through (I was sleeping when I received them, at 4:22 AM UTC+01:00), and I imagine you simply resent the email as-is without the attachment. In any case, firmware dumps aren't really useful for us.
So. What might I try to gain confidence that I can freely reboot these machines again without them being bricked?
I can't say for sure without complete logs, but if flashrom didn't print `DO NOT REBOOT OR POWEROFF!` it should be fine. Even if the board stops booting, you can easily reflash the flash chips with an external programmer because they're socketed.
When I tried flashing the originally captured firmware back on it, I got the same error message as I got when I tried transplanting the firmwares.
I did make sure that flashing the original firmware of each node back to them didn't brick them first. And I did make sure the firmware files were the same size to the byte on both of them. But it feels like the flash storage is tainted now on GH-11 because it gets transaction errors now.
Again, there isn't much I can say without complete logs. flashrom refuses to flash files that are not of the exact same size as the flash chip.
Is there something I need to do to initialize the bios flashing chipset to work properly?
Here's lspci output:
<snip>
flashrom mailing list -- flashrom@flashrom.org To unsubscribe send an email to flashrom-leave@flashrom.org
Best regards, Angel