[flashrom] Abit KN9 board enable method, lspci -nnv
Georg Sauthoff
mail at georg.so
Sat Feb 21 20:31:37 CET 2015
Hi,
as discussed on IRC (#flashrom) today, current flashrom trunk fails
writing the flash chip on an Abit KN9 Ultra/SLI board. Reading works, though.
The failure message is:
flashrom/trunk/flashrom --programmer internal -c Pm49FL004 -w M520A_23.BIN
flashrom v0.9.8-rc1-r1885 on Linux 3.2.0-4-amd64 (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK.
Found chipset "NVIDIA MCP55".
Enabling flash write... OK.
Found PMC flash chip "Pm49FL004" (512 kB, LPC, FWH) mapped at physical address 0x00000000fff80000.
===
This flash part has status UNTESTED for operations: ERASE WRITE
The test status of this chip may have been updated in the latest development
version of flashrom. If you are running the latest development version,
please email a report to flashrom at flashrom.org if any of the above operations
work correctly for you with this flash chip. Please include the flashrom log
file for all operations you tested (see the man page for details), and mention
which mainboard or programmer you tested in the subject line.
Thanks for your help!
Reading old flash chip contents... done.
Erasing and writing flash chip... FAILED at 0x00000000! Expected=0xff, Found=0x49, failed byte count from 0x00000000-0x00000fff: 0x730
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
FAILED at 0x00000000! Expected=0xff, Found=0x49, failed byte count from 0x00000000-0x0000ffff: 0x730
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
FAILED at 0x00000000! Expected=0xff, Found=0x49, failed byte count from 0x00000000-0x0007ffff: 0x57f07
ERASE FAILED!
Looking for another erase function.
No usable erase functions left.
FAILED!
Uh oh. Erase/write failed. Checking if anything has changed.
Reading current flash chip contents... done.
Good, writing to the flash chip apparently didn't do anything.
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 at flashrom.org, thanks!
It fails because the chip is write protected, by default.
It turns out that the board enable method for the Abit KN9 Ultra is the
same as for the Abit KN8 Ultra - which is already included in flashrom
(nvidia_mcp_gpio2_lower()).
That means that I could successfully flash that chip multiple times with
flashrom using that board enable code.
For illustration, I include the ghetto-style patch I've used:
@@ -2313,7 +2313,7 @@
{0x8086, 0x24d3, 0x147b, 0x1014, 0x8086, 0x2578, 0x147b, 0x1014, NULL, NULL, NULL, P3, "abit", "IC7", 0, NT, intel_ich_gpio23_raise},
{0x8086, 0x2930, 0x147b, 0x1084, 0x11ab, 0x4364, 0x147b, 0x1084, NULL, NULL, NULL, P3, "abit", "IP35", 0, OK, intel_ich_gpio16_raise},
{0x8086, 0x2930, 0x147b, 0x1083, 0x10ec, 0x8167, 0x147b, 0x1083, NULL, NULL, NULL, P3, "abit", "IP35 Pro", 0, OK, intel_ich_gpio16_raise},
- {0x10de, 0x0050, 0x147b, 0x1c1a, 0x10de, 0x0052, 0x147b, 0x1c1a, NULL, NULL, NULL, P3, "abit", "KN8 Ultra", 0, NT, nvidia_mcp_gpio2_lower},
+ {0x10de, 0x0050, 0x147b, 0x1c1a, 0x10de, 0x0052, 0x147b, 0x1c1a, NULL, NULL, NULL, P3, "abit", "KN8 Ultra", 0, OK, nvidia_mcp_gpio2_lower},
{0x10de, 0x01e0, 0x147b, 0x1c00, 0x10de, 0x0060, 0x147B, 0x1c00, NULL, NULL, NULL, P3, "abit", "NF7-S", 0, OK, nvidia_mcp_gpio8_raise},
{0x10de, 0x02f0, 0x147b, 0x1c26, 0x10de, 0x0260, 0x147b, 0x1c26, NULL, NULL, NULL, P3, "abit", "NF-M2 nView", 0, OK, nvidia_mcp_gpio4_lower},
{0x1106, 0x0691, 0, 0, 0x1106, 0x3057, 0, 0, "(VA6)$", NULL, NULL, P3, "abit", "VA6", 0, OK, via_apollo_gpo4_lower},
@@ -2578,6 +2578,8 @@
*/
const static struct board_match *board_match_pci_ids(enum board_match_phase phase)
{
+ return board_matches + 7;
+
const struct board_match *board = board_matches;
for (; board->vendor_name; board++) {
Of course, for inclusion, proper PCI ids should be configured for the Abit KN9
Ultra board via that table.
For that, the `lspci -nnv` output is attached.
Best regards
Georg
--
'There have been no suggestions that Jay-Z's fellow rapper 50
Cent could be considering a move into a different currency.' (
Rapper Jay-Z dissing the dollar.
http://news.bbc.co.uk/2/hi/7097736.stm )
-------------- next part --------------
00:00.0 RAM memory [0500]: NVIDIA Corporation MCP55 Memory Controller [10de:0369] (rev a1)
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0
Capabilities: [44] HyperTransport: Slave or Primary Interface
Capabilities: [e0] #00 [fee0]
00:01.0 ISA bridge [0601]: NVIDIA Corporation MCP55 LPC Bridge [10de:0360] (rev a2)
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0
00:01.1 SMBus [0c05]: NVIDIA Corporation MCP55 SMBus [10de:0368] (rev a2)
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: 66MHz, fast devsel, IRQ 10
I/O ports at fc00 [size=64]
I/O ports at 1c00 [size=64]
I/O ports at 1c40 [size=64]
Capabilities: [44] Power Management version 2
Kernel driver in use: nForce2_smbus
00:02.0 USB controller [0c03]: NVIDIA Corporation MCP55 USB Controller [10de:036c] (rev a1) (prog-if 10 [OHCI])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 23
Memory at fe02f000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [44] Power Management version 2
Kernel driver in use: ohci_hcd
00:02.1 USB controller [0c03]: NVIDIA Corporation MCP55 USB Controller [10de:036d] (rev a2) (prog-if 20 [EHCI])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 22
Memory at fe02e000 (32-bit, non-prefetchable) [size=256]
Capabilities: [44] Debug port: BAR=1 offset=0098
Capabilities: [80] Power Management version 2
Kernel driver in use: ehci_hcd
00:04.0 IDE interface [0101]: NVIDIA Corporation MCP55 IDE [10de:036e] (rev a1) (prog-if 8a [Master SecP PriP])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0
[virtual] Memory at 000001f0 (32-bit, non-prefetchable) [size=8]
[virtual] Memory at 000003f0 (type 3, non-prefetchable) [size=1]
[virtual] Memory at 00000170 (32-bit, non-prefetchable) [size=8]
[virtual] Memory at 00000370 (type 3, non-prefetchable) [size=1]
I/O ports at f000 [size=16]
Capabilities: [44] Power Management version 2
Kernel driver in use: pata_amd
00:05.0 IDE interface [0101]: NVIDIA Corporation MCP55 SATA Controller [10de:037f] (rev a2) (prog-if 85 [Master SecO PriO])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 23
I/O ports at 09f0 [size=8]
I/O ports at 0bf0 [size=4]
I/O ports at 0970 [size=8]
I/O ports at 0b70 [size=4]
I/O ports at dc00 [size=16]
Memory at fe02d000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [44] Power Management version 2
Capabilities: [b0] MSI: Enable- Count=1/4 Maskable- 64bit+
Capabilities: [cc] HyperTransport: MSI Mapping Enable+ Fixed+
Kernel driver in use: sata_nv
00:05.1 IDE interface [0101]: NVIDIA Corporation MCP55 SATA Controller [10de:037f] (rev a2) (prog-if 85 [Master SecO PriO])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 22
I/O ports at 09e0 [size=8]
I/O ports at 0be0 [size=4]
I/O ports at 0960 [size=8]
I/O ports at 0b60 [size=4]
I/O ports at c800 [size=16]
Memory at fe02c000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [44] Power Management version 2
Capabilities: [b0] MSI: Enable- Count=1/4 Maskable- 64bit+
Capabilities: [cc] HyperTransport: MSI Mapping Enable+ Fixed+
Kernel driver in use: sata_nv
00:05.2 IDE interface [0101]: NVIDIA Corporation MCP55 SATA Controller [10de:037f] (rev a2) (prog-if 85 [Master SecO PriO])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 21
I/O ports at c400 [size=8]
I/O ports at c000 [size=4]
I/O ports at bc00 [size=8]
I/O ports at b800 [size=4]
I/O ports at b400 [size=16]
Memory at fe02b000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [44] Power Management version 2
Capabilities: [b0] MSI: Enable- Count=1/4 Maskable- 64bit+
Capabilities: [cc] HyperTransport: MSI Mapping Enable+ Fixed+
Kernel driver in use: sata_nv
00:06.0 PCI bridge [0604]: NVIDIA Corporation MCP55 PCI bridge [10de:0370] (rev a2) (prog-if 01 [Subtractive decode])
Flags: bus master, 66MHz, fast devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
I/O behind bridge: 00008000-00009fff
Memory behind bridge: fdd00000-fddfffff
Prefetchable memory behind bridge: fde00000-fdefffff
Capabilities: [b8] Subsystem: NVIDIA Corporation Device [10de:cb84]
Capabilities: [8c] HyperTransport: MSI Mapping Enable+ Fixed-
00:06.1 Audio device [0403]: NVIDIA Corporation MCP55 High Definition Audio [10de:0371] (rev a2)
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 20
Memory at fe020000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [44] Power Management version 2
Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
Capabilities: [6c] HyperTransport: MSI Mapping Enable+ Fixed+
Kernel driver in use: snd_hda_intel
00:08.0 Bridge [0680]: NVIDIA Corporation MCP55 Ethernet [10de:0373] (rev a2)
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 45
Memory at fe02a000 (32-bit, non-prefetchable) [size=4K]
I/O ports at b000 [size=8]
Memory at fe029000 (32-bit, non-prefetchable) [size=256]
Memory at fe028000 (32-bit, non-prefetchable) [size=16]
Capabilities: [44] Power Management version 2
Capabilities: [70] MSI-X: Enable- Count=8 Masked-
Capabilities: [50] MSI: Enable+ Count=1/8 Maskable+ 64bit+
Capabilities: [6c] HyperTransport: MSI Mapping Enable+ Fixed+
Kernel driver in use: forcedeth
00:09.0 Bridge [0680]: NVIDIA Corporation MCP55 Ethernet [10de:0373] (rev a2)
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 46
Memory at fe027000 (32-bit, non-prefetchable) [size=4K]
I/O ports at ac00 [size=8]
Memory at fe026000 (32-bit, non-prefetchable) [size=256]
Memory at fe025000 (32-bit, non-prefetchable) [size=16]
Capabilities: [44] Power Management version 2
Capabilities: [70] MSI-X: Enable- Count=8 Masked-
Capabilities: [50] MSI: Enable+ Count=1/8 Maskable+ 64bit+
Capabilities: [6c] HyperTransport: MSI Mapping Enable+ Fixed+
Kernel driver in use: forcedeth
00:0a.0 PCI bridge [0604]: NVIDIA Corporation MCP55 PCI Express bridge [10de:0376] (rev a2) (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: 00007000-00007fff
Memory behind bridge: fdc00000-fdcfffff
Prefetchable memory behind bridge: 00000000fdb00000-00000000fdbfffff
Capabilities: [40] Subsystem: NVIDIA Corporation Device [10de:0000]
Capabilities: [48] Power Management version 2
Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+
Capabilities: [60] HyperTransport: MSI Mapping Enable+ Fixed-
Capabilities: [80] Express Root Port (Slot+), MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: pcieport
00:0c.0 PCI bridge [0604]: NVIDIA Corporation MCP55 PCI Express bridge [10de:0374] (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
I/O behind bridge: 00006000-00006fff
Memory behind bridge: fda00000-fdafffff
Prefetchable memory behind bridge: 00000000fd900000-00000000fd9fffff
Capabilities: [40] Subsystem: NVIDIA Corporation Device [10de:0000]
Capabilities: [48] Power Management version 2
Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+
Capabilities: [60] HyperTransport: MSI Mapping Enable+ Fixed-
Capabilities: [80] Express Root Port (Slot+), MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: pcieport
00:0d.0 PCI bridge [0604]: NVIDIA Corporation MCP55 PCI Express bridge [10de:0378] (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
I/O behind bridge: 00005000-00005fff
Memory behind bridge: fd800000-fd8fffff
Prefetchable memory behind bridge: 00000000fd700000-00000000fd7fffff
Capabilities: [40] Subsystem: NVIDIA Corporation Device [10de:0000]
Capabilities: [48] Power Management version 2
Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+
Capabilities: [60] HyperTransport: MSI Mapping Enable+ Fixed-
Capabilities: [80] Express Root Port (Slot+), MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: pcieport
00:0e.0 PCI bridge [0604]: NVIDIA Corporation MCP55 PCI Express bridge [10de:0375] (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=05, subordinate=05, sec-latency=0
I/O behind bridge: 00004000-00004fff
Memory behind bridge: fd600000-fd6fffff
Prefetchable memory behind bridge: 00000000fd500000-00000000fd5fffff
Capabilities: [40] Subsystem: NVIDIA Corporation Device [10de:0000]
Capabilities: [48] Power Management version 2
Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+
Capabilities: [60] HyperTransport: MSI Mapping Enable+ Fixed-
Capabilities: [80] Express Root Port (Slot+), MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: pcieport
00:0f.0 PCI bridge [0604]: NVIDIA Corporation MCP55 PCI Express bridge [10de:0377] (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=06, subordinate=06, sec-latency=0
I/O behind bridge: 00003000-00003fff
Memory behind bridge: fa000000-fcffffff
Prefetchable memory behind bridge: 00000000e0000000-00000000efffffff
Capabilities: [40] Subsystem: NVIDIA Corporation Device [10de:0000]
Capabilities: [48] Power Management version 2
Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+
Capabilities: [60] HyperTransport: MSI Mapping Enable+ Fixed-
Capabilities: [80] Express Root Port (Slot+), MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: pcieport
00:18.0 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration [1022:1100]
Flags: fast devsel
Capabilities: [80] HyperTransport: Host or Secondary Interface
00:18.1 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map [1022:1101]
Flags: fast devsel
00:18.2 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller [1022:1102]
Flags: fast devsel
00:18.3 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control [1022:1103]
Flags: fast devsel
Capabilities: [f0] Secure device <?>
Kernel driver in use: k8temp
01:08.0 FireWire (IEEE 1394) [0c00]: Texas Instruments TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] [104c:8023] (prog-if 10 [OHCI])
Subsystem: ABIT Computer Corp. Device [147b:1c20]
Flags: bus master, medium devsel, latency 64, IRQ 16
Memory at fddff000 (32-bit, non-prefetchable) [size=2K]
Memory at fddf8000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [44] Power Management version 2
Kernel driver in use: firewire_ohci
01:09.0 Mass storage controller [0180]: Promise Technology, Inc. 20269 [105a:4d69] (rev 02) (prog-if 85)
Subsystem: Promise Technology, Inc. Ultra133TX2 [105a:4d68]
Flags: bus master, 66MHz, slow devsel, latency 64, IRQ 17
I/O ports at 9c00 [size=8]
I/O ports at 9800 [size=4]
I/O ports at 9400 [size=8]
I/O ports at 9000 [size=4]
I/O ports at 8c00 [size=16]
Memory at fddf4000 (32-bit, non-prefetchable) [size=16K]
[virtual] Expansion ROM at fde00000 [disabled] [size=16K]
Capabilities: [60] Power Management version 1
Kernel driver in use: pata_pdc2027x
05:00.0 USB controller [0c03]: Renesas Technology Corp. uPD720201 USB 3.0 Host Controller [1912:0014] (rev 03) (prog-if 30 [XHCI])
Flags: fast devsel, IRQ 16
Memory at fd6fe000 (64-bit, non-prefetchable) [size=8K]
Capabilities: [50] Power Management version 3
Capabilities: [70] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [90] MSI-X: Enable- Count=8 Masked-
Capabilities: [a0] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [150] Latency Tolerance Reporting
06:00.0 VGA compatible controller [0300]: NVIDIA Corporation NV44 [GeForce 6200 LE] [10de:0163] (rev a1) (prog-if 00 [VGA controller])
Subsystem: ASUSTeK Computer Inc. Device [1043:820b]
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at fb000000 (64-bit, non-prefetchable) [size=16M]
[virtual] Expansion ROM at fc000000 [disabled] [size=128K]
Capabilities: [60] Power Management version 2
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Capabilities: [128] Power Budgeting <?>
Kernel driver in use: nouveau
More information about the flashrom
mailing list