aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon/w83627hf.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/hwmon/w83627hf.c')
-rw-r--r--drivers/hwmon/w83627hf.c6
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;
75module_param(init, bool, 0); 75module_param(init, bool, 0);
76MODULE_PARM_DESC(init, "Set to zero to bypass chip initialization"); 76MODULE_PARM_DESC(init, "Set to zero to bypass chip initialization");
77 77
78static unsigned short force_id;
79module_param(force_id, ushort, 0);
80MODULE_PARM_DESC(force_id, "Override the detected device ID");
81
78/* modified from kernel/include/traps.c */ 82/* modified from kernel/include/traps.c */
79static int REG; /* The register to read/write */ 83static 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;