blob: 868d74d6b773bfcf902b5d45d0827f3f3482197f [file] [log] [blame]
Guenter Roeck4453d732010-08-09 17:21:08 -07001Kernel driver jc42
2==================
3
4Supported chips:
5 * Analog Devices ADT7408
Guenter Roeck4453d732010-08-09 17:21:08 -07006 Datasheets:
7 http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf
Guenter Roeck1bd612a2012-03-05 11:13:52 -08008 * Atmel AT30TS00
Guenter Roeck4453d732010-08-09 17:21:08 -07009 Datasheets:
Guenter Roeck1bd612a2012-03-05 11:13:52 -080010 http://www.atmel.com/Images/doc8585.pdf
11 * IDT TSE2002B3, TSE2002GB2, TS3000B3, TS3000GB2
Guenter Roeck1bd612a2012-03-05 11:13:52 -080012 Datasheets:
13 http://www.idt.com/sites/default/files/documents/IDT_TSE2002B3C_DST_20100512_120303152056.pdf
14 http://www.idt.com/sites/default/files/documents/IDT_TSE2002GB2A1_DST_20111107_120303145914.pdf
15 http://www.idt.com/sites/default/files/documents/IDT_TS3000B3A_DST_20101129_120303152013.pdf
16 http://www.idt.com/sites/default/files/documents/IDT_TS3000GB2A1_DST_20111104_120303151012.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070017 * Maxim MAX6604
Guenter Roeck4453d732010-08-09 17:21:08 -070018 Datasheets:
19 http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
Guenter Roeckd4768282013-01-28 20:35:19 -080020 * Microchip MCP9804, MCP9805, MCP98242, MCP98243, MCP98244, MCP9843
Guenter Roeck4453d732010-08-09 17:21:08 -070021 Datasheets:
Guenter Roeck1bd612a2012-03-05 11:13:52 -080022 http://ww1.microchip.com/downloads/en/DeviceDoc/22203C.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070023 http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf
24 http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf
25 http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf
Guenter Roeckd4768282013-01-28 20:35:19 -080026 http://ww1.microchip.com/downloads/en/DeviceDoc/22327A.pdf
Guenter Roeck86dda172012-03-08 08:20:24 -080027 * NXP Semiconductors SE97, SE97B, SE98, SE98A
Guenter Roeck4453d732010-08-09 17:21:08 -070028 Datasheets:
29 http://www.nxp.com/documents/data_sheet/SE97.pdf
30 http://www.nxp.com/documents/data_sheet/SE97B.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070031 http://www.nxp.com/documents/data_sheet/SE98.pdf
Guenter Roeck86dda172012-03-08 08:20:24 -080032 http://www.nxp.com/documents/data_sheet/SE98A.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070033 * ON Semiconductor CAT34TS02, CAT6095
Guenter Roeck4453d732010-08-09 17:21:08 -070034 Datasheet:
35 http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF
36 http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF
Guenter Roeck86dda172012-03-08 08:20:24 -080037 * ST Microelectronics STTS424, STTS424E02, STTS2002, STTS3000
Guenter Roeck4453d732010-08-09 17:21:08 -070038 Datasheets:
Guenter Roeck86dda172012-03-08 08:20:24 -080039 http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00157556.pdf
40 http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00157558.pdf
Jean Delvare4de86122012-03-05 08:32:00 -050041 http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00225278.pdf
42 http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATA_BRIEF/CD00270920.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070043 * JEDEC JC 42.4 compliant temperature sensor chips
Clemens Ladischd5622f52011-02-16 08:02:08 -050044 Datasheet:
45 http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070046
Guenter Roeck86dda172012-03-08 08:20:24 -080047 Common for all chips:
48 Prefix: 'jc42'
49 Addresses scanned: I2C 0x18 - 0x1f
50
Guenter Roeck4453d732010-08-09 17:21:08 -070051Author:
Guenter Roecke3333e52013-02-20 20:58:42 -080052 Guenter Roeck <linux@roeck-us.net>
Guenter Roeck4453d732010-08-09 17:21:08 -070053
54
55Description
56-----------
57
Clemens Ladischd5622f52011-02-16 08:02:08 -050058This driver implements support for JEDEC JC 42.4 compliant temperature sensors,
59which are used on many DDR3 memory modules for mobile devices and servers. Some
60systems use the sensor to prevent memory overheating by automatically throttling
61the memory controller.
62
Guenter Roeck4453d732010-08-09 17:21:08 -070063The driver auto-detects the chips listed above, but can be manually instantiated
64to support other JC 42.4 compliant chips.
65
66Example: the following will load the driver for a generic JC 42.4 compliant
67temperature sensor at address 0x18 on I2C bus #1:
68
69# modprobe jc42
70# echo jc42 0x18 > /sys/bus/i2c/devices/i2c-1/new_device
71
72A JC 42.4 compliant chip supports a single temperature sensor. Minimum, maximum,
73and critical temperature can be configured. There are alarms for high, low,
74and critical thresholds.
75
76There is also an hysteresis to control the thresholds for resetting alarms.
77Per JC 42.4 specification, the hysteresis threshold can be configured to 0, 1.5,
783.0, and 6.0 degrees C. Configured hysteresis values will be rounded to those
79limits. The chip supports only a single register to configure the hysteresis,
80which applies to all limits. This register can be written by writing into
81temp1_crit_hyst. Other hysteresis attributes are read-only.
82
Clemens Ladisch2c6315d2011-02-16 08:02:38 -050083If the BIOS has configured the sensor for automatic temperature management, it
84is likely that it has locked the registers, i.e., that the temperature limits
85cannot be changed.
86
Guenter Roeck4453d732010-08-09 17:21:08 -070087Sysfs entries
88-------------
89
90temp1_input Temperature (RO)
Clemens Ladisch2c6315d2011-02-16 08:02:38 -050091temp1_min Minimum temperature (RO or RW)
92temp1_max Maximum temperature (RO or RW)
93temp1_crit Critical high temperature (RO or RW)
Guenter Roeck4453d732010-08-09 17:21:08 -070094
Clemens Ladisch2c6315d2011-02-16 08:02:38 -050095temp1_crit_hyst Critical hysteresis temperature (RO or RW)
Guenter Roeck4453d732010-08-09 17:21:08 -070096temp1_max_hyst Maximum hysteresis temperature (RO)
97
98temp1_min_alarm Temperature low alarm
99temp1_max_alarm Temperature high alarm
100temp1_crit_alarm Temperature critical alarm