0001 Kernel driver f71882fg
0002 ======================
0003
0004 Supported chips:
0005
0006 * Fintek F71808E
0007
0008 Prefix: 'f71808e'
0009
0010 Addresses scanned: none, address read from Super I/O config space
0011
0012 Datasheet: Not public
0013
0014 * Fintek F71808A
0015
0016 Prefix: 'f71808a'
0017
0018 Addresses scanned: none, address read from Super I/O config space
0019
0020 Datasheet: Not public
0021
0022 * Fintek F71858FG
0023
0024 Prefix: 'f71858fg'
0025
0026 Addresses scanned: none, address read from Super I/O config space
0027
0028 Datasheet: Available from the Fintek website
0029
0030 * Fintek F71862FG and F71863FG
0031
0032 Prefix: 'f71862fg'
0033
0034 Addresses scanned: none, address read from Super I/O config space
0035
0036 Datasheet: Available from the Fintek website
0037
0038 * Fintek F71869F and F71869E
0039
0040 Prefix: 'f71869'
0041
0042 Addresses scanned: none, address read from Super I/O config space
0043
0044 Datasheet: Available from the Fintek website
0045
0046 * Fintek F71869A
0047
0048 Prefix: 'f71869a'
0049
0050 Addresses scanned: none, address read from Super I/O config space
0051
0052 Datasheet: Not public
0053
0054 * Fintek F71882FG and F71883FG
0055
0056 Prefix: 'f71882fg'
0057
0058 Addresses scanned: none, address read from Super I/O config space
0059
0060 Datasheet: Available from the Fintek website
0061
0062 * Fintek F71889FG
0063
0064 Prefix: 'f71889fg'
0065
0066 Addresses scanned: none, address read from Super I/O config space
0067
0068 Datasheet: Available from the Fintek website
0069
0070 * Fintek F71889ED
0071
0072 Prefix: 'f71889ed'
0073
0074 Addresses scanned: none, address read from Super I/O config space
0075
0076 Datasheet: Should become available on the Fintek website soon
0077
0078 * Fintek F71889A
0079
0080 Prefix: 'f71889a'
0081
0082 Addresses scanned: none, address read from Super I/O config space
0083
0084 Datasheet: Should become available on the Fintek website soon
0085
0086 * Fintek F8000
0087
0088 Prefix: 'f8000'
0089
0090 Addresses scanned: none, address read from Super I/O config space
0091
0092 Datasheet: Not public
0093
0094 * Fintek F81801U
0095
0096 Prefix: 'f71889fg'
0097
0098 Addresses scanned: none, address read from Super I/O config space
0099
0100 Datasheet: Not public
0101
0102 Note:
0103 This is the 64-pin variant of the F71889FG, they have the
0104 same device ID and are fully compatible as far as hardware
0105 monitoring is concerned.
0106
0107 * Fintek F81865F
0108
0109 Prefix: 'f81865f'
0110
0111 Addresses scanned: none, address read from Super I/O config space
0112
0113 Datasheet: Available from the Fintek website
0114
0115 Author: Hans de Goede <hdegoede@redhat.com>
0116
0117
0118 Description
0119 -----------
0120
0121 Fintek F718xx/F8000 Super I/O chips include complete hardware monitoring
0122 capabilities. They can monitor up to 9 voltages, 4 fans and 3 temperature
0123 sensors.
0124
0125 These chips also have fan controlling features, using either DC or PWM, in
0126 three different modes (one manual, two automatic).
0127
0128 The driver assumes that no more than one chip is present, which seems
0129 reasonable.
0130
0131
0132 Monitoring
0133 ----------
0134
0135 The Voltage, Fan and Temperature Monitoring uses the standard sysfs
0136 interface as documented in sysfs-interface, without any exceptions.
0137
0138
0139 Fan Control
0140 -----------
0141
0142 Both PWM (pulse-width modulation) and DC fan speed control methods are
0143 supported. The right one to use depends on external circuitry on the
0144 motherboard, so the driver assumes that the BIOS set the method
0145 properly.
0146
0147 Note that the lowest numbered temperature zone trip point corresponds to
0148 the border between the highest and one but highest temperature zones, and
0149 vica versa. So the temperature zone trip points 1-4 (or 1-2) go from high temp
0150 to low temp! This is how things are implemented in the IC, and the driver
0151 mimics this.
0152
0153 There are 2 modes to specify the speed of the fan, PWM duty cycle (or DC
0154 voltage) mode, where 0-100% duty cycle (0-100% of 12V) is specified. And RPM
0155 mode where the actual RPM of the fan (as measured) is controlled and the speed
0156 gets specified as 0-100% of the fan#_full_speed file.
0157
0158 Since both modes work in a 0-100% (mapped to 0-255) scale, there isn't a
0159 whole lot of a difference when modifying fan control settings. The only
0160 important difference is that in RPM mode the 0-100% controls the fan speed
0161 between 0-100% of fan#_full_speed. It is assumed that if the BIOS programs
0162 RPM mode, it will also set fan#_full_speed properly, if it does not then
0163 fan control will not work properly, unless you set a sane fan#_full_speed
0164 value yourself.
0165
0166 Switching between these modes requires re-initializing a whole bunch of
0167 registers, so the mode which the BIOS has set is kept. The mode is
0168 printed when loading the driver.
0169
0170 Three different fan control modes are supported; the mode number is written
0171 to the pwm#_enable file. Note that not all modes are supported on all
0172 chips, and some modes may only be available in RPM / PWM mode.
0173 Writing an unsupported mode will result in an invalid parameter error.
0174
0175 * 1: Manual mode
0176 You ask for a specific PWM duty cycle / DC voltage or a specific % of
0177 fan#_full_speed by writing to the pwm# file. This mode is only
0178 available on the F71858FG / F8000 if the fan channel is in RPM mode.
0179
0180 * 2: Normal auto mode
0181 You can define a number of temperature/fan speed trip points, which % the
0182 fan should run at at this temp and which temp a fan should follow using the
0183 standard sysfs interface. The number and type of trip points is chip
0184 depended, see which files are available in sysfs.
0185 Fan/PWM channel 3 of the F8000 is always in this mode!
0186
0187 * 3: Thermostat mode (Only available on the F8000 when in duty cycle mode)
0188 The fan speed is regulated to keep the temp the fan is mapped to between
0189 temp#_auto_point2_temp and temp#_auto_point3_temp.
0190
0191 All of the automatic modes require that pwm1 corresponds to fan1, pwm2 to
0192 fan2 and pwm3 to fan3.