diff options
Diffstat (limited to 'drivers/hwmon/w83627hf.c')
-rw-r--r-- | drivers/hwmon/w83627hf.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/hwmon/w83627hf.c b/drivers/hwmon/w83627hf.c index 879d0a6544cc..181f4e8590b1 100644 --- a/drivers/hwmon/w83627hf.c +++ b/drivers/hwmon/w83627hf.c | |||
@@ -75,6 +75,10 @@ static int init = 1; | |||
75 | module_param(init, bool, 0); | 75 | module_param(init, bool, 0); |
76 | MODULE_PARM_DESC(init, "Set to zero to bypass chip initialization"); | 76 | MODULE_PARM_DESC(init, "Set to zero to bypass chip initialization"); |
77 | 77 | ||
78 | static unsigned short force_id; | ||
79 | module_param(force_id, ushort, 0); | ||
80 | MODULE_PARM_DESC(force_id, "Override the detected device ID"); | ||
81 | |||
78 | /* modified from kernel/include/traps.c */ | 82 | /* modified from kernel/include/traps.c */ |
79 | static int REG; /* The register to read/write */ | 83 | static int REG; /* The register to read/write */ |
80 | #define DEV 0x07 /* Register: Logical device select */ | 84 | #define DEV 0x07 /* Register: Logical device select */ |
@@ -1014,7 +1018,7 @@ static int __init w83627hf_find(int sioaddr, unsigned short *addr, | |||
1014 | VAL = sioaddr + 1; | 1018 | VAL = sioaddr + 1; |
1015 | 1019 | ||
1016 | superio_enter(); | 1020 | superio_enter(); |
1017 | val= superio_inb(DEVID); | 1021 | val = force_id ? force_id : superio_inb(DEVID); |
1018 | switch (val) { | 1022 | switch (val) { |
1019 | case W627_DEVID: | 1023 | case W627_DEVID: |
1020 | sio_data->type = w83627hf; | 1024 | sio_data->type = w83627hf; |