Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

+14 -12
+3 -5
Documentation/hwmon/jc42
··· 11 11 http://www.atmel.com/Images/doc8711.pdf 12 12 http://www.atmel.com/Images/Atmel-8852-SEEPROM-AT30TSE002A-Datasheet.pdf 13 13 http://www.atmel.com/Images/Atmel-8868-DTS-AT30TSE004A-Datasheet.pdf 14 - * IDT TSE2002B3, TSE2002GB2, TS3000B3, TS3000GB2 14 + * IDT TSE2002B3, TSE2002GB2, TSE2004GB2, TS3000B3, TS3000GB0, TS3000GB2, 15 + TS3001GB2 15 16 Datasheets: 16 - http://www.idt.com/sites/default/files/documents/IDT_TSE2002B3C_DST_20100512_120303152056.pdf 17 - http://www.idt.com/sites/default/files/documents/IDT_TSE2002GB2A1_DST_20111107_120303145914.pdf 18 - http://www.idt.com/sites/default/files/documents/IDT_TS3000B3A_DST_20101129_120303152013.pdf 19 - http://www.idt.com/sites/default/files/documents/IDT_TS3000GB2A1_DST_20111104_120303151012.pdf 17 + Available from IDT web site 20 18 * Maxim MAX6604 21 19 Datasheets: 22 20 http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
+1 -1
drivers/hwmon/Kconfig
··· 624 624 mobile devices and servers. Support will include, but not be limited 625 625 to, ADT7408, AT30TS00, CAT34TS02, CAT6095, MAX6604, MCP9804, MCP9805, 626 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 629 This driver can also be built as a module. If so, the module 630 630 will be called jc42.
+10 -6
drivers/hwmon/jc42.c
··· 87 87 #define AT30TSE004_DEVID_MASK 0xffff 88 88 89 89 /* IDT */ 90 - #define TS3000B3_DEVID 0x2903 /* Also matches TSE2002B3 */ 91 - #define TS3000B3_DEVID_MASK 0xffff 90 + #define TSE2004_DEVID 0x2200 91 + #define TSE2004_DEVID_MASK 0xff00 92 92 93 - #define TS3000GB2_DEVID 0x2912 /* Also matches TSE2002GB2 */ 94 - #define TS3000GB2_DEVID_MASK 0xffff 93 + #define TS3000_DEVID 0x2900 /* Also matches TSE2002 */ 94 + #define TS3000_DEVID_MASK 0xff00 95 + 96 + #define TS3001_DEVID 0x3000 97 + #define TS3001_DEVID_MASK 0xff00 95 98 96 99 /* Maxim */ 97 100 #define MAX6604_DEVID 0x3e00 ··· 155 152 { ADT_MANID, ADT7408_DEVID, ADT7408_DEVID_MASK }, 156 153 { ATMEL_MANID, AT30TS00_DEVID, AT30TS00_DEVID_MASK }, 157 154 { ATMEL_MANID2, AT30TSE004_DEVID, AT30TSE004_DEVID_MASK }, 158 - { IDT_MANID, TS3000B3_DEVID, TS3000B3_DEVID_MASK }, 159 - { IDT_MANID, TS3000GB2_DEVID, TS3000GB2_DEVID_MASK }, 155 + { IDT_MANID, TSE2004_DEVID, TSE2004_DEVID_MASK }, 156 + { IDT_MANID, TS3000_DEVID, TS3000_DEVID_MASK }, 157 + { IDT_MANID, TS3001_DEVID, TS3001_DEVID_MASK }, 160 158 { MAX_MANID, MAX6604_DEVID, MAX6604_DEVID_MASK }, 161 159 { MCP_MANID, MCP9804_DEVID, MCP9804_DEVID_MASK }, 162 160 { MCP_MANID, MCP98242_DEVID, MCP98242_DEVID_MASK },