diff options
Diffstat (limited to 'drivers/hwmon/w83627ehf.c')
-rw-r--r-- | drivers/hwmon/w83627ehf.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c index d5aa25ce5dbd..699592855bd8 100644 --- a/drivers/hwmon/w83627ehf.c +++ b/drivers/hwmon/w83627ehf.c | |||
@@ -59,6 +59,10 @@ static const char * w83627ehf_device_names[] = { | |||
59 | "w83627dhg", | 59 | "w83627dhg", |
60 | }; | 60 | }; |
61 | 61 | ||
62 | static unsigned short force_id; | ||
63 | module_param(force_id, ushort, 0); | ||
64 | MODULE_PARM_DESC(force_id, "Override the detected device ID"); | ||
65 | |||
62 | #define DRVNAME "w83627ehf" | 66 | #define DRVNAME "w83627ehf" |
63 | 67 | ||
64 | /* | 68 | /* |
@@ -1445,8 +1449,11 @@ static int __init w83627ehf_find(int sioaddr, unsigned short *addr, | |||
1445 | 1449 | ||
1446 | superio_enter(sioaddr); | 1450 | superio_enter(sioaddr); |
1447 | 1451 | ||
1448 | val = (superio_inb(sioaddr, SIO_REG_DEVID) << 8) | 1452 | if (force_id) |
1449 | | superio_inb(sioaddr, SIO_REG_DEVID + 1); | 1453 | val = force_id; |
1454 | else | ||
1455 | val = (superio_inb(sioaddr, SIO_REG_DEVID) << 8) | ||
1456 | | superio_inb(sioaddr, SIO_REG_DEVID + 1); | ||
1450 | switch (val & SIO_ID_MASK) { | 1457 | switch (val & SIO_ID_MASK) { |
1451 | case SIO_W83627EHF_ID: | 1458 | case SIO_W83627EHF_ID: |
1452 | sio_data->kind = w83627ehf; | 1459 | sio_data->kind = w83627ehf; |