Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy...
[deliverable/linux.git] / Documentation / hwmon / f71805f
1 Kernel driver f71805f
2 =====================
3
4 Supported 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
10 Author: Jean Delvare <khali@linux-fr.org>
11
12 Thanks to Denis Kieft from Barracuda Networks for the donation of a
13 test system (custom Jetway K8M8MS motherboard, with CPU and RAM) and
14 for providing initial documentation.
15
16 Thanks to Kris Chen from Fintek for answering technical questions and
17 providing additional documentation.
18
19 Thanks to Chris Lin from Jetway for providing wiring schematics and
20 answering technical questions.
21
22
23 Description
24 -----------
25
26 The Fintek F71805F/FG Super I/O chip includes complete hardware monitoring
27 capabilities. It can monitor up to 9 voltages (counting its own power
28 source), 3 fans and 3 temperature sensors.
29
30 This chip also has fan controlling features, using either DC or PWM, in
31 three different modes (one manual, two automatic). The driver doesn't
32 support these features yet.
33
34 The driver assumes that no more than one chip is present, which seems
35 reasonable.
36
37
38 Voltage Monitoring
39 ------------------
40
41 Voltages are sampled by an 8-bit ADC with a LSB of 8 mV. The supported
42 range is thus from 0 to 2.040 V. Voltage values outside of this range
43 need external resistors. An exception is in0, which is used to monitor
44 the chip's own power source (+3.3V), and is divided internally by a
45 factor 2.
46
47 The two LSB of the voltage limit registers are not used (always 0), so
48 you can only set the limits in steps of 32 mV (before scaling).
49
50 The wirings and resistor values suggested by Fintek are as follow:
51
52 pin expected
53 name use R1 R2 divider raw val.
54
55 in0 VCC VCC3.3V int. int. 2.00 1.65 V
56 in1 VIN1 VTT1.2V 10K - 1.00 1.20 V
57 in2 VIN2 VRAM 100K 100K 2.00 ~1.25 V (1)
58 in3 VIN3 VCHIPSET 47K 100K 1.47 2.24 V (2)
59 in4 VIN4 VCC5V 200K 47K 5.25 0.95 V
60 in5 VIN5 +12V 200K 20K 11.00 1.05 V
61 in6 VIN6 VCC1.5V 10K - 1.00 1.50 V
62 in7 VIN7 VCORE 10K - 1.00 ~1.40 V (1)
63 in8 VIN8 VSB5V 200K 47K 1.00 0.95 V
64
65 (1) Depends on your hardware setup.
66 (2) Obviously not correct, swapping R1 and R2 would make more sense.
67
68 These values can be used as hints at best, as motherboard manufacturers
69 are free to use a completely different setup. As a matter of fact, the
70 Jetway K8M8MS uses a significantly different setup. You will have to
71 find out documentation about your own motherboard, and edit sensors.conf
72 accordingly.
73
74 Each voltage measured has associated low and high limits, each of which
75 triggers an alarm when crossed.
76
77
78 Fan Monitoring
79 --------------
80
81 Fan rotation speeds are reported as 12-bit values from a gated clock
82 signal. Speeds down to 366 RPM can be measured. There is no theoretical
83 high limit, but values over 6000 RPM seem to cause problem. The effective
84 resolution is much lower than you would expect, the step between different
85 register values being 10 rather than 1.
86
87 The chip assumes 2 pulse-per-revolution fans.
88
89 An alarm is triggered if the rotation speed drops below a programmable
90 limit or is too low to be measured.
91
92
93 Temperature Monitoring
94 ----------------------
95
96 Temperatures are reported in degrees Celsius. Each temperature measured
97 has a high limit, those crossing triggers an alarm. There is an associated
98 hysteresis value, below which the temperature has to drop before the
99 alarm is cleared.
100
101 All temperature channels are external, there is no embedded temperature
102 sensor. Each channel can be used for connecting either a thermal diode
103 or a thermistor. The driver reports the currently selected mode, but
104 doesn't allow changing it. In theory, the BIOS should have configured
105 everything properly.
This page took 0.039795 seconds and 6 git commands to generate.