diff options
author | Jean Delvare <khali@linux-fr.org> | 2005-09-04 16:52:17 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-09-09 17:34:21 -0400 |
commit | 2251cf1a4b37bd483501614c2d78f5b8286f20d7 (patch) | |
tree | 40fee772d99be7e5d810ec9b493d98fadcaa4218 /drivers/hwmon | |
parent | 0db9714a0ca2a1a36721a2e90fbfcbdf3d5ff117 (diff) |
[PATCH] hwmon: w83627hf: no reset by default
Make the reset of the chips in w83627hf optional rather than the
default. This reset has been causing trouble several times already. It
may even go completely away unless it proves to be useful to at least
one user.
Closes bug #5168:
http://bugzilla.kernel.org/show_bug.cgi?id=5168
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/hwmon')
-rw-r--r-- | drivers/hwmon/w83627hf.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/hwmon/w83627hf.c b/drivers/hwmon/w83627hf.c index 02bd5c0239a2..3479dc5208e2 100644 --- a/drivers/hwmon/w83627hf.c +++ b/drivers/hwmon/w83627hf.c | |||
@@ -64,6 +64,10 @@ static unsigned short address; | |||
64 | /* Insmod parameters */ | 64 | /* Insmod parameters */ |
65 | enum chips { any_chip, w83627hf, w83627thf, w83697hf, w83637hf }; | 65 | enum chips { any_chip, w83627hf, w83627thf, w83697hf, w83637hf }; |
66 | 66 | ||
67 | static int reset; | ||
68 | module_param(reset, bool, 0); | ||
69 | MODULE_PARM_DESC(reset, "Set to one to reset chip on load"); | ||
70 | |||
67 | static int init = 1; | 71 | static int init = 1; |
68 | module_param(init, bool, 0); | 72 | module_param(init, bool, 0); |
69 | MODULE_PARM_DESC(init, "Set to zero to bypass chip initialization"); | 73 | MODULE_PARM_DESC(init, "Set to zero to bypass chip initialization"); |
@@ -1279,7 +1283,15 @@ static void w83627hf_init_client(struct i2c_client *client) | |||
1279 | int type = data->type; | 1283 | int type = data->type; |
1280 | u8 tmp; | 1284 | u8 tmp; |
1281 | 1285 | ||
1282 | if(init) { | 1286 | if (reset) { |
1287 | /* Resetting the chip has been the default for a long time, | ||
1288 | but repeatedly caused problems (fans going to full | ||
1289 | speed...) so it is now optional. It might even go away if | ||
1290 | nobody reports it as being useful, as I see very little | ||
1291 | reason why this would be needed at all. */ | ||
1292 | dev_info(&client->dev, "If reset=1 solved a problem you were " | ||
1293 | "having, please report!\n"); | ||
1294 | |||
1283 | /* save this register */ | 1295 | /* save this register */ |
1284 | i = w83627hf_read_value(client, W83781D_REG_BEEP_CONFIG); | 1296 | i = w83627hf_read_value(client, W83781D_REG_BEEP_CONFIG); |
1285 | /* Reset all except Watchdog values and last conversion values | 1297 | /* Reset all except Watchdog values and last conversion values |