Patchwork Abit IP35 needs board enable.

login
register
about
Submitter Luc Verhaegen
Date 2009-07-06 22:04:44
Message ID <20090706220444.GA10708@skynet.be>
Download mbox | patch
Permalink /patch/10/
State Superseded
Headers show

Comments

Luc Verhaegen - 2009-07-06 22:04:44
Try this one, we might get lucky...

Luc Verhaegen.
Board enable for Abit IP35.

This board enable raises bit 0 of LPC IO Base + 0x0E. No idea what this
is supposed to change.

Signed-off-by: Luc Verhaegen.

Patch

Index: board_enable.c
===================================================================
--- board_enable.c	(revision 641)
+++ board_enable.c	(working copy)
@@ -806,6 +806,31 @@ 
 }
 
 /**
+ * Suited for Abit IP35: Intel P35 + ICH9R
+ */
+static int board_abit_ip35(const char *name)
+{
+	struct pci_dev *dev;
+	uint16_t base;
+	uint8_t tmp;
+
+	dev = pci_dev_find(0x8086, 0x2916);	/* Intel ICH9R LPC Interface */
+	if (!dev) {
+		fprintf(stderr, "\nERROR: Intel ICH9R LPC Interface not found.\n");
+		return -1;
+	}
+
+	/* LPC IO base */
+	base = pci_read_long(dev, 0x48) & 0x0000FFC0;
+
+	tmp = INB(base + 0x0E);
+	tmp |= 0x01;
+	OUTB(tmp, base + 0x0E);
+
+	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
@@ -828,6 +853,7 @@ 
 /* Please keep this list alphabetically ordered by vendor/board name. */
 struct board_pciid_enable board_pciid_enables[] = {
 	/* first pci-id set [4],          second pci-id set [4],          coreboot id [2],             vendor name    board name            flash enable */
+	{0x8086, 0x2926, 0x147b, 0x1084,  0x11ab, 0x4364, 0x147b, 0x1084, NULL,         NULL,          "Abit",        "IP35",               board_abit_ip35},
 	{0x8086, 0x1130,      0,      0,  0x105a, 0x0d30, 0x105a, 0x4d33, "acorp",      "6a815epd",    "Acorp",       "6A815EPD",           board_acorp_6a815epd},
 	{0x1022, 0x746B, 0x1022, 0x36C0,       0,      0,      0,      0, "AGAMI",      "ARUMA",       "agami",       "Aruma",              w83627hf_gpio24_raise_2e},
 	{0x1106, 0x3177, 0x17F2, 0x3177,  0x1106, 0x3148, 0x17F2, 0x3148, NULL,         NULL,          "Albatron",    "PM266A*",            board_epox_ep_8k5a2},