blob: f7f1830a25663c6273812abe9cbddf8245a050d4 [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 Roeck175c4902014-04-15 22:07:30 -07008 * Atmel AT30TS00, AT30TS002A/B, AT30TSE004A
Guenter Roeck4453d732010-08-09 17:21:08 -07009 Datasheets:
Guenter Roeck1bd612a2012-03-05 11:13:52 -080010 http://www.atmel.com/Images/doc8585.pdf
Guenter Roeck175c4902014-04-15 22:07:30 -070011 http://www.atmel.com/Images/doc8711.pdf
12 http://www.atmel.com/Images/Atmel-8852-SEEPROM-AT30TSE002A-Datasheet.pdf
13 http://www.atmel.com/Images/Atmel-8868-DTS-AT30TSE004A-Datasheet.pdf
Guenter Roeck0ea2f1d2015-02-01 17:20:38 -080014 * IDT TSE2002B3, TSE2002GB2, TSE2004GB2, TS3000B3, TS3000GB0, TS3000GB2,
15 TS3001GB2
Guenter Roeck1bd612a2012-03-05 11:13:52 -080016 Datasheets:
Guenter Roeck0ea2f1d2015-02-01 17:20:38 -080017 Available from IDT web site
Guenter Roeck4453d732010-08-09 17:21:08 -070018 * Maxim MAX6604
Guenter Roeck4453d732010-08-09 17:21:08 -070019 Datasheets:
20 http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
Guenter Roeckd4768282013-01-28 20:35:19 -080021 * Microchip MCP9804, MCP9805, MCP98242, MCP98243, MCP98244, MCP9843
Guenter Roeck4453d732010-08-09 17:21:08 -070022 Datasheets:
Guenter Roeck1bd612a2012-03-05 11:13:52 -080023 http://ww1.microchip.com/downloads/en/DeviceDoc/22203C.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070024 http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf
25 http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf
26 http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf
Guenter Roeckd4768282013-01-28 20:35:19 -080027 http://ww1.microchip.com/downloads/en/DeviceDoc/22327A.pdf
Guenter Roeck86dda172012-03-08 08:20:24 -080028 * NXP Semiconductors SE97, SE97B, SE98, SE98A
Guenter Roeck4453d732010-08-09 17:21:08 -070029 Datasheets:
30 http://www.nxp.com/documents/data_sheet/SE97.pdf
31 http://www.nxp.com/documents/data_sheet/SE97B.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070032 http://www.nxp.com/documents/data_sheet/SE98.pdf
Guenter Roeck86dda172012-03-08 08:20:24 -080033 http://www.nxp.com/documents/data_sheet/SE98A.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070034 * ON Semiconductor CAT34TS02, CAT6095
Guenter Roeck4453d732010-08-09 17:21:08 -070035 Datasheet:
36 http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF
37 http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF
Guenter Roeck175c4902014-04-15 22:07:30 -070038 * ST Microelectronics STTS424, STTS424E02, STTS2002, STTS2004, STTS3000
Guenter Roeck4453d732010-08-09 17:21:08 -070039 Datasheets:
Guenter Roeck175c4902014-04-15 22:07:30 -070040 http://www.st.com/web/en/resource/technical/document/datasheet/CD00157556.pdf
41 http://www.st.com/web/en/resource/technical/document/datasheet/CD00157558.pdf
42 http://www.st.com/web/en/resource/technical/document/datasheet/CD00266638.pdf
43 http://www.st.com/web/en/resource/technical/document/datasheet/CD00225278.pdf
44 http://www.st.com/web/en/resource/technical/document/datasheet/DM00076709.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070045 * JEDEC JC 42.4 compliant temperature sensor chips
Clemens Ladischd5622f52011-02-16 08:02:08 -050046 Datasheet:
47 http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf
Guenter Roeck4453d732010-08-09 17:21:08 -070048
Guenter Roeck86dda172012-03-08 08:20:24 -080049 Common for all chips:
50 Prefix: 'jc42'
51 Addresses scanned: I2C 0x18 - 0x1f
52
Guenter Roeck4453d732010-08-09 17:21:08 -070053Author:
Guenter Roecke3333e52013-02-20 20:58:42 -080054 Guenter Roeck <linux@roeck-us.net>
Guenter Roeck4453d732010-08-09 17:21:08 -070055
56
57Description
58-----------
59
Clemens Ladischd5622f52011-02-16 08:02:08 -050060This driver implements support for JEDEC JC 42.4 compliant temperature sensors,
61which are used on many DDR3 memory modules for mobile devices and servers. Some
62systems use the sensor to prevent memory overheating by automatically throttling
63the memory controller.
64
Guenter Roeck4453d732010-08-09 17:21:08 -070065The driver auto-detects the chips listed above, but can be manually instantiated
66to support other JC 42.4 compliant chips.
67
68Example: the following will load the driver for a generic JC 42.4 compliant
69temperature sensor at address 0x18 on I2C bus #1:
70
71# modprobe jc42
72# echo jc42 0x18 > /sys/bus/i2c/devices/i2c-1/new_device
73
74A JC 42.4 compliant chip supports a single temperature sensor. Minimum, maximum,
75and critical temperature can be configured. There are alarms for high, low,
76and critical thresholds.
77
78There is also an hysteresis to control the thresholds for resetting alarms.
79Per JC 42.4 specification, the hysteresis threshold can be configured to 0, 1.5,
803.0, and 6.0 degrees C. Configured hysteresis values will be rounded to those
81limits. The chip supports only a single register to configure the hysteresis,
82which applies to all limits. This register can be written by writing into
83temp1_crit_hyst. Other hysteresis attributes are read-only.
84
Clemens Ladisch2c6315d2011-02-16 08:02:38 -050085If the BIOS has configured the sensor for automatic temperature management, it
86is likely that it has locked the registers, i.e., that the temperature limits
87cannot be changed.
88
Guenter Roeck4453d732010-08-09 17:21:08 -070089Sysfs entries
90-------------
91
92temp1_input Temperature (RO)
Clemens Ladisch2c6315d2011-02-16 08:02:38 -050093temp1_min Minimum temperature (RO or RW)
94temp1_max Maximum temperature (RO or RW)
95temp1_crit Critical high temperature (RO or RW)
Guenter Roeck4453d732010-08-09 17:21:08 -070096
Clemens Ladisch2c6315d2011-02-16 08:02:38 -050097temp1_crit_hyst Critical hysteresis temperature (RO or RW)
Guenter Roeck4453d732010-08-09 17:21:08 -070098temp1_max_hyst Maximum hysteresis temperature (RO)
99
100temp1_min_alarm Temperature low alarm
101temp1_max_alarm Temperature high alarm
102temp1_crit_alarm Temperature critical alarm