hwmon: (jc42) Add support for ST Microelectronics STTS2002 and STTS3000
authorJean Delvare <khali@linux-fr.org>
Mon, 5 Mar 2012 13:32:00 +0000 (08:32 -0500)
committerGuenter Roeck <guenter.roeck@ericsson.com>
Wed, 7 Mar 2012 17:48:21 +0000 (09:48 -0800)
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>
Documentation/hwmon/jc42
drivers/hwmon/Kconfig
drivers/hwmon/jc42.c

index a22ecf48f255c24220eec21cb1769e29c5db11c7..e7133750286f658c0350fdac44c2cce0beab7d36 100644 (file)
@@ -48,6 +48,12 @@ Supported chips:
     Datasheets:
        http://www.st.com/stonline/products/literature/ds/13447/stts424.pdf
        http://www.st.com/stonline/products/literature/ds/13448/stts424e02.pdf
+  * ST Microelectronics STTS2002, STTS3000
+    Prefix: 'stts2002', 'stts3000'
+    Addresses scanned: I2C 0x18 - 0x1f
+    Datasheets:
+       http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00225278.pdf
+       http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATA_BRIEF/CD00270920.pdf
   * JEDEC JC 42.4 compliant temperature sensor chips
     Prefix: 'jc42'
     Addresses scanned: I2C 0x18 - 0x1f
index 02260406b9e440ac406ac3ae7fc3cded1f05bb4e..91a51aff5363d9bcd6ffe1cb6938a660db39b17f 100644 (file)
@@ -498,7 +498,8 @@ config SENSORS_JC42
          temperature sensors, which are used on many DDR3 memory modules for
          mobile devices and servers.  Support will include, but not be limited
          to, ADT7408, CAT34TS02, CAT6095, MAX6604, MCP9805, MCP98242, MCP98243,
-         MCP9843, SE97, SE98, STTS424(E), TSE2002B3, and TS3000B3.
+         MCP9843, SE97, SE98, STTS424(E), STTS2002, STTS3000, TSE2002B3, and
+         TS3000B3.
 
          This driver can also be built as a module.  If so, the module
          will be called jc42.
index 28c09eead36baf1ae8360990613d8c694ffa4f29..08430ecb306a2229d0327d331411bc13ff23a140 100644 (file)
@@ -113,6 +113,12 @@ static const unsigned short normal_i2c[] = {
 #define STTS424E_DEVID         0x0000
 #define STTS424E_DEVID_MASK    0xfffe
 
+#define STTS2002_DEVID         0x0300
+#define STTS2002_DEVID_MASK    0xffff
+
+#define STTS3000_DEVID         0x0200
+#define STTS3000_DEVID_MASK    0xffff
+
 static u16 jc42_hysteresis[] = { 0, 1500, 3000, 6000 };
 
 struct jc42_chips {
@@ -133,6 +139,8 @@ static struct jc42_chips jc42_chips[] = {
        { NXP_MANID, SE98_DEVID, SE98_DEVID_MASK },
        { STM_MANID, STTS424_DEVID, STTS424_DEVID_MASK },
        { STM_MANID, STTS424E_DEVID, STTS424E_DEVID_MASK },
+       { STM_MANID, STTS2002_DEVID, STTS2002_DEVID_MASK },
+       { STM_MANID, STTS3000_DEVID, STTS3000_DEVID_MASK },
 };
 
 /* Each client has this additional data */
@@ -171,6 +179,8 @@ static const struct i2c_device_id jc42_id[] = {
        { "se97b", 0 },
        { "se98", 0 },
        { "stts424", 0 },
+       { "stts2002", 0 },
+       { "stts3000", 0 },
        { "tse2002b3", 0 },
        { "ts3000b3", 0 },
        { }