6 * Analog Devices ADT7473
10 Addresses scanned: I2C 0x2C, 0x2D, 0x2E
12 Datasheet: Publicly available at the On Semiconductors website
14 * Analog Devices ADT7475
18 Addresses scanned: I2C 0x2E
20 Datasheet: Publicly available at the On Semiconductors website
22 * Analog Devices ADT7476
26 Addresses scanned: I2C 0x2C, 0x2D, 0x2E
28 Datasheet: Publicly available at the On Semiconductors website
30 * Analog Devices ADT7490
34 Addresses scanned: I2C 0x2C, 0x2D, 0x2E
36 Datasheet: Publicly available at the On Semiconductors website
41 - Darrick J. Wong (documentation)
48 This driver implements support for the Analog Devices ADT7473, ADT7475,
49 ADT7476 and ADT7490 chip family. The ADT7473 and ADT7475 differ only in
50 minor details. The ADT7476 has additional features, including extra voltage
51 measurement inputs and VID support. The ADT7490 also has additional
52 features, including extra voltage measurement inputs and PECI support. All
53 the supported chips will be collectively designed by the name "ADT747x" in
54 the rest of this document.
56 The ADT747x uses the 2-wire interface compatible with the SMBus 2.0
57 specification. Using an analog to digital converter it measures three (3)
58 temperatures and two (2) or more voltages. It has four (4) 16-bit counters
59 for measuring fan speed. There are three (3) PWM outputs that can be used
62 A sophisticated control system for the PWM outputs is designed into the
63 ADT747x that allows fan speed to be adjusted automatically based on any of the
64 three temperature sensors. Each PWM output is individually adjustable and
65 programmable. Once configured, the ADT747x will adjust the PWM outputs in
66 response to the measured temperatures without further host intervention.
67 This feature can also be disabled for manual control of the PWM's.
69 Each of the measured inputs (voltage, temperature, fan speed) has
70 corresponding high/low limit values. The ADT747x will signal an ALARM if
71 any measured value exceeds either limit.
73 The ADT747x samples all inputs continuously. The driver will not read
74 the registers more often than once every other second. Further,
75 configuration data is only read once per minute.
77 Chip Differences Summary
78 ------------------------
82 * system acoustics optimizations (not implemented)
93 * 1 Imon input (not implemented)
94 * PECI support (not implemented)
95 * 2 GPIO pins (not implemented)
96 * system acoustics optimizations (not implemented)
101 ==== =========== =========== ========= ==========
102 in ADT7490 ADT7476 ADT7475 ADT7473
103 ==== =========== =========== ========= ==========
104 in0 2.5VIN (22) 2.5VIN (22) - -
105 in1 VCCP (23) VCCP (23) VCCP (14) VCCP (14)
106 in2 VCC (4) VCC (4) VCC (4) VCC (3)
107 in3 5VIN (20) 5VIN (20)
108 in4 12VIN (21) 12VIN (21)
110 ==== =========== =========== ========= ==========
115 The ADT747x has a 10-bit ADC and can therefore measure temperatures
116 with a resolution of 0.25 degree Celsius. Temperature readings can be
117 configured either for two's complement format or "Offset 64" format,
118 wherein 64 is subtracted from the raw value to get the temperature value.
120 The datasheet is very detailed and describes a procedure for determining
121 an optimal configuration for the automatic PWM control.
126 The driver exposes two trip points per PWM channel.
128 - point1: Set the PWM speed at the lower temperature bound
129 - point2: Set the PWM speed at the higher temperature bound
131 The ADT747x will scale the PWM linearly between the lower and higher PWM
132 speed when the temperature is between the two temperature boundaries.
133 Temperature boundaries are associated to temperature channels rather than
134 PWM outputs, and a given PWM output can be controlled by several temperature
135 channels. As a result, the ADT747x may compute more than one PWM value
136 for a channel at a given time, in which case the maximum value (fastest
137 fan speed) is applied. PWM values range from 0 (off) to 255 (full speed).
139 Fan speed may be set to maximum when the temperature sensor associated with
140 the PWM control exceeds temp#_max.
142 At Tmin - hysteresis the PWM output can either be off (0% duty cycle) or at the
143 minimum (i.e. auto_point1_pwm). This behaviour can be configured using the
144 `pwm[1-*]_stall_disable sysfs attribute`. A value of 0 means the fans will shut
145 off. A value of 1 means the fans will run at auto_point1_pwm.
147 The responsiveness of the ADT747x to temperature changes can be configured.
148 This allows smoothing of the fan speed transition. To set the transition time
149 set the value in ms in the `temp[1-*]_smoothing` sysfs attribute.
154 The nVidia binary driver presents an ADT7473 chip via an on-card i2c bus.
155 Unfortunately, they fail to set the i2c adapter class, so this driver may
156 fail to find the chip until the nvidia driver is patched.