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