1Kernel driver f71882fg
2======================
3
4Supported chips:
5  * Fintek F71808E
6    Prefix: 'f71808e'
7    Addresses scanned: none, address read from Super I/O config space
8    Datasheet: Not public
9  * Fintek F71808A
10    Prefix: 'f71808a'
11    Addresses scanned: none, address read from Super I/O config space
12    Datasheet: Not public
13  * Fintek F71858FG
14    Prefix: 'f71858fg'
15    Addresses scanned: none, address read from Super I/O config space
16    Datasheet: Available from the Fintek website
17  * Fintek F71862FG and F71863FG
18    Prefix: 'f71862fg'
19    Addresses scanned: none, address read from Super I/O config space
20    Datasheet: Available from the Fintek website
21  * Fintek F71869F and F71869E
22    Prefix: 'f71869'
23    Addresses scanned: none, address read from Super I/O config space
24    Datasheet: Available from the Fintek website
25  * Fintek F71869A
26    Prefix: 'f71869a'
27    Addresses scanned: none, address read from Super I/O config space
28    Datasheet: Not public
29  * Fintek F71882FG and F71883FG
30    Prefix: 'f71882fg'
31    Addresses scanned: none, address read from Super I/O config space
32    Datasheet: Available from the Fintek website
33  * Fintek F71889FG
34    Prefix: 'f71889fg'
35    Addresses scanned: none, address read from Super I/O config space
36    Datasheet: Available from the Fintek website
37  * Fintek F71889ED
38    Prefix: 'f71889ed'
39    Addresses scanned: none, address read from Super I/O config space
40    Datasheet: Should become available on the Fintek website soon
41  * Fintek F71889A
42    Prefix: 'f71889a'
43    Addresses scanned: none, address read from Super I/O config space
44    Datasheet: Should become available on the Fintek website soon
45  * Fintek F8000
46    Prefix: 'f8000'
47    Addresses scanned: none, address read from Super I/O config space
48    Datasheet: Not public
49  * Fintek F81801U
50    Prefix: 'f71889fg'
51    Addresses scanned: none, address read from Super I/O config space
52    Datasheet: Not public
53    Note: This is the 64-pin variant of the F71889FG, they have the
54	  same device ID and are fully compatible as far as hardware
55	  monitoring is concerned.
56  * Fintek F81865F
57    Prefix: 'f81865f'
58    Addresses scanned: none, address read from Super I/O config space
59    Datasheet: Available from the Fintek website
60
61Author: Hans de Goede <hdegoede@redhat.com>
62
63
64Description
65-----------
66
67Fintek F718xx/F8000 Super I/O chips include complete hardware monitoring
68capabilities. They can monitor up to 9 voltages, 4 fans and 3 temperature
69sensors.
70
71These chips also have fan controlling features, using either DC or PWM, in
72three different modes (one manual, two automatic).
73
74The driver assumes that no more than one chip is present, which seems
75reasonable.
76
77
78Monitoring
79----------
80
81The Voltage, Fan and Temperature Monitoring uses the standard sysfs
82interface as documented in sysfs-interface, without any exceptions.
83
84
85Fan Control
86-----------
87
88Both PWM (pulse-width modulation) and DC fan speed control methods are
89supported. The right one to use depends on external circuitry on the
90motherboard, so the driver assumes that the BIOS set the method
91properly.
92
93Note that the lowest numbered temperature zone trip point corresponds to
94to the border between the highest and one but highest temperature zones, and
95vica versa. So the temperature zone trip points 1-4 (or 1-2) go from high temp
96to low temp! This is how things are implemented in the IC, and the driver
97mimicks this.
98
99There are 2 modes to specify the speed of the fan, PWM duty cycle (or DC
100voltage) mode, where 0-100% duty cycle (0-100% of 12V) is specified. And RPM
101mode where the actual RPM of the fan (as measured) is controlled and the speed
102gets specified as 0-100% of the fan#_full_speed file.
103
104Since both modes work in a 0-100% (mapped to 0-255) scale, there isn't a
105whole lot of a difference when modifying fan control settings. The only
106important difference is that in RPM mode the 0-100% controls the fan speed
107between 0-100% of fan#_full_speed. It is assumed that if the BIOS programs
108RPM mode, it will also set fan#_full_speed properly, if it does not then
109fan control will not work properly, unless you set a sane fan#_full_speed
110value yourself.
111
112Switching between these modes requires re-initializing a whole bunch of
113registers, so the mode which the BIOS has set is kept. The mode is
114printed when loading the driver.
115
116Three different fan control modes are supported; the mode number is written
117to the pwm#_enable file. Note that not all modes are supported on all
118chips, and some modes may only be available in RPM / PWM mode.
119Writing an unsupported mode will result in an invalid parameter error.
120
121* 1: Manual mode
122  You ask for a specific PWM duty cycle / DC voltage or a specific % of
123  fan#_full_speed by writing to the pwm# file. This mode is only
124  available on the F71858FG / F8000 if the fan channel is in RPM mode.
125
126* 2: Normal auto mode
127  You can define a number of temperature/fan speed trip points, which % the
128  fan should run at at this temp and which temp a fan should follow using the
129  standard sysfs interface. The number and type of trip points is chip
130  depended, see which files are available in sysfs.
131  Fan/PWM channel 3 of the F8000 is always in this mode!
132
133* 3: Thermostat mode (Only available on the F8000 when in duty cycle mode)
134  The fan speed is regulated to keep the temp the fan is mapped to between
135  temp#_auto_point2_temp and temp#_auto_point3_temp.
136
137All of the automatic modes require that pwm1 corresponds to fan1, pwm2 to
138fan2 and pwm3 to fan3.
139