From 9c2e14afb98f761ec80ea809adbc87b15b060e7b Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Mon, 2 Jul 2007 23:08:26 +0200 Subject: [PATCH] hwmon: fix Abit Uguru3 driver detection on some motherboards This patch changes the driver to also detect uguru3's which hold 0x08 at DATA initially, as has been reported here: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=220160 Also when an uguru3's holds 0x0014 in the ID register it will now report "Abit AB9 Pro" as motherboard identification. Signed-off-by: Hans de Goede Signed-off-by: Mark M. Hoffman --- drivers/hwmon/abituguru3.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/hwmon/abituguru3.c b/drivers/hwmon/abituguru3.c index cf6ac4cdff..a003d104ca 100644 --- a/drivers/hwmon/abituguru3.c +++ b/drivers/hwmon/abituguru3.c @@ -351,7 +351,7 @@ static const struct abituguru3_motherboard_info abituguru3_motherboards[] = { { "AUX4 Fan", 38, 2, 60, 1, 0 }, { NULL, 0, 0, 0, 0, 0 } } }, - { 0x0014, "unknown", { + { 0x0014, "Abit AB9 Pro", { { "CPU Core", 0, 0, 10, 1, 0 }, { "DDR", 1, 0, 10, 1, 0 }, { "DDR VTT", 2, 0, 10, 1, 0 }, @@ -1053,12 +1053,13 @@ static struct platform_driver abituguru3_driver = { static int __init abituguru3_detect(void) { - /* See if there is an uguru3 there. An idle uGuru3 will hold 0x00 - at DATA and 0xAC at CMD. Sometimes the uGuru3 will hold 0x05 at - CMD instead, why is unknown. So we test for 0x05 too. */ + /* See if there is an uguru3 there. An idle uGuru3 will hold 0x00 or + 0x08 at DATA and 0xAC at CMD. Sometimes the uGuru3 will hold 0x05 + at CMD instead, why is unknown. So we test for 0x05 too. */ u8 data_val = inb_p(ABIT_UGURU3_BASE + ABIT_UGURU3_DATA); u8 cmd_val = inb_p(ABIT_UGURU3_BASE + ABIT_UGURU3_CMD); - if ((data_val == 0x00) && ((cmd_val == 0xAC) || (cmd_val == 0x05))) + if (((data_val == 0x00) || (data_val == 0x08)) && + ((cmd_val == 0xAC) || (cmd_val == 0x05))) return ABIT_UGURU3_BASE; ABIT_UGURU3_DEBUG("no Abit uGuru3 found, data = 0x%02X, cmd = " -- 2.39.5