summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2014-12-05 10:15:03 -0800
committerGuenter Roeck <linux@roeck-us.net>2014-12-08 06:48:37 -0800
commit907a6d5824599d09e986105a5a880d119a996c4b (patch)
treed2a21c761a31aa62441e1dc8b26491298f45eff4
parent4ad40cc568c5537de11092d3362f9cb287f915d9 (diff)
downloadlinux-stable-907a6d5824599d09e986105a5a880d119a996c4b.tar.gz
linux-stable-907a6d5824599d09e986105a5a880d119a996c4b.tar.bz2
linux-stable-907a6d5824599d09e986105a5a880d119a996c4b.zip
hwmon: (tmp401) Detect TMP435 on all addresses it supports
TMP435 supports a range of I2C addresses, not just 0x4c. Cc: Patrick Titiano <ptitiano@baylibre.com> Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-rw-r--r--Documentation/hwmon/tmp4012
-rw-r--r--drivers/hwmon/tmp401.c9
2 files changed, 5 insertions, 6 deletions
diff --git a/Documentation/hwmon/tmp401 b/Documentation/hwmon/tmp401
index 445ff7b0f6a7..8eb88e974055 100644
--- a/Documentation/hwmon/tmp401
+++ b/Documentation/hwmon/tmp401
@@ -20,7 +20,7 @@ Supported chips:
Datasheet: http://focus.ti.com/docs/prod/folders/print/tmp432.html
* Texas Instruments TMP435
Prefix: 'tmp435'
- Addresses scanned: I2C 0x4c
+ Addresses scanned: I2C 0x37, 0x48 - 0x4f
Datasheet: http://focus.ti.com/docs/prod/folders/print/tmp435.html
Authors:
diff --git a/drivers/hwmon/tmp401.c b/drivers/hwmon/tmp401.c
index f2182ee80830..99664ebc738d 100644
--- a/drivers/hwmon/tmp401.c
+++ b/drivers/hwmon/tmp401.c
@@ -44,7 +44,8 @@
#include <linux/sysfs.h>
/* Addresses to scan */
-static const unsigned short normal_i2c[] = { 0x4c, 0x4d, 0x4e, I2C_CLIENT_END };
+static const unsigned short normal_i2c[] = { 0x37, 0x48, 0x49, 0x4a, 0x4c, 0x4d,
+ 0x4e, 0x4f, I2C_CLIENT_END };
enum chips { tmp401, tmp411, tmp431, tmp432, tmp435 };
@@ -679,18 +680,16 @@ static int tmp401_detect(struct i2c_client *client,
kind = tmp411;
break;
case TMP431_DEVICE_ID:
- if (client->addr == 0x4e)
+ if (client->addr != 0x4c && client->addr != 0x4d)
return -ENODEV;
kind = tmp431;
break;
case TMP432_DEVICE_ID:
- if (client->addr == 0x4e)
+ if (client->addr != 0x4c && client->addr != 0x4d)
return -ENODEV;
kind = tmp432;
break;
case TMP435_DEVICE_ID:
- if (client->addr != 0x4c)
- return -ENODEV;
kind = tmp435;
break;
default: