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