[flashrom] Board enable for EPoX EP-8RDA3+ lspci fix

Luc Verhaegen libv at skynet.be
Mon Oct 5 03:25:12 CEST 2009


On Tue, Sep 22, 2009 at 02:05:55PM +0200, Uwe Hermann wrote:
> On Tue, Sep 15, 2009 at 10:39:28PM +0000, . . wrote:
> > seems hotmail leaves out parts of the lspci output, so pastebinned it here: http://coreboot.pastebin.com/f22a57659
> > Link should stay 'forever'.
> 
> Not sure, I don't trust pastebins to stay around long enough. I think it's
> better to have it archived on the list, so here goes.
> 
> 
> 00:00.0 Host bridge [0600]: nVidia Corporation nForce2 AGP (different version?) [10de:01e0] (rev c1)
> 
> 00:00.1 RAM memory [0500]: nVidia Corporation nForce2 Memory Controller 1 [10de:01eb] (rev c1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:00.2 RAM memory [0500]: nVidia Corporation nForce2 Memory Controller 4 [10de:01ee] (rev c1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:00.3 RAM memory [0500]: nVidia Corporation nForce2 Memory Controller 3 [10de:01ed] (rev c1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]
> 
> 00:00.4 RAM memory [0500]: nVidia Corporation nForce2 Memory Controller 2 [10de:01ec] (rev c1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:00.5 RAM memory [0500]: nVidia Corporation nForce2 Memory Controller 5 [10de:01ef] (rev c1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:01.0 ISA bridge [0601]: nVidia Corporation nForce2 ISA Bridge [10de:0060] (rev a4)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 60: 01 40 00 00 01 44 00 00 01 42 00 00 00 01 f8 ff

                  ^
Address register defining where our io range lives.

> 00:01.1 SMBus [0c05]: nVidia Corporation nForce2 SMBus (MCP) [10de:0064] (rev a2)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:02.0 USB Controller [0c03]: nVidia Corporation nForce2 USB Controller [10de:0067] (rev a4) (prog-if 10 [OHCI])
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:02.1 USB Controller [0c03]: nVidia Corporation nForce2 USB Controller [10de:0067] (rev a4) (prog-if 10 [OHCI])
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:02.2 USB Controller [0c03]: nVidia Corporation nForce2 USB Controller [10de:0068] (rev a4) (prog-if 20 [EHCI])
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:04.0 Ethernet controller [0200]: nVidia Corporation nForce2 Ethernet Controller [10de:0066] (rev a1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:06.0 Multimedia audio controller [0401]: nVidia Corporation nForce2 AC97 Audio Controler (MCP) [10de:006a] (rev a1)
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1001]

> 00:08.0 PCI bridge [0604]: nVidia Corporation nForce2 External PCI Bridge [10de:006c] (rev a3) (prog-if 00 [Normal decode])

> 00:09.0 IDE interface [0101]: nVidia Corporation nForce2 IDE [10de:0065] (rev a2) (prog-if 8a [Master SecP PriP])
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:1000]

> 00:1e.0 PCI bridge [0604]: nVidia Corporation nForce2 AGP [10de:01e8] (rev c1) (prog-if 00 [Normal decode])

> 01:06.0 RAID bus controller [0104]: Silicon Image, Inc. SiI 3114 [SATALink/SATARaid] Serial ATA Controller [1095:3114] (rev 02)
> 	Subsystem: Silicon Image, Inc. Unknown device [1095:7114]

> 01:08.0 Mass storage controller [0180]: Silicon Image, Inc. SiI 3114 [SATALink/SATARaid] Serial ATA Controller [1095:3114] (rev 02)
> 	Subsystem: Silicon Image, Inc. SiI 3114 SATALink Controller [1095:3114]

> 01:09.0 Mass storage controller [0180]: Silicon Image, Inc. SiI 3114 [SATALink/SATARaid] Serial ATA Controller [1095:3114] (rev 02)
> 	Subsystem: Silicon Image, Inc. SiI 3114 SATALink Controller [1095:3114]

> 01:0b.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ [10ec:8139] (rev 10)
> 	Subsystem: EPoX Computer Co., Ltd. Onboard RTL8101L 10/100 MBit [1695:9001]

Match #1

> 01:0c.0 RAID bus controller [0104]: Silicon Image, Inc. SiI 3112 [SATALink/SATARaid] Serial ATA Controller [1095:3112] (rev 02)
> 	Subsystem: Silicon Image, Inc. SiI 3112 SATARaid Controller [1095:6112]

> 01:0d.0 FireWire (IEEE 1394) [0c00]: Agere Systems FW323 [11c1:5811] (rev 61) (prog-if 10 [OHCI])
> 	Subsystem: EPoX Computer Co., Ltd. Unknown device [1695:9015]

Match #2


Please test the attached patch.

When succesfull, please reply with
Acked-by: ##InsertRealNameHere## <moonraket at hotmail.com>

Luc Verhaegen.
-------------- next part --------------
Board enable for EPoX EP-8RDA3+.

SocketA + nForce2. Board enable seems extremely similar to the
CK804 based board enable for Gigabyte GA-K8N-SLI.

Motherboard includes a second ethernet controller and an Agere
firewire controller with valid subsystem ids, so these are used for
matching the board.

Signed-off-by: Luc Verhaegen <libv at skynet.be>

Index: board_enable.c
===================================================================
--- board_enable.c	(revision 743)
+++ board_enable.c	(working copy)
@@ -967,6 +967,33 @@
 }
 
 /**
+ * Suited for EPoX EP-8RDA3+: Socket A + nForce2 Ultra 400.
+ */
+static int board_epox_ep_8rda3plus(const char *name)
+{
+	struct pci_dev *dev;
+	uint32_t base;
+	uint8_t tmp;
+
+	dev = pci_dev_find(0x10DE, 0x0060);	/* NVIDIA nForce2 ISA Bridge */
+	if (!dev) {
+		fprintf(stderr, "\nERROR: NVIDIA ISA bridge not found.\n");
+		return -1;
+	}
+
+	base = pci_read_long(dev, 0x64) & 0x0000FF00; /* System control area */
+
+	/* If anyone knows more about the nforce2, feel free to explain this.
+	 * Looks suspiciously like the CK804 board enable but with a
+	 * different register offset. */
+	tmp = INB(base + 0xF1);
+	tmp |= 0x05;
+	OUTB(tmp, base + 0xF1);
+
+	return 0;
+}
+
+/**
  * We use 2 sets of IDs here, you're free to choose which is which. This
  * is to provide a very high degree of certainty when matching a board on
  * the basis of subsystem/card IDs. As not every vendor handles
@@ -1006,6 +1033,7 @@
 	{0x8086, 0x3590, 0x1028, 0x016c,  0x1000, 0x0030, 0x1028, 0x016c, NULL,         NULL,          "Dell",        "S1850",              ich5_gpio23_raise},
 	{0x1106, 0x3038, 0x1019, 0x0996,  0x1106, 0x3177, 0x1019, 0x0996, NULL,         NULL,          "Elitegroup",  "K7VTA3",             it8705f_write_enable_2e},
 	{0x1106, 0x3177, 0x1106, 0x3177,  0x1106, 0x3059, 0x1695, 0x3005, NULL,         NULL,          "EPoX",        "EP-8K5A2",           board_epox_ep_8k5a2},
+	{0x10EC, 0x8139, 0x1695, 0x9001,  0x11C1, 0x5811, 0x1695, 0x9015, NULL,         NULL,          "EPoX",        "EP-8RDA3+",          board_epox_ep_8rda3plus},
 	{0x8086, 0x7110,      0,      0,  0x8086, 0x7190,      0,      0, "epox",       "ep-bx3",      "EPoX",        "EP-BX3",             board_epox_ep_bx3},
 	{0x1039, 0x0761,      0,      0,       0,      0,      0,      0, "gigabyte",   "2761gxdk",    "GIGABYTE",    "GA-2761GXDK",        it87xx_probe_spi_flash},
 	{0x1106, 0x3227, 0x1458, 0x5001,  0x10ec, 0x8139, 0x1458, 0xe000, NULL,         NULL,          "GIGABYTE",    "GA-7VT600",          it8705_rom_write_enable},


More information about the flashrom mailing list