aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/hwmon/adt7475
diff options
context:
space:
mode:
authorJean Delvare <khali@linux-fr.org>2009-12-09 14:36:02 -0500
committerJean Delvare <khali@linux-fr.org>2009-12-09 14:36:02 -0500
commitf890c6a3b6c3ed06719e696fed9267cc6b40aabd (patch)
treea38fecafe6074c168e6c21cf504ead5afde42be5 /Documentation/hwmon/adt7475
parentb180d0508475c5c55085839d22f454c69379eacc (diff)
hwmon: (adt7475) New documentation
New documentation for the adt7475 driver, based on the adt7473 driver documentation. It is IMHO much more useful that the previous documentation which was essentially redundant with sysfs-interface. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: "Mark M. Hoffman" <mhoffman@lightlink.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Jordan Crouse <jordan@cosmicpenguin.net> Cc: "Darrick J. Wong" <djwong@us.ibm.com>
Diffstat (limited to 'Documentation/hwmon/adt7475')
-rw-r--r--Documentation/hwmon/adt7475170
1 files changed, 83 insertions, 87 deletions
diff --git a/Documentation/hwmon/adt7475 b/Documentation/hwmon/adt7475
index a2b1abec850e..ebfee5524020 100644
--- a/Documentation/hwmon/adt7475
+++ b/Documentation/hwmon/adt7475
@@ -1,87 +1,83 @@
1This describes the interface for the ADT7475 driver: 1Kernel driver adt7475
2 2=====================
3(there are 4 fans, numbered fan1 to fan4): 3
4 4Supported chips:
5fanX_input Read the current speed of the fan (in RPMs) 5 * Analog Devices ADT7473
6fanX_min Read/write the minimum speed of the fan. Dropping 6 Prefix: 'adt7473'
7 below this sets an alarm. 7 Addresses scanned: I2C 0x2C, 0x2D, 0x2E
8 8 Datasheet: Publicly available at the On Semiconductors website
9(there are three PWMs, numbered pwm1 to pwm3): 9 * Analog Devices ADT7475
10 10 Prefix: 'adt7475'
11pwmX Read/write the current duty cycle of the PWM. Writes 11 Addresses scanned: I2C 0x2E
12 only have effect when auto mode is turned off (see 12 Datasheet: Publicly available at the On Semiconductors website
13 below). Range is 0 - 255. 13
14 14Authors:
15pwmX_enable Fan speed control method: 15 Jordan Crouse
16 16 Hans de Goede
17 0 - No control (fan at full speed) 17 Darrick J. Wong (documentation)
18 1 - Manual fan speed control (using pwm[1-*]) 18
19 2 - Automatic fan speed control 19
20 20Description
21pwmX_auto_channels_temp Select which channels affect this PWM 21-----------
22 22
23 1 - TEMP1 controls PWM 23This driver implements support for the Analog Devices ADT7473 and ADT7475
24 2 - TEMP2 controls PWM 24chip family. Both chips differ only in minor details. They will be
25 4 - TEMP3 controls PWM 25collectively designed by the name "ADT747x" in the rest of this document.
26 6 - TEMP2 and TEMP3 control PWM 26
27 7 - All three inputs control PWM 27The ADT747x uses the 2-wire interface compatible with the SMBus 2.0
28 28specification. Using an analog to digital converter it measures three (3)
29pwmX_freq Read/write the PWM frequency in Hz. The number 29temperatures and two (2) voltages. It has four (4) 16-bit counters for
30 should be one of the following: 30measuring fan speed. There are three (3) PWM outputs that can be used
31 31to control fan speed.
32 11 Hz 32
33 14 Hz 33A sophisticated control system for the PWM outputs is designed into the
34 22 Hz 34ADT747x that allows fan speed to be adjusted automatically based on any of the
35 29 Hz 35three temperature sensors. Each PWM output is individually adjustable and
36 35 Hz 36programmable. Once configured, the ADT747x will adjust the PWM outputs in
37 44 Hz 37response to the measured temperatures without further host intervention.
38 58 Hz 38This feature can also be disabled for manual control of the PWM's.
39 88 Hz 39
40 40Each of the measured inputs (voltage, temperature, fan speed) has
41pwmX_auto_point1_pwm Read/write the minimum PWM duty cycle in automatic mode 41corresponding high/low limit values. The ADT747x will signal an ALARM if
42 42any measured value exceeds either limit.
43pwmX_auto_point2_pwm Read/write the maximum PWM duty cycle in automatic mode 43
44 44The ADT747x samples all inputs continuously. The driver will not read
45(there are three temperature settings numbered temp1 to temp3): 45the registers more often than once every other second. Further,
46 46configuration data is only read once per minute.
47tempX_input Read the current temperature. The value is in milli 47
48 degrees of Celsius. 48Special Features
49 49----------------
50tempX_max Read/write the upper temperature limit - exceeding this 50
51 will cause an alarm. 51The ADT747x has a 10-bit ADC and can therefore measure temperatures
52 52with a resolution of 0.25 degree Celsius. Temperature readings can be
53tempX_min Read/write the lower temperature limit - exceeding this 53configured either for two's complement format or "Offset 64" format,
54 will cause an alarm. 54wherein 64 is subtracted from the raw value to get the temperature value.
55 55
56tempX_offset Read/write the temperature adjustment offset 56The datasheet is very detailed and describes a procedure for determining
57 57an optimal configuration for the automatic PWM control.
58tempX_crit Read/write the THERM limit for remote1. 58
59 59Fan Speed Control
60tempX_crit_hyst Set the temperature value below crit where the 60-----------------
61 fans will stay on - this helps drive the temperature 61
62 low enough so it doesn't stay near the edge and 62The driver exposes two trip points per PWM channel.
63 cause THERM to keep tripping. 63
64 64point1: Set the PWM speed at the lower temperature bound
65tempX_auto_point1_temp Read/write the minimum temperature where the fans will 65point2: Set the PWM speed at the higher temperature bound
66 turn on in automatic mode. 66
67 67The ADT747x will scale the PWM linearly between the lower and higher PWM
68tempX_auto_point2_temp Read/write the maximum temperature over which the fans 68speed when the temperature is between the two temperature boundaries.
69 will run in automatic mode. tempX_auto_point1_temp 69Temperature boundaries are associated to temperature channels rather than
70 and tempX_auto_point2_temp together define the 70PWM outputs, and a given PWM output can be controlled by several temperature
71 range of automatic control. 71channels. As a result, the ADT747x may compute more than one PWM value
72 72for a channel at a given time, in which case the maximum value (fastest
73tempX_alarm Read a 1 if the max/min alarm is set 73fan speed) is applied. PWM values range from 0 (off) to 255 (full speed).
74tempX_fault Read a 1 if either temp1 or temp3 diode has a fault 74
75 75Fan speed may be set to maximum when the temperature sensor associated with
76(There are two voltage settings, in1 and in2): 76the PWM control exceeds temp#_max.
77 77
78inX_input Read the current voltage on VCC. Value is in 78Notes
79 millivolts. 79-----
80 80
81inX_min read/write the minimum voltage limit. 81The nVidia binary driver presents an ADT7473 chip via an on-card i2c bus.
82 Dropping below this causes an alarm. 82Unfortunately, they fail to set the i2c adapter class, so this driver may
83 83fail to find the chip until the nvidia driver is patched.
84inX_max read/write the maximum voltage limit.
85 Exceeding this causes an alarm.
86
87inX_alarm Read a 1 if the max/min alarm is set.