hwmon: (jc42) Add support for AT30TS00, TS3000GB2, TSE2002GB2, and MCP9804
Also update IDT datasheet locations. Signed-off-by: Guenter Roeck <linux@roeck-us.net> Cc: stable@vger.kernel.org # 3.0+ Acked-by: Jean Delvare <khali@linux-fr.org>
This commit is contained in:
parent
7ad6307ad6
commit
1bd612a258
|
@ -7,21 +7,29 @@ Supported chips:
|
||||||
Addresses scanned: I2C 0x18 - 0x1f
|
Addresses scanned: I2C 0x18 - 0x1f
|
||||||
Datasheets:
|
Datasheets:
|
||||||
http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf
|
http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf
|
||||||
* IDT TSE2002B3, TS3000B3
|
* Atmel AT30TS00
|
||||||
Prefix: 'tse2002b3', 'ts3000b3'
|
Prefix: 'at30ts00'
|
||||||
Addresses scanned: I2C 0x18 - 0x1f
|
Addresses scanned: I2C 0x18 - 0x1f
|
||||||
Datasheets:
|
Datasheets:
|
||||||
http://www.idt.com/products/getdoc.cfm?docid=18715691
|
http://www.atmel.com/Images/doc8585.pdf
|
||||||
http://www.idt.com/products/getdoc.cfm?docid=18715692
|
* IDT TSE2002B3, TSE2002GB2, TS3000B3, TS3000GB2
|
||||||
|
Prefix: 'tse2002', 'ts3000'
|
||||||
|
Addresses scanned: I2C 0x18 - 0x1f
|
||||||
|
Datasheets:
|
||||||
|
http://www.idt.com/sites/default/files/documents/IDT_TSE2002B3C_DST_20100512_120303152056.pdf
|
||||||
|
http://www.idt.com/sites/default/files/documents/IDT_TSE2002GB2A1_DST_20111107_120303145914.pdf
|
||||||
|
http://www.idt.com/sites/default/files/documents/IDT_TS3000B3A_DST_20101129_120303152013.pdf
|
||||||
|
http://www.idt.com/sites/default/files/documents/IDT_TS3000GB2A1_DST_20111104_120303151012.pdf
|
||||||
* Maxim MAX6604
|
* Maxim MAX6604
|
||||||
Prefix: 'max6604'
|
Prefix: 'max6604'
|
||||||
Addresses scanned: I2C 0x18 - 0x1f
|
Addresses scanned: I2C 0x18 - 0x1f
|
||||||
Datasheets:
|
Datasheets:
|
||||||
http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
|
http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
|
||||||
* Microchip MCP9805, MCP98242, MCP98243, MCP9843
|
* Microchip MCP9804, MCP9805, MCP98242, MCP98243, MCP9843
|
||||||
Prefixes: 'mcp9805', 'mcp98242', 'mcp98243', 'mcp9843'
|
Prefixes: 'mcp9804', 'mcp9805', 'mcp98242', 'mcp98243', 'mcp9843'
|
||||||
Addresses scanned: I2C 0x18 - 0x1f
|
Addresses scanned: I2C 0x18 - 0x1f
|
||||||
Datasheets:
|
Datasheets:
|
||||||
|
http://ww1.microchip.com/downloads/en/DeviceDoc/22203C.pdf
|
||||||
http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf
|
http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf
|
||||||
http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf
|
http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf
|
||||||
http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf
|
http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf
|
||||||
|
|
|
@ -497,9 +497,9 @@ config SENSORS_JC42
|
||||||
If you say yes here, you get support for JEDEC JC42.4 compliant
|
If you say yes here, you get support for JEDEC JC42.4 compliant
|
||||||
temperature sensors, which are used on many DDR3 memory modules for
|
temperature sensors, which are used on many DDR3 memory modules for
|
||||||
mobile devices and servers. Support will include, but not be limited
|
mobile devices and servers. Support will include, but not be limited
|
||||||
to, ADT7408, CAT34TS02, CAT6095, MAX6604, MCP9805, MCP98242, MCP98243,
|
to, ADT7408, AT30TS00, CAT34TS02, CAT6095, MAX6604, MCP9804, MCP9805,
|
||||||
MCP9843, SE97, SE98, STTS424(E), STTS2002, STTS3000, TSE2002B3, and
|
MCP98242, MCP98243, MCP9843, SE97, SE98, STTS424(E), STTS2002,
|
||||||
TS3000B3.
|
STTS3000, TSE2002B3, TSE2002GB2, TS3000B3, and TS3000GB2.
|
||||||
|
|
||||||
This driver can also be built as a module. If so, the module
|
This driver can also be built as a module. If so, the module
|
||||||
will be called jc42.
|
will be called jc42.
|
||||||
|
|
|
@ -64,6 +64,7 @@ static const unsigned short normal_i2c[] = {
|
||||||
|
|
||||||
/* Manufacturer IDs */
|
/* Manufacturer IDs */
|
||||||
#define ADT_MANID 0x11d4 /* Analog Devices */
|
#define ADT_MANID 0x11d4 /* Analog Devices */
|
||||||
|
#define ATMEL_MANID 0x001f /* Atmel */
|
||||||
#define MAX_MANID 0x004d /* Maxim */
|
#define MAX_MANID 0x004d /* Maxim */
|
||||||
#define IDT_MANID 0x00b3 /* IDT */
|
#define IDT_MANID 0x00b3 /* IDT */
|
||||||
#define MCP_MANID 0x0054 /* Microchip */
|
#define MCP_MANID 0x0054 /* Microchip */
|
||||||
|
@ -77,15 +78,25 @@ static const unsigned short normal_i2c[] = {
|
||||||
#define ADT7408_DEVID 0x0801
|
#define ADT7408_DEVID 0x0801
|
||||||
#define ADT7408_DEVID_MASK 0xffff
|
#define ADT7408_DEVID_MASK 0xffff
|
||||||
|
|
||||||
|
/* Atmel */
|
||||||
|
#define AT30TS00_DEVID 0x8201
|
||||||
|
#define AT30TS00_DEVID_MASK 0xffff
|
||||||
|
|
||||||
/* IDT */
|
/* IDT */
|
||||||
#define TS3000B3_DEVID 0x2903 /* Also matches TSE2002B3 */
|
#define TS3000B3_DEVID 0x2903 /* Also matches TSE2002B3 */
|
||||||
#define TS3000B3_DEVID_MASK 0xffff
|
#define TS3000B3_DEVID_MASK 0xffff
|
||||||
|
|
||||||
|
#define TS3000GB2_DEVID 0x2912 /* Also matches TSE2002GB2 */
|
||||||
|
#define TS3000GB2_DEVID_MASK 0xffff
|
||||||
|
|
||||||
/* Maxim */
|
/* Maxim */
|
||||||
#define MAX6604_DEVID 0x3e00
|
#define MAX6604_DEVID 0x3e00
|
||||||
#define MAX6604_DEVID_MASK 0xffff
|
#define MAX6604_DEVID_MASK 0xffff
|
||||||
|
|
||||||
/* Microchip */
|
/* Microchip */
|
||||||
|
#define MCP9804_DEVID 0x0200
|
||||||
|
#define MCP9804_DEVID_MASK 0xfffc
|
||||||
|
|
||||||
#define MCP98242_DEVID 0x2000
|
#define MCP98242_DEVID 0x2000
|
||||||
#define MCP98242_DEVID_MASK 0xfffc
|
#define MCP98242_DEVID_MASK 0xfffc
|
||||||
|
|
||||||
|
@ -129,8 +140,11 @@ struct jc42_chips {
|
||||||
|
|
||||||
static struct jc42_chips jc42_chips[] = {
|
static struct jc42_chips jc42_chips[] = {
|
||||||
{ ADT_MANID, ADT7408_DEVID, ADT7408_DEVID_MASK },
|
{ ADT_MANID, ADT7408_DEVID, ADT7408_DEVID_MASK },
|
||||||
|
{ ATMEL_MANID, AT30TS00_DEVID, AT30TS00_DEVID_MASK },
|
||||||
{ IDT_MANID, TS3000B3_DEVID, TS3000B3_DEVID_MASK },
|
{ IDT_MANID, TS3000B3_DEVID, TS3000B3_DEVID_MASK },
|
||||||
|
{ IDT_MANID, TS3000GB2_DEVID, TS3000GB2_DEVID_MASK },
|
||||||
{ MAX_MANID, MAX6604_DEVID, MAX6604_DEVID_MASK },
|
{ MAX_MANID, MAX6604_DEVID, MAX6604_DEVID_MASK },
|
||||||
|
{ MCP_MANID, MCP9804_DEVID, MCP9804_DEVID_MASK },
|
||||||
{ MCP_MANID, MCP98242_DEVID, MCP98242_DEVID_MASK },
|
{ MCP_MANID, MCP98242_DEVID, MCP98242_DEVID_MASK },
|
||||||
{ MCP_MANID, MCP98243_DEVID, MCP98243_DEVID_MASK },
|
{ MCP_MANID, MCP98243_DEVID, MCP98243_DEVID_MASK },
|
||||||
{ MCP_MANID, MCP9843_DEVID, MCP9843_DEVID_MASK },
|
{ MCP_MANID, MCP9843_DEVID, MCP9843_DEVID_MASK },
|
||||||
|
@ -167,10 +181,12 @@ static struct jc42_data *jc42_update_device(struct device *dev);
|
||||||
|
|
||||||
static const struct i2c_device_id jc42_id[] = {
|
static const struct i2c_device_id jc42_id[] = {
|
||||||
{ "adt7408", 0 },
|
{ "adt7408", 0 },
|
||||||
|
{ "at30ts00", 0 },
|
||||||
{ "cat94ts02", 0 },
|
{ "cat94ts02", 0 },
|
||||||
{ "cat6095", 0 },
|
{ "cat6095", 0 },
|
||||||
{ "jc42", 0 },
|
{ "jc42", 0 },
|
||||||
{ "max6604", 0 },
|
{ "max6604", 0 },
|
||||||
|
{ "mcp9804", 0 },
|
||||||
{ "mcp9805", 0 },
|
{ "mcp9805", 0 },
|
||||||
{ "mcp98242", 0 },
|
{ "mcp98242", 0 },
|
||||||
{ "mcp98243", 0 },
|
{ "mcp98243", 0 },
|
||||||
|
@ -181,8 +197,8 @@ static const struct i2c_device_id jc42_id[] = {
|
||||||
{ "stts424", 0 },
|
{ "stts424", 0 },
|
||||||
{ "stts2002", 0 },
|
{ "stts2002", 0 },
|
||||||
{ "stts3000", 0 },
|
{ "stts3000", 0 },
|
||||||
{ "tse2002b3", 0 },
|
{ "tse2002", 0 },
|
||||||
{ "ts3000b3", 0 },
|
{ "ts3000", 0 },
|
||||||
{ }
|
{ }
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(i2c, jc42_id);
|
MODULE_DEVICE_TABLE(i2c, jc42_id);
|
||||||
|
|
Loading…
Reference in a new issue