aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJean Delvare <khali@linux-fr.org>2012-03-05 08:32:00 -0500
committerGuenter Roeck <guenter.roeck@ericsson.com>2012-03-07 12:48:21 -0500
commit4de86126a712ba83fa038d277c8282f7ed466a4b (patch)
tree1268e80314b118ddb446dccff6687423851608df /drivers
parent192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d (diff)
hwmon: (jc42) Add support for ST Microelectronics STTS2002 and STTS3000
These are fully compatible with Jedec JC 42.4 as far as I can see. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Guenter Roeck <guenter.roeck@ericsson.com> Cc: stable@vger.kernel.org # 3.0+ Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/hwmon/Kconfig3
-rw-r--r--drivers/hwmon/jc42.c10
2 files changed, 12 insertions, 1 deletions
diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig
index 02260406b9e4..91a51aff5363 100644
--- a/drivers/hwmon/Kconfig
+++ b/drivers/hwmon/Kconfig
@@ -498,7 +498,8 @@ config SENSORS_JC42
498 temperature sensors, which are used on many DDR3 memory modules for 498 temperature sensors, which are used on many DDR3 memory modules for
499 mobile devices and servers. Support will include, but not be limited 499 mobile devices and servers. Support will include, but not be limited
500 to, ADT7408, CAT34TS02, CAT6095, MAX6604, MCP9805, MCP98242, MCP98243, 500 to, ADT7408, CAT34TS02, CAT6095, MAX6604, MCP9805, MCP98242, MCP98243,
501 MCP9843, SE97, SE98, STTS424(E), TSE2002B3, and TS3000B3. 501 MCP9843, SE97, SE98, STTS424(E), STTS2002, STTS3000, TSE2002B3, and
502 TS3000B3.
502 503
503 This driver can also be built as a module. If so, the module 504 This driver can also be built as a module. If so, the module
504 will be called jc42. 505 will be called jc42.
diff --git a/drivers/hwmon/jc42.c b/drivers/hwmon/jc42.c
index 28c09eead36b..08430ecb306a 100644
--- a/drivers/hwmon/jc42.c
+++ b/drivers/hwmon/jc42.c
@@ -113,6 +113,12 @@ static const unsigned short normal_i2c[] = {
113#define STTS424E_DEVID 0x0000 113#define STTS424E_DEVID 0x0000
114#define STTS424E_DEVID_MASK 0xfffe 114#define STTS424E_DEVID_MASK 0xfffe
115 115
116#define STTS2002_DEVID 0x0300
117#define STTS2002_DEVID_MASK 0xffff
118
119#define STTS3000_DEVID 0x0200
120#define STTS3000_DEVID_MASK 0xffff
121
116static u16 jc42_hysteresis[] = { 0, 1500, 3000, 6000 }; 122static u16 jc42_hysteresis[] = { 0, 1500, 3000, 6000 };
117 123
118struct jc42_chips { 124struct jc42_chips {
@@ -133,6 +139,8 @@ static struct jc42_chips jc42_chips[] = {
133 { NXP_MANID, SE98_DEVID, SE98_DEVID_MASK }, 139 { NXP_MANID, SE98_DEVID, SE98_DEVID_MASK },
134 { STM_MANID, STTS424_DEVID, STTS424_DEVID_MASK }, 140 { STM_MANID, STTS424_DEVID, STTS424_DEVID_MASK },
135 { STM_MANID, STTS424E_DEVID, STTS424E_DEVID_MASK }, 141 { STM_MANID, STTS424E_DEVID, STTS424E_DEVID_MASK },
142 { STM_MANID, STTS2002_DEVID, STTS2002_DEVID_MASK },
143 { STM_MANID, STTS3000_DEVID, STTS3000_DEVID_MASK },
136}; 144};
137 145
138/* Each client has this additional data */ 146/* Each client has this additional data */
@@ -171,6 +179,8 @@ static const struct i2c_device_id jc42_id[] = {
171 { "se97b", 0 }, 179 { "se97b", 0 },
172 { "se98", 0 }, 180 { "se98", 0 },
173 { "stts424", 0 }, 181 { "stts424", 0 },
182 { "stts2002", 0 },
183 { "stts3000", 0 },
174 { "tse2002b3", 0 }, 184 { "tse2002b3", 0 },
175 { "ts3000b3", 0 }, 185 { "ts3000b3", 0 },
176 { } 186 { }