[flashrom] Remove board enable for Asus P5A.

Luc Verhaegen libv at skynet.be
Wed Oct 21 17:43:50 CEST 2009


A first: removal of what might be a working board enable still.

Long story short; it's horrible and i do not want to spend any time on 
cleaning it up. We have better things to do.

Luc Verhaegen.
-------------- next part --------------
Remove board enable for the Asus P5A.

Asus P5A was a very popular supersocket7 board more than a decade ago. I'm
sure that some people still have some working examples around, but they are
getting less and less common. I think that i am pretty much the only one
around still who would try to use flashrom for this board.

There's an io line from the Asus AS61256-8 chip to the WP on the flash. But
there is no info on this chip. We are using SMBUS on the ALI chip, and while
this routine here could be improved a lot, what is the point?

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

Index: board_enable.c
===================================================================
--- board_enable.c	(revision 752)
+++ board_enable.c	(working copy)
@@ -314,82 +314,6 @@
 	return 0;
 }
 
-/**
- * Suited for ASUS P5A.
- *
- * This is rather nasty code, but there's no way to do this cleanly.
- * We're basically talking to some unknown device on SMBus, my guess
- * is that it is the Winbond W83781D that lives near the DIP BIOS.
- */
-static int board_asus_p5a(const char *name)
-{
-	uint8_t tmp;
-	int i;
-
-#define ASUSP5A_LOOP 5000
-
-	OUTB(0x00, 0xE807);
-	OUTB(0xEF, 0xE803);
-
-	OUTB(0xFF, 0xE800);
-
-	for (i = 0; i < ASUSP5A_LOOP; i++) {
-		OUTB(0xE1, 0xFF);
-		if (INB(0xE800) & 0x04)
-			break;
-	}
-
-	if (i == ASUSP5A_LOOP) {
-		printf("%s: Unable to contact device.\n", name);
-		return -1;
-	}
-
-	OUTB(0x20, 0xE801);
-	OUTB(0x20, 0xE1);
-
-	OUTB(0xFF, 0xE802);
-
-	for (i = 0; i < ASUSP5A_LOOP; i++) {
-		tmp = INB(0xE800);
-		if (tmp & 0x70)
-			break;
-	}
-
-	if ((i == ASUSP5A_LOOP) || !(tmp & 0x10)) {
-		printf("%s: failed to read device.\n", name);
-		return -1;
-	}
-
-	tmp = INB(0xE804);
-	tmp &= ~0x02;
-
-	OUTB(0x00, 0xE807);
-	OUTB(0xEE, 0xE803);
-
-	OUTB(tmp, 0xE804);
-
-	OUTB(0xFF, 0xE800);
-	OUTB(0xE1, 0xFF);
-
-	OUTB(0x20, 0xE801);
-	OUTB(0x20, 0xE1);
-
-	OUTB(0xFF, 0xE802);
-
-	for (i = 0; i < ASUSP5A_LOOP; i++) {
-		tmp = INB(0xE800);
-		if (tmp & 0x70)
-			break;
-	}
-
-	if ((i == ASUSP5A_LOOP) || !(tmp & 0x10)) {
-		printf("%s: failed to write to device.\n", name);
-		return -1;
-	}
-
-	return 0;
-}
-
 static int board_ibm_x3455(const char *name)
 {
 	/* Set GPIO lines in the Broadcom HT-1000 southbridge. */
@@ -1075,7 +999,6 @@
 	{0x1106, 0x3177, 0x1043, 0x80A1,  0x1106, 0x3205, 0x1043, 0x8118, NULL,         NULL,          "ASUS",        "A7V8X-MX SE",        board_asus_a7v8x_mx},
 	{0x8086, 0x1a30, 0x1043, 0x8070,  0x8086, 0x244b, 0x1043, 0x8028, NULL,         NULL,          "ASUS",        "P4B266",             ich2_gpio22_raise},
 	{0x8086, 0x2570, 0x1043, 0x80F2,  0x105A, 0x3373, 0x1043, 0x80F5, NULL,         NULL,          "ASUS",        "P4P800-E Deluxe",    board_asus_p4p800},
-	{0x10B9, 0x1541,      0,      0,  0x10B9, 0x1533,      0,      0, "asus",       "p5a",         "ASUS",        "P5A",                board_asus_p5a},
 	{0x10DE, 0x0030, 0x1043, 0x818a,  0x8086, 0x100E, 0x1043, 0x80EE, NULL,         NULL,          "ASUS",        "P5ND2-SLI Deluxe",   board_asus_p5nd2_sli},
 	{0x1106, 0x3149, 0x1565, 0x3206,  0x1106, 0x3344, 0x1565, 0x1202, NULL,         NULL,          "Biostar",     "P4M80-M4",           it8705_rom_write_enable},
 	{0x8086, 0x3590, 0x1028, 0x016c,  0x1000, 0x0030, 0x1028, 0x016c, NULL,         NULL,          "Dell",        "PowerEdge 1850",     ich5_gpio23_raise},


More information about the flashrom mailing list