aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2015-02-01 20:20:38 -0500
committerGuenter Roeck <linux@roeck-us.net>2015-03-09 12:59:35 -0400
commit0ea2f1db8e6888029b781bbaf68547e2e0996402 (patch)
tree4e0f86863f11b6d2215cff9e7165602e2550d95e /drivers/hwmon
parent7bc32d298b0b597a0a8a6527c9929fac68524d4a (diff)
hwmon: (jc42) Add support for additional IDT temperature sensors
TS3000GB0 has a new device ID (0x2913). Since IDT's datasheets suggest that the upper 8 bit of the device ID reflect the chip ID and the lower 8 bit reflect the version number, modify the code to accept all chips with ID 0x29xx. Also add support for TS3001 and TSE2004. Some of the datasheets for older chips are no longer available from the IDT web site, so replace explicit links in the documentation with a generic note. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon')
-rw-r--r--drivers/hwmon/Kconfig2
-rw-r--r--drivers/hwmon/jc42.c16
2 files changed, 11 insertions, 7 deletions
diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig
index f5fc54e24fea..e96c0ebaaceb 100644
--- a/drivers/hwmon/Kconfig
+++ b/drivers/hwmon/Kconfig
@@ -624,7 +624,7 @@ config SENSORS_JC42
624 mobile devices and servers. Support will include, but not be limited 624 mobile devices and servers. Support will include, but not be limited
625 to, ADT7408, AT30TS00, CAT34TS02, CAT6095, MAX6604, MCP9804, MCP9805, 625 to, ADT7408, AT30TS00, CAT34TS02, CAT6095, MAX6604, MCP9804, MCP9805,
626 MCP98242, MCP98243, MCP98244, MCP9843, SE97, SE98, STTS424(E), 626 MCP98242, MCP98243, MCP98244, MCP9843, SE97, SE98, STTS424(E),
627 STTS2002, STTS3000, TSE2002B3, TSE2002GB2, TS3000B3, and TS3000GB2. 627 STTS2002, STTS3000, TSE2002, TSE2004, TS3000, and TS3001.
628 628
629 This driver can also be built as a module. If so, the module 629 This driver can also be built as a module. If so, the module
630 will be called jc42. 630 will be called jc42.
diff --git a/drivers/hwmon/jc42.c b/drivers/hwmon/jc42.c
index 996bdfd5cf25..9887d3224a86 100644
--- a/drivers/hwmon/jc42.c
+++ b/drivers/hwmon/jc42.c
@@ -87,11 +87,14 @@ static const unsigned short normal_i2c[] = {
87#define AT30TSE004_DEVID_MASK 0xffff 87#define AT30TSE004_DEVID_MASK 0xffff
88 88
89/* IDT */ 89/* IDT */
90#define TS3000B3_DEVID 0x2903 /* Also matches TSE2002B3 */ 90#define TSE2004_DEVID 0x2200
91#define TS3000B3_DEVID_MASK 0xffff 91#define TSE2004_DEVID_MASK 0xff00
92 92
93#define TS3000GB2_DEVID 0x2912 /* Also matches TSE2002GB2 */ 93#define TS3000_DEVID 0x2900 /* Also matches TSE2002 */
94#define TS3000GB2_DEVID_MASK 0xffff 94#define TS3000_DEVID_MASK 0xff00
95
96#define TS3001_DEVID 0x3000
97#define TS3001_DEVID_MASK 0xff00
95 98
96/* Maxim */ 99/* Maxim */
97#define MAX6604_DEVID 0x3e00 100#define MAX6604_DEVID 0x3e00
@@ -152,8 +155,9 @@ static struct jc42_chips jc42_chips[] = {
152 { ADT_MANID, ADT7408_DEVID, ADT7408_DEVID_MASK }, 155 { ADT_MANID, ADT7408_DEVID, ADT7408_DEVID_MASK },
153 { ATMEL_MANID, AT30TS00_DEVID, AT30TS00_DEVID_MASK }, 156 { ATMEL_MANID, AT30TS00_DEVID, AT30TS00_DEVID_MASK },
154 { ATMEL_MANID2, AT30TSE004_DEVID, AT30TSE004_DEVID_MASK }, 157 { ATMEL_MANID2, AT30TSE004_DEVID, AT30TSE004_DEVID_MASK },
155 { IDT_MANID, TS3000B3_DEVID, TS3000B3_DEVID_MASK }, 158 { IDT_MANID, TSE2004_DEVID, TSE2004_DEVID_MASK },
156 { IDT_MANID, TS3000GB2_DEVID, TS3000GB2_DEVID_MASK }, 159 { IDT_MANID, TS3000_DEVID, TS3000_DEVID_MASK },
160 { IDT_MANID, TS3001_DEVID, TS3001_DEVID_MASK },
157 { MAX_MANID, MAX6604_DEVID, MAX6604_DEVID_MASK }, 161 { MAX_MANID, MAX6604_DEVID, MAX6604_DEVID_MASK },
158 { MCP_MANID, MCP9804_DEVID, MCP9804_DEVID_MASK }, 162 { MCP_MANID, MCP9804_DEVID, MCP9804_DEVID_MASK },
159 { MCP_MANID, MCP98242_DEVID, MCP98242_DEVID_MASK }, 163 { MCP_MANID, MCP98242_DEVID, MCP98242_DEVID_MASK },