Add board enable for the EPoX EP-BX3

Corresponding to flashrom svn r125 and coreboot v2 svn r2743.

Signed-off-by: Luc Verhaegen <libv@skynet.be>
Acked-by: Peter Stuge <peter@stuge.se>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
diff --git a/README b/README
index 8aec2a0..12be20d 100644
--- a/README
+++ b/README
@@ -54,6 +54,7 @@
 * Agami Aruma: use -m AGAMI:ARUMA
 * ASUS P5A: use -m asus:p5a
 * IBM x3455: use -m ibm:x3455
+* EPoX EP-BX3: use -m epox:ep-bx3
 
 
 ROM Layout Support
diff --git a/board_enable.c b/board_enable.c
index 5a75561..429c86b 100644
--- a/board_enable.c
+++ b/board_enable.c
@@ -261,6 +261,25 @@
 	return 0;
 }
 
+/**
+ * Suited for EPoX EP-BX3, and maybe some other Intel 440BX based boards.
+ */
+static int board_epox_ep_bx3(const char *name)
+{
+	uint8_t tmp;
+
+	/* Raise GPIO22. */
+	tmp = inb(0x4036);
+	outb(tmp, 0xEB);
+
+	tmp |= 0x40;
+
+	outb(tmp, 0x4036);
+	outb(tmp, 0xEB);
+
+	return 0;
+}
+
 /*
  * We use 2 sets of ids here, you're free to choose which is which. This
  * to provide a very high degree of certainty when matching a board on
@@ -309,6 +328,8 @@
 	 "asus", "p5a", "ASUS P5A", board_asus_p5a},
 	{0x1166, 0x0205, 0x1014, 0x0347, 0x0000, 0x0000, 0x0000, 0x0000,
 	 "ibm", "x3455", "IBM x3455", board_ibm_x3455},
+	{0x8086, 0x7110, 0x0000, 0x0000, 0x8086, 0x7190, 0x0000, 0x0000,
+	 "epox", "ep-bx3", "EPoX EP-BX3", board_epox_ep_bx3},
 	{0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL}	/* Keep this */
 };