From dc34cab5cbc99f30f9fecc97894230593107ee24 Mon Sep 17 00:00:00 2001 From: Uwe Hermann Date: Tue, 16 Oct 2007 18:15:25 +0000 Subject: [PATCH] Fix the detection for the Winbond W83697SF. Unfortunately the revision has a slightly different format than that of the W83697UF/UG so we have to hack around it a bit. This patch has been verified to work on real hardware by Idwer Vollering on IRC (thanks!). Signed-off-by: Uwe Hermann Acked-by: Ronald G. Minnich git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2861 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- util/superiotool/winbond.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/util/superiotool/winbond.c b/util/superiotool/winbond.c index 46efec0e33..501ba26f94 100644 --- a/util/superiotool/winbond.c +++ b/util/superiotool/winbond.c @@ -92,8 +92,6 @@ const static struct superio_registers reg_table[] = { {EOT}}}, {0x610, "W83L517D/D-F", { {EOT}}}, - {0x681, "W83697SF/UF/UG", { - {EOT}}}, {0x708, "W83637HF/HG", { {EOT}}}, {0x828, "W83627THF/THG", { /* We assume rev is bits 3..0 of 0x21. */ @@ -295,6 +293,8 @@ const static struct superio_registers reg_table[] = { {0x30,0x60,0x61,0x70,0xf0,EOT}, {0x00,0x00,0x00,0x00,0x00,EOT}}, {EOT}}}, + {0x68, "W83697SF/UF/UG", { /* TODO: Add comment. */ + {EOT}}}, /* ID[3..0] */ {0xa, "W83877F", { @@ -333,7 +333,7 @@ void probe_idregs_winbond_helper(const char *init, uint16_t port) rev = regval(port, DEVICE_REV_REG); olddevid = regval(port, DEVICE_ID_REG_OLD) & 0x0f; - if (devid == 0x52) + if (devid == 0x52 || devid == 0x68) id = devid; /* ID only */ else if ((devid == 0x97) && ((rev & 0xf0) == 0x70)) id = (devid << 8) | rev; /* ID and rev */