blob: cfff3885287d0d0105f391ef3940d814b084fedc [file] [log] [blame]
Krzysztof Heltadd77c62007-07-08 22:43:00 +02001Kernel driver thmc50
2=====================
3
4Supported chips:
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -03005
Krzysztof Heltadd77c62007-07-08 22:43:00 +02006 * Analog Devices ADM1022
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -03007
Krzysztof Heltadd77c62007-07-08 22:43:00 +02008 Prefix: 'adm1022'
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -03009
Krzysztof Heltadd77c62007-07-08 22:43:00 +020010 Addresses scanned: I2C 0x2c - 0x2e
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030011
Krzysztof Heltadd77c62007-07-08 22:43:00 +020012 Datasheet: http://www.analog.com/en/prod/0,2877,ADM1022,00.html
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030013
Krzysztof Heltadd77c62007-07-08 22:43:00 +020014 * Texas Instruments THMC50
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030015
Krzysztof Heltadd77c62007-07-08 22:43:00 +020016 Prefix: 'thmc50'
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030017
Krzysztof Heltadd77c62007-07-08 22:43:00 +020018 Addresses scanned: I2C 0x2c - 0x2e
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030019
20 Datasheet: http://www.ti.com/
21
Krzysztof Heltadd77c62007-07-08 22:43:00 +020022
23Author: Krzysztof Helt <krzysztof.h1@wp.pl>
24
25This driver was derived from the 2.4 kernel thmc50.c source file.
26
27Credits:
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030028
Krzysztof Heltadd77c62007-07-08 22:43:00 +020029 thmc50.c (2.4 kernel):
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030030
31 - Frodo Looijaard <frodol@dds.nl>
32 - Philip Edelbrock <phil@netroedge.com>
Krzysztof Heltadd77c62007-07-08 22:43:00 +020033
34Module Parameters
35-----------------
36
37* adm1022_temp3: short array
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030038 List of adapter,address pairs to force chips into ADM1022 mode with
39 second remote temperature. This does not work for original THMC50 chips.
Krzysztof Heltadd77c62007-07-08 22:43:00 +020040
41Description
42-----------
43
44The THMC50 implements: an internal temperature sensor, support for an
45external diode-type temperature sensor (compatible w/ the diode sensor inside
46many processors), and a controllable fan/analog_out DAC. For the temperature
47sensors, limits can be set through the appropriate Overtemperature Shutdown
48register and Hysteresis register. Each value can be set and read to half-degree
49accuracy. An alarm is issued (usually to a connected LM78) when the
50temperature gets higher then the Overtemperature Shutdown value; it stays on
51until the temperature falls below the Hysteresis value. All temperatures are in
52degrees Celsius, and are guaranteed within a range of -55 to +125 degrees.
53
54The THMC50 only updates its values each 1.5 seconds; reading it more often
55will do no harm, but will return 'old' values.
56
57The THMC50 is usually used in combination with LM78-like chips, to measure
58the temperature of the processor(s).
59
60The ADM1022 works the same as THMC50 but it is faster (5 Hz instead of
611 Hz for THMC50). It can be also put in a new mode to handle additional
62remote temperature sensor. The driver use the mode set by BIOS by default.
63
64In case the BIOS is broken and the mode is set incorrectly, you can force
65the mode with additional remote temperature with adm1022_temp3 parameter.
66A typical symptom of wrong setting is a fan forced to full speed.
67
68Driver Features
69---------------
70
71The driver provides up to three temperatures:
72
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030073temp1
74 - internal
75temp2
76 - remote
77temp3
78 - 2nd remote only for ADM1022
Krzysztof Heltadd77c62007-07-08 22:43:00 +020079
Mauro Carvalho Chehabb04f2f72019-04-17 06:46:28 -030080pwm1
81 - fan speed (0 = stop, 255 = full)
82pwm1_mode
83 - always 0 (DC mode)
Krzysztof Heltadd77c62007-07-08 22:43:00 +020084
85The value of 0 for pwm1 also forces FAN_OFF signal from the chip,
86so it stops fans even if the value 0 into the ANALOG_OUT register does not.
87
88The driver was tested on Compaq AP550 with two ADM1022 chips (one works
89in the temp3 mode), five temperature readings and two fans.