aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon/lm75.c
diff options
context:
space:
mode:
authorJean Delvare <khali@linux-fr.org>2005-07-27 15:28:28 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2005-09-05 12:14:06 -0400
commite647ecf15e365679f0528d7815ab4db0d4802918 (patch)
treec1892aa10ee99705e706680760d6bf247e5914af /drivers/hwmon/lm75.c
parent17f990c87a1e5addc49b99a53b3d2a2fac9680e9 (diff)
[PATCH] hwmon: soften lm75 initialization
The LM75 initialization is a bit agressive, it arbitrarily reconfigures the chip. Make it only change the bit it needs. This is a port from the 2.4 kernel version of the driver (lm_sensors). Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/hwmon/lm75.c')
-rw-r--r--drivers/hwmon/lm75.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c
index 5be164ed278e..79d7ebc9b14a 100644
--- a/drivers/hwmon/lm75.c
+++ b/drivers/hwmon/lm75.c
@@ -251,8 +251,12 @@ static int lm75_write_value(struct i2c_client *client, u8 reg, u16 value)
251 251
252static void lm75_init_client(struct i2c_client *client) 252static void lm75_init_client(struct i2c_client *client)
253{ 253{
254 /* Initialize the LM75 chip */ 254 int reg;
255 lm75_write_value(client, LM75_REG_CONF, 0); 255
256 /* Enable if in shutdown mode */
257 reg = lm75_read_value(client, LM75_REG_CONF);
258 if (reg >= 0 && (reg & 0x01))
259 lm75_write_value(client, LM75_REG_CONF, reg & 0xfe);
256} 260}
257 261
258static struct lm75_data *lm75_update_device(struct device *dev) 262static struct lm75_data *lm75_update_device(struct device *dev)