aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2013-09-23 14:23:37 -0400
committerGuenter Roeck <linux@roeck-us.net>2013-10-18 12:12:03 -0400
commit3f08d7f49f8365d5c9050522ee733951a503e955 (patch)
tree864389fe22318856f8ee65621d1034a998dd9ece
parentc24c407e963e73d3ad18b9bc0af32cf23f37a7b0 (diff)
hwmon: (pmbus/ltc2978): Add support for LTC2978A
Detect LTC2978A chip ID. Treat it as LC2978. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-rw-r--r--Documentation/hwmon/ltc29783
-rw-r--r--drivers/hwmon/pmbus/ltc2978.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/Documentation/hwmon/ltc2978 b/Documentation/hwmon/ltc2978
index 6934936de2c7..a0546fc42273 100644
--- a/Documentation/hwmon/ltc2978
+++ b/Documentation/hwmon/ltc2978
@@ -10,10 +10,11 @@ Supported chips:
10 Prefix: 'ltc2977' 10 Prefix: 'ltc2977'
11 Addresses scanned: - 11 Addresses scanned: -
12 Datasheet: http://www.linear.com/product/ltc2977 12 Datasheet: http://www.linear.com/product/ltc2977
13 * Linear Technology LTC2978 13 * Linear Technology LTC2978, LTC2978A
14 Prefix: 'ltc2978' 14 Prefix: 'ltc2978'
15 Addresses scanned: - 15 Addresses scanned: -
16 Datasheet: http://www.linear.com/product/ltc2978 16 Datasheet: http://www.linear.com/product/ltc2978
17 http://www.linear.com/product/ltc2978a
17 * Linear Technology LTC3880 18 * Linear Technology LTC3880
18 Prefix: 'ltc3880' 19 Prefix: 'ltc3880'
19 Addresses scanned: - 20 Addresses scanned: -
diff --git a/drivers/hwmon/pmbus/ltc2978.c b/drivers/hwmon/pmbus/ltc2978.c
index e05ff565ef61..de3c152a1d9a 100644
--- a/drivers/hwmon/pmbus/ltc2978.c
+++ b/drivers/hwmon/pmbus/ltc2978.c
@@ -57,6 +57,7 @@ enum chips { ltc2974, ltc2977, ltc2978, ltc3880, ltc3883 };
57#define LTC2977_ID 0x0130 57#define LTC2977_ID 0x0130
58#define LTC2978_ID_REV1 0x0121 58#define LTC2978_ID_REV1 0x0121
59#define LTC2978_ID_REV2 0x0122 59#define LTC2978_ID_REV2 0x0122
60#define LTC2978A_ID 0x0124
60#define LTC3880_ID 0x4000 61#define LTC3880_ID 0x4000
61#define LTC3880_ID_MASK 0xff00 62#define LTC3880_ID_MASK 0xff00
62#define LTC3883_ID 0x4300 63#define LTC3883_ID 0x4300
@@ -397,7 +398,8 @@ static int ltc2978_probe(struct i2c_client *client,
397 data->id = ltc2974; 398 data->id = ltc2974;
398 } else if (chip_id == LTC2977_ID) { 399 } else if (chip_id == LTC2977_ID) {
399 data->id = ltc2977; 400 data->id = ltc2977;
400 } else if (chip_id == LTC2978_ID_REV1 || chip_id == LTC2978_ID_REV2) { 401 } else if (chip_id == LTC2978_ID_REV1 || chip_id == LTC2978_ID_REV2 ||
402 chip_id == LTC2978A_ID) {
401 data->id = ltc2978; 403 data->id = ltc2978;
402 } else if ((chip_id & LTC3880_ID_MASK) == LTC3880_ID) { 404 } else if ((chip_id & LTC3880_ID_MASK) == LTC3880_ID) {
403 data->id = ltc3880; 405 data->id = ltc3880;