Blame view

Documentation/hwmon/f71805f.rst 6.73 KB
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
1
2
3
4
  Kernel driver f71805f
  =====================
  
  Supported chips:
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
5

5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
6
    * Fintek F71805F/FG
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
7

5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
8
      Prefix: 'f71805f'
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
9

5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
10
      Addresses scanned: none, address read from Super I/O config space
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
11

aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
12
      Datasheet: Available from the Fintek website
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
13

9cab0217f   Jean Delvare   hwmon: (f71805f) ...
14
    * Fintek F71806F/FG
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
15

9cab0217f   Jean Delvare   hwmon: (f71805f) ...
16
      Prefix: 'f71872f'
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
17

9cab0217f   Jean Delvare   hwmon: (f71805f) ...
18
      Addresses scanned: none, address read from Super I/O config space
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
19

9cab0217f   Jean Delvare   hwmon: (f71805f) ...
20
      Datasheet: Available from the Fintek website
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
21

51c997d80   Jean Delvare   hwmon/f71805f: Ad...
22
    * Fintek F71872F/FG
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
23

51c997d80   Jean Delvare   hwmon/f71805f: Ad...
24
      Prefix: 'f71872f'
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
25

51c997d80   Jean Delvare   hwmon/f71805f: Ad...
26
      Addresses scanned: none, address read from Super I/O config space
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
27

aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
28
      Datasheet: Available from the Fintek website
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
29

7c81c60f3   Jean Delvare   Update Jean Delva...
30
  Author: Jean Delvare <jdelvare@suse.de>
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
31
32
33
34
  
  Thanks to Denis Kieft from Barracuda Networks for the donation of a
  test system (custom Jetway K8M8MS motherboard, with CPU and RAM) and
  for providing initial documentation.
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
35
36
  Thanks to Kris Chen and Aaron Huang from Fintek for answering technical
  questions and providing additional documentation.
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
37
38
  
  Thanks to Chris Lin from Jetway for providing wiring schematics and
15fe25ca6   Jean Delvare   hwmon: Fix docume...
39
  answering technical questions.
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
40
41
42
43
44
45
46
47
48
49
  
  
  Description
  -----------
  
  The Fintek F71805F/FG Super I/O chip includes complete hardware monitoring
  capabilities. It can monitor up to 9 voltages (counting its own power
  source), 3 fans and 3 temperature sensors.
  
  This chip also has fan controlling features, using either DC or PWM, in
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
50
  three different modes (one manual, two automatic).
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
51

51c997d80   Jean Delvare   hwmon/f71805f: Ad...
52
53
54
  The Fintek F71872F/FG Super I/O chip is almost the same, with two
  additional internal voltages monitored (VSB and battery). It also features
  6 VID inputs. The VID inputs are not yet supported by this driver.
9cab0217f   Jean Delvare   hwmon: (f71805f) ...
55
56
  The Fintek F71806F/FG Super-I/O chip is essentially the same as the
  F71872F/FG, and is undistinguishable therefrom.
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
57
58
59
60
61
62
63
64
65
66
67
  The driver assumes that no more than one chip is present, which seems
  reasonable.
  
  
  Voltage Monitoring
  ------------------
  
  Voltages are sampled by an 8-bit ADC with a LSB of 8 mV. The supported
  range is thus from 0 to 2.040 V. Voltage values outside of this range
  need external resistors. An exception is in0, which is used to monitor
  the chip's own power source (+3.3V), and is divided internally by a
51c997d80   Jean Delvare   hwmon/f71805f: Ad...
68
69
  factor 2. For the F71872F/FG, in9 (VSB) and in10 (battery) are also
  divided internally by a factor 2.
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
70
71
72
73
74
  
  The two LSB of the voltage limit registers are not used (always 0), so
  you can only set the limits in steps of 32 mV (before scaling).
  
  The wirings and resistor values suggested by Fintek are as follow:
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
75
76
77
78
  ======= ======= =========== ==== ======= ============ ==============
  in      pin                                           expected
  	name    use           R1      R2     divider  raw val.
  ======= ======= =========== ==== ======= ============ ==============
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
79
80
  in0     VCC     VCC3.3V     int.    int.        2.00    1.65 V
  in1     VIN1    VTT1.2V      10K       -        1.00    1.20 V
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
81
82
  in2     VIN2    VRAM        100K    100K        2.00   ~1.25 V [1]_
  in3     VIN3    VCHIPSET     47K    100K        1.47    2.24 V [2]_
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
83
84
85
  in4     VIN4    VCC5V       200K     47K        5.25    0.95 V
  in5     VIN5    +12V        200K     20K       11.00    1.05 V
  in6     VIN6    VCC1.5V      10K       -        1.00    1.50 V
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
86
  in7     VIN7    VCORE        10K       -        1.00   ~1.40 V [1]_
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
87
  in8     VIN8    VSB5V       200K     47K        1.00    0.95 V
b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
88
89
90
  in10    VSB     VSB3.3V     int.    int.        2.00    1.65 V [3]_
  in9     VBAT    VBATTERY    int.    int.        2.00    1.50 V [3]_
  ======= ======= =========== ==== ======= ============ ==============
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
91

b04f2f7d3   Mauro Carvalho Chehab   docs: hwmon: conv...
92
93
94
  .. [1] Depends on your hardware setup.
  .. [2] Obviously not correct, swapping R1 and R2 would make more sense.
  .. [3] F71872F/FG only.
5db3d3da9   Jean Delvare   [PATCH] hwmon: Ad...
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
  
  These values can be used as hints at best, as motherboard manufacturers
  are free to use a completely different setup. As a matter of fact, the
  Jetway K8M8MS uses a significantly different setup. You will have to
  find out documentation about your own motherboard, and edit sensors.conf
  accordingly.
  
  Each voltage measured has associated low and high limits, each of which
  triggers an alarm when crossed.
  
  
  Fan Monitoring
  --------------
  
  Fan rotation speeds are reported as 12-bit values from a gated clock
  signal. Speeds down to 366 RPM can be measured. There is no theoretical
  high limit, but values over 6000 RPM seem to cause problem. The effective
  resolution is much lower than you would expect, the step between different
  register values being 10 rather than 1.
  
  The chip assumes 2 pulse-per-revolution fans.
  
  An alarm is triggered if the rotation speed drops below a programmable
  limit or is too low to be measured.
  
  
  Temperature Monitoring
  ----------------------
  
  Temperatures are reported in degrees Celsius. Each temperature measured
  has a high limit, those crossing triggers an alarm. There is an associated
  hysteresis value, below which the temperature has to drop before the
  alarm is cleared.
  
  All temperature channels are external, there is no embedded temperature
  sensor. Each channel can be used for connecting either a thermal diode
  or a thermistor. The driver reports the currently selected mode, but
  doesn't allow changing it. In theory, the BIOS should have configured
  everything properly.
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
134
135
136
137
138
139
140
141
142
143
144
145
146
147
  
  
  Fan Control
  -----------
  
  Both PWM (pulse-width modulation) and DC fan speed control methods are
  supported. The right one to use depends on external circuitry on the
  motherboard, so the driver assumes that the BIOS set the method
  properly. The driver will report the method, but won't let you change
  it.
  
  When the PWM method is used, you can select the operating frequency,
  from 187.5 kHz (default) to 31 Hz. The best frequency depends on the
  fan model. As a rule of thumb, lower frequencies seem to give better
aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
148
149
150
  control, but may generate annoying high-pitch noise. So a frequency just
  above the audible range, such as 25 kHz, may be a good choice; if this
  doesn't give you good linear control, try reducing it. Fintek recommends
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
151
152
153
154
155
156
  not going below 1 kHz, as the fan tachometers get confused by lower
  frequencies as well.
  
  When the DC method is used, Fintek recommends not going below 5 V, which
  corresponds to a pwm value of 106 for the driver. The driver doesn't
  enforce this limit though.
aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
157
158
  Three different fan control modes are supported; the mode number is written
  to the pwm<n>_enable file.
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
159

aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
160
161
162
  * 1: Manual mode
    You ask for a specific PWM duty cycle or DC voltage by writing to the
    pwm<n> file.
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
163

aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
164
165
166
167
168
169
  * 2: Temperature mode
    You define 3 temperature/fan speed trip points using the
    pwm<n>_auto_point<m>_temp and _fan files. These define a staircase
    relationship between temperature and fan speed with two additional points
    interpolated between the values that you define. When the temperature
    is below auto_point1_temp the fan is switched off.
e9cea6460   Jean Delvare   hwmon/f71805f: Do...
170

aba5073d3   Phil Endecott   hwmon/f71805f: Ad...
171
172
173
174
175
176
  * 3: Fan speed mode
    You ask for a specific fan speed by writing to the fan<n>_target file.
  
  Both of the automatic modes require that pwm1 corresponds to fan1, pwm2 to
  fan2 and pwm3 to fan3. Temperature mode also requires that temp1 corresponds
  to pwm1 and fan1, etc.