diff options
Diffstat (limited to 'Documentation/hwmon/adt7470')
-rw-r--r-- | Documentation/hwmon/adt7470 | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/Documentation/hwmon/adt7470 b/Documentation/hwmon/adt7470 new file mode 100644 index 000000000000..75d13ca147cc --- /dev/null +++ b/Documentation/hwmon/adt7470 | |||
@@ -0,0 +1,76 @@ | |||
1 | Kernel driver adt7470 | ||
2 | ===================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Analog Devices ADT7470 | ||
6 | Prefix: 'adt7470' | ||
7 | Addresses scanned: I2C 0x2C, 0x2E, 0x2F | ||
8 | Datasheet: Publicly available at the Analog Devices website | ||
9 | |||
10 | Author: Darrick J. Wong | ||
11 | |||
12 | Description | ||
13 | ----------- | ||
14 | |||
15 | This driver implements support for the Analog Devices ADT7470 chip. There may | ||
16 | be other chips that implement this interface. | ||
17 | |||
18 | The ADT7470 uses the 2-wire interface compatible with the SMBus 2.0 | ||
19 | specification. Using an analog to digital converter it measures up to ten (10) | ||
20 | external temperatures. It has four (4) 16-bit counters for measuring fan speed. | ||
21 | There are four (4) PWM outputs that can be used to control fan speed. | ||
22 | |||
23 | A sophisticated control system for the PWM outputs is designed into the ADT7470 | ||
24 | that allows fan speed to be adjusted automatically based on any of the ten | ||
25 | temperature sensors. Each PWM output is individually adjustable and | ||
26 | programmable. Once configured, the ADT7470 will adjust the PWM outputs in | ||
27 | response to the measured temperatures with further host intervention. This | ||
28 | feature can also be disabled for manual control of the PWM's. | ||
29 | |||
30 | Each of the measured inputs (temperature, fan speed) has corresponding high/low | ||
31 | limit values. The ADT7470 will signal an ALARM if any measured value exceeds | ||
32 | either limit. | ||
33 | |||
34 | The ADT7470 DOES NOT sample all inputs continuously. A single pin on the | ||
35 | ADT7470 is connected to a multitude of thermal diodes, but the chip must be | ||
36 | instructed explicitly to read the multitude of diodes. If you want to use | ||
37 | automatic fan control mode, you must manually read any of the temperature | ||
38 | sensors or the fan control algorithm will not run. The chip WILL NOT DO THIS | ||
39 | AUTOMATICALLY; this must be done from userspace. This may be a bug in the chip | ||
40 | design, given that many other AD chips take care of this. The driver will not | ||
41 | read the registers more often than once every 5 seconds. Further, | ||
42 | configuration data is only read once per minute. | ||
43 | |||
44 | Special Features | ||
45 | ---------------- | ||
46 | |||
47 | The ADT7470 has a 8-bit ADC and is capable of measuring temperatures with 1 | ||
48 | degC resolution. | ||
49 | |||
50 | The Analog Devices datasheet is very detailed and describes a procedure for | ||
51 | determining an optimal configuration for the automatic PWM control. | ||
52 | |||
53 | Configuration Notes | ||
54 | ------------------- | ||
55 | |||
56 | Besides standard interfaces driver adds the following: | ||
57 | |||
58 | * PWM Control | ||
59 | |||
60 | * pwm#_auto_point1_pwm and pwm#_auto_point1_temp and | ||
61 | * pwm#_auto_point2_pwm and pwm#_auto_point2_temp - | ||
62 | |||
63 | point1: Set the pwm speed at a lower temperature bound. | ||
64 | point2: Set the pwm speed at a higher temperature bound. | ||
65 | |||
66 | The ADT7470 will scale the pwm between the lower and higher pwm speed when | ||
67 | the temperature is between the two temperature boundaries. PWM values range | ||
68 | from 0 (off) to 255 (full speed). Fan speed will be set to maximum when the | ||
69 | temperature sensor associated with the PWM control exceeds | ||
70 | pwm#_auto_point2_temp. | ||
71 | |||
72 | Notes | ||
73 | ----- | ||
74 | |||
75 | As stated above, the temperature inputs must be read periodically from | ||
76 | userspace in order for the automatic pwm algorithm to run. | ||