blob: 1cbf671822e23d063c648984c145149792978c62 [file] [log] [blame]
Darrick J. Wong57df46d2008-02-18 13:33:23 -08001Kernel driver adt7473
2======================
3
4Supported chips:
5 * Analog Devices ADT7473
6 Prefix: 'adt7473'
7 Addresses scanned: I2C 0x2C, 0x2D, 0x2E
8 Datasheet: Publicly available at the Analog Devices website
9
10Author: Darrick J. Wong
11
12Description
13-----------
14
15This driver implements support for the Analog Devices ADT7473 chip family.
16
Darrick J. Wongc73c556c2008-10-09 15:33:58 +020017The ADT7473 uses the 2-wire interface compatible with the SMBUS 2.0
Darrick J. Wong57df46d2008-02-18 13:33:23 -080018specification. Using an analog to digital converter it measures three (3)
Darrick J. Wongc73c556c2008-10-09 15:33:58 +020019temperatures and two (2) voltages. It has four (4) 16-bit counters for
Darrick J. Wong57df46d2008-02-18 13:33:23 -080020measuring fan speed. There are three (3) PWM outputs that can be used
21to control fan speed.
22
23A sophisticated control system for the PWM outputs is designed into the
Darrick J. Wongc73c556c2008-10-09 15:33:58 +020024ADT7473 that allows fan speed to be adjusted automatically based on any of the
Darrick J. Wong57df46d2008-02-18 13:33:23 -080025three temperature sensors. Each PWM output is individually adjustable and
26programmable. Once configured, the ADT7473 will adjust the PWM outputs in
27response to the measured temperatures without further host intervention.
28This feature can also be disabled for manual control of the PWM's.
29
30Each of the measured inputs (voltage, temperature, fan speed) has
31corresponding high/low limit values. The ADT7473 will signal an ALARM if
32any measured value exceeds either limit.
33
34The ADT7473 samples all inputs continuously. The driver will not read
35the registers more often than once every other second. Further,
36configuration data is only read once per minute.
37
38Special Features
39----------------
40
41The ADT7473 have a 10-bit ADC and can therefore measure temperatures
42with 0.25 degC resolution. Temperature readings can be configured either
43for twos complement format or "Offset 64" format, wherein 63 is subtracted
44from the raw value to get the temperature value.
45
46The Analog Devices datasheet is very detailed and describes a procedure for
47determining an optimal configuration for the automatic PWM control.
48
Darrick J. Wong57df46d2008-02-18 13:33:23 -080049Configuration Notes
50-------------------
51
52Besides standard interfaces driver adds the following:
53
54* PWM Control
55
Darrick J. Wongc73c556c2008-10-09 15:33:58 +020056* pwm#_auto_point1_pwm and temp#_auto_point1_temp and
57* pwm#_auto_point2_pwm and temp#_auto_point2_temp -
Darrick J. Wong57df46d2008-02-18 13:33:23 -080058
59point1: Set the pwm speed at a lower temperature bound.
60point2: Set the pwm speed at a higher temperature bound.
61
62The ADT7473 will scale the pwm between the lower and higher pwm speed when
63the temperature is between the two temperature boundaries. PWM values range
Darrick J. Wong241937b2008-05-12 14:02:13 -070064from 0 (off) to 255 (full speed). Fan speed will be set to maximum when the
65temperature sensor associated with the PWM control exceeds temp#_max.
Darrick J. Wong57df46d2008-02-18 13:33:23 -080066
67Notes
68-----
69
70The NVIDIA binary driver presents an ADT7473 chip via an on-card i2c bus.
71Unfortunately, they fail to set the i2c adapter class, so this driver may
72fail to find the chip until the nvidia driver is patched.