diff options
author | Craig Kelley <namonai@gmail.com> | 2008-02-29 10:24:44 -0700 |
---|---|---|
committer | Mark M. Hoffman <mhoffman@lightlink.com> | 2008-03-02 14:21:35 -0500 |
commit | 809307768cb177621b8f45f87fa840993ca4cb60 (patch) | |
tree | 22d46f22005258624fa921d7074ca38c62fe9266 /drivers/hwmon | |
parent | 49914084e797530d9baaf51df9eda77babc98fa8 (diff) |
hwmon: (smsc47b397) add a new chip id (0x8c)
Added a new ID (0x8c) for the smsc47b397 hardware monitor driver.
This ID is used by HP in, at least, their dc7700 line.
Signed-off-by: Craig Kelley <namonai@gmail.com>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
Diffstat (limited to 'drivers/hwmon')
-rw-r--r-- | drivers/hwmon/smsc47b397.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/hwmon/smsc47b397.c b/drivers/hwmon/smsc47b397.c index 0b57d2ea2cf7..54187bf25d34 100644 --- a/drivers/hwmon/smsc47b397.c +++ b/drivers/hwmon/smsc47b397.c @@ -331,11 +331,23 @@ exit: static int __init smsc47b397_find(unsigned short *addr) { u8 id, rev; + char *name; superio_enter(); id = superio_inb(SUPERIO_REG_DEVID); - if ((id != 0x6f) && (id != 0x81) && (id != 0x85)) { + switch(id) { + case 0x81: + name = "SCH5307-NS"; + break; + case 0x6f: + name = "LPC47B397-NC"; + break; + case 0x85: + case 0x8c: + name = "SCH5317"; + break; + default: superio_exit(); return -ENODEV; } @@ -348,8 +360,7 @@ static int __init smsc47b397_find(unsigned short *addr) printk(KERN_INFO DRVNAME ": found SMSC %s " "(base address 0x%04x, revision %u)\n", - id == 0x81 ? "SCH5307-NS" : id == 0x85 ? "SCH5317" : - "LPC47B397-NC", *addr, rev); + name, *addr, rev); superio_exit(); return 0; |