blob: bc571f99d0ee7fb1463e0bc88349928c7969ec09 [file] [log] [blame]
Jean Delvare5db3d3d2006-01-09 23:32:57 +01001Kernel driver f71805f
2=====================
3
4Supported chips:
5 * Fintek F71805F/FG
6 Prefix: 'f71805f'
7 Addresses scanned: none, address read from Super I/O config space
8 Datasheet: Provided by Fintek on request
9
10Author: Jean Delvare <khali@linux-fr.org>
11
12Thanks to Denis Kieft from Barracuda Networks for the donation of a
13test system (custom Jetway K8M8MS motherboard, with CPU and RAM) and
14for providing initial documentation.
15
Jean Delvaree9cea642006-12-12 18:18:27 +010016Thanks to Kris Chen and Aaron Huang from Fintek for answering technical
17questions and providing additional documentation.
Jean Delvare5db3d3d2006-01-09 23:32:57 +010018
19Thanks to Chris Lin from Jetway for providing wiring schematics and
Jean Delvare15fe25c2006-10-08 21:59:54 +020020answering technical questions.
Jean Delvare5db3d3d2006-01-09 23:32:57 +010021
22
23Description
24-----------
25
26The Fintek F71805F/FG Super I/O chip includes complete hardware monitoring
27capabilities. It can monitor up to 9 voltages (counting its own power
28source), 3 fans and 3 temperature sensors.
29
30This chip also has fan controlling features, using either DC or PWM, in
Jean Delvaree9cea642006-12-12 18:18:27 +010031three different modes (one manual, two automatic).
Jean Delvare5db3d3d2006-01-09 23:32:57 +010032
33The driver assumes that no more than one chip is present, which seems
34reasonable.
35
36
37Voltage Monitoring
38------------------
39
40Voltages are sampled by an 8-bit ADC with a LSB of 8 mV. The supported
41range is thus from 0 to 2.040 V. Voltage values outside of this range
42need external resistors. An exception is in0, which is used to monitor
43the chip's own power source (+3.3V), and is divided internally by a
44factor 2.
45
46The two LSB of the voltage limit registers are not used (always 0), so
47you can only set the limits in steps of 32 mV (before scaling).
48
49The wirings and resistor values suggested by Fintek are as follow:
50
51 pin expected
52 name use R1 R2 divider raw val.
53
54in0 VCC VCC3.3V int. int. 2.00 1.65 V
55in1 VIN1 VTT1.2V 10K - 1.00 1.20 V
56in2 VIN2 VRAM 100K 100K 2.00 ~1.25 V (1)
57in3 VIN3 VCHIPSET 47K 100K 1.47 2.24 V (2)
58in4 VIN4 VCC5V 200K 47K 5.25 0.95 V
59in5 VIN5 +12V 200K 20K 11.00 1.05 V
60in6 VIN6 VCC1.5V 10K - 1.00 1.50 V
61in7 VIN7 VCORE 10K - 1.00 ~1.40 V (1)
62in8 VIN8 VSB5V 200K 47K 1.00 0.95 V
63
64(1) Depends on your hardware setup.
65(2) Obviously not correct, swapping R1 and R2 would make more sense.
66
67These values can be used as hints at best, as motherboard manufacturers
68are free to use a completely different setup. As a matter of fact, the
69Jetway K8M8MS uses a significantly different setup. You will have to
70find out documentation about your own motherboard, and edit sensors.conf
71accordingly.
72
73Each voltage measured has associated low and high limits, each of which
74triggers an alarm when crossed.
75
76
77Fan Monitoring
78--------------
79
80Fan rotation speeds are reported as 12-bit values from a gated clock
81signal. Speeds down to 366 RPM can be measured. There is no theoretical
82high limit, but values over 6000 RPM seem to cause problem. The effective
83resolution is much lower than you would expect, the step between different
84register values being 10 rather than 1.
85
86The chip assumes 2 pulse-per-revolution fans.
87
88An alarm is triggered if the rotation speed drops below a programmable
89limit or is too low to be measured.
90
91
92Temperature Monitoring
93----------------------
94
95Temperatures are reported in degrees Celsius. Each temperature measured
96has a high limit, those crossing triggers an alarm. There is an associated
97hysteresis value, below which the temperature has to drop before the
98alarm is cleared.
99
100All temperature channels are external, there is no embedded temperature
101sensor. Each channel can be used for connecting either a thermal diode
102or a thermistor. The driver reports the currently selected mode, but
103doesn't allow changing it. In theory, the BIOS should have configured
104everything properly.
Jean Delvaree9cea642006-12-12 18:18:27 +0100105
106
107Fan Control
108-----------
109
110Both PWM (pulse-width modulation) and DC fan speed control methods are
111supported. The right one to use depends on external circuitry on the
112motherboard, so the driver assumes that the BIOS set the method
113properly. The driver will report the method, but won't let you change
114it.
115
116When the PWM method is used, you can select the operating frequency,
117from 187.5 kHz (default) to 31 Hz. The best frequency depends on the
118fan model. As a rule of thumb, lower frequencies seem to give better
119control, but may generate annoying high-pitch noise. Fintek recommends
120not going below 1 kHz, as the fan tachometers get confused by lower
121frequencies as well.
122
123When the DC method is used, Fintek recommends not going below 5 V, which
124corresponds to a pwm value of 106 for the driver. The driver doesn't
125enforce this limit though.
126
127Three different fan control modes are supported:
128
129* Manual mode
130 You ask for a specific PWM duty cycle or DC voltage.
131
132* Fan speed mode
133 You ask for a specific fan speed. This mode assumes that pwm1
134 corresponds to fan1, pwm2 to fan2 and pwm3 to fan3.
135
136* Temperature mode
137 You define 3 temperature/fan speed trip points, and the fan speed is
138 adjusted depending on the measured temperature, using interpolation.
139 This mode is not yet supported by the driver.