Commit | Line | Data |
---|---|---|
4453d736 GR |
1 | Kernel driver jc42 |
2 | ================== | |
3 | ||
4 | Supported chips: | |
5 | * Analog Devices ADT7408 | |
6 | Prefix: 'adt7408' | |
7 | Addresses scanned: I2C 0x18 - 0x1f | |
8 | Datasheets: | |
9 | http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf | |
10 | * IDT TSE2002B3, TS3000B3 | |
11 | Prefix: 'tse2002b3', 'ts3000b3' | |
12 | Addresses scanned: I2C 0x18 - 0x1f | |
13 | Datasheets: | |
14 | http://www.idt.com/products/getdoc.cfm?docid=18715691 | |
15 | http://www.idt.com/products/getdoc.cfm?docid=18715692 | |
16 | * Maxim MAX6604 | |
17 | Prefix: 'max6604' | |
18 | Addresses scanned: I2C 0x18 - 0x1f | |
19 | Datasheets: | |
20 | http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf | |
21 | * Microchip MCP9805, MCP98242, MCP98243, MCP9843 | |
22 | Prefixes: 'mcp9805', 'mcp98242', 'mcp98243', 'mcp9843' | |
23 | Addresses scanned: I2C 0x18 - 0x1f | |
24 | Datasheets: | |
25 | http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf | |
26 | http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf | |
27 | http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf | |
28 | * NXP Semiconductors SE97, SE97B | |
29 | Prefix: 'se97' | |
30 | Addresses scanned: I2C 0x18 - 0x1f | |
31 | Datasheets: | |
32 | http://www.nxp.com/documents/data_sheet/SE97.pdf | |
33 | http://www.nxp.com/documents/data_sheet/SE97B.pdf | |
34 | * NXP Semiconductors SE98 | |
35 | Prefix: 'se98' | |
36 | Addresses scanned: I2C 0x18 - 0x1f | |
37 | Datasheets: | |
38 | http://www.nxp.com/documents/data_sheet/SE98.pdf | |
39 | * ON Semiconductor CAT34TS02, CAT6095 | |
40 | Prefix: 'cat34ts02', 'cat6095' | |
41 | Addresses scanned: I2C 0x18 - 0x1f | |
42 | Datasheet: | |
43 | http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF | |
44 | http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF | |
45 | * ST Microelectronics STTS424, STTS424E02 | |
46 | Prefix: 'stts424' | |
47 | Addresses scanned: I2C 0x18 - 0x1f | |
48 | Datasheets: | |
49 | http://www.st.com/stonline/products/literature/ds/13447/stts424.pdf | |
50 | http://www.st.com/stonline/products/literature/ds/13448/stts424e02.pdf | |
51 | * JEDEC JC 42.4 compliant temperature sensor chips | |
52 | Prefix: 'jc42' | |
53 | Addresses scanned: I2C 0x18 - 0x1f | |
d5622f5b CL |
54 | Datasheet: |
55 | http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf | |
4453d736 GR |
56 | |
57 | Author: | |
58 | Guenter Roeck <guenter.roeck@ericsson.com> | |
59 | ||
60 | ||
61 | Description | |
62 | ----------- | |
63 | ||
d5622f5b CL |
64 | This driver implements support for JEDEC JC 42.4 compliant temperature sensors, |
65 | which are used on many DDR3 memory modules for mobile devices and servers. Some | |
66 | systems use the sensor to prevent memory overheating by automatically throttling | |
67 | the memory controller. | |
68 | ||
4453d736 GR |
69 | The driver auto-detects the chips listed above, but can be manually instantiated |
70 | to support other JC 42.4 compliant chips. | |
71 | ||
72 | Example: the following will load the driver for a generic JC 42.4 compliant | |
73 | temperature sensor at address 0x18 on I2C bus #1: | |
74 | ||
75 | # modprobe jc42 | |
76 | # echo jc42 0x18 > /sys/bus/i2c/devices/i2c-1/new_device | |
77 | ||
78 | A JC 42.4 compliant chip supports a single temperature sensor. Minimum, maximum, | |
79 | and critical temperature can be configured. There are alarms for high, low, | |
80 | and critical thresholds. | |
81 | ||
82 | There is also an hysteresis to control the thresholds for resetting alarms. | |
83 | Per JC 42.4 specification, the hysteresis threshold can be configured to 0, 1.5, | |
84 | 3.0, and 6.0 degrees C. Configured hysteresis values will be rounded to those | |
85 | limits. The chip supports only a single register to configure the hysteresis, | |
86 | which applies to all limits. This register can be written by writing into | |
87 | temp1_crit_hyst. Other hysteresis attributes are read-only. | |
88 | ||
2c6315da CL |
89 | If the BIOS has configured the sensor for automatic temperature management, it |
90 | is likely that it has locked the registers, i.e., that the temperature limits | |
91 | cannot be changed. | |
92 | ||
4453d736 GR |
93 | Sysfs entries |
94 | ------------- | |
95 | ||
96 | temp1_input Temperature (RO) | |
2c6315da CL |
97 | temp1_min Minimum temperature (RO or RW) |
98 | temp1_max Maximum temperature (RO or RW) | |
99 | temp1_crit Critical high temperature (RO or RW) | |
4453d736 | 100 | |
2c6315da | 101 | temp1_crit_hyst Critical hysteresis temperature (RO or RW) |
4453d736 GR |
102 | temp1_max_hyst Maximum hysteresis temperature (RO) |
103 | ||
104 | temp1_min_alarm Temperature low alarm | |
105 | temp1_max_alarm Temperature high alarm | |
106 | temp1_crit_alarm Temperature critical alarm |