root/lm-sensors/trunk/doc/chips/w83781d @ 2555

Revision 2555, 39.1 KB (checked in by khali, 9 years ago)

More info about AS99127F PWM.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1Kernel driver `w83781d.o'
2=========================
3
4Status: W83781D support is complete and well-tested.
5        W83782D support is complete and well-tested.
6        W83783S support is complete but has not been well-tested.
7        W83791D support is BETA.
8        W83627HF support is complete but has not been well-tested.
9        W83697HF support is complete but has not been well-tested.
10        AS99127F support is BETA and has known problems due to lack of a
11                 chip datasheet. SEE BELOW.
12
13Supported chips:
14  * Winbond W83781D
15    Prefix 'w83781d'
16    Addresses scanned: I2C 0x20 - 0x2f (inclusive), ISA 0x290 (8 I/O ports)
17    Datasheet: Publicly available at the Winbond website (www.winbond.com.tw)
18  * Winbond W83782D
19    Prefix 'w83782d'
20    Addresses scanned: I2C 0x20 - 0x2f (inclusive), ISA 0x290 (8 I/O ports)
21    Datasheet: Publicly available at the Winbond website
22  * Winbond W83783S
23    Prefix 'w83783s'
24    Addresses scanned: I2C 0x2d
25    Datasheet: Publicly available at the Winbond website
26  * Winbond W83791D
27    Prefix 'w83791d'
28    Addresses scanned: I2C 0x2c - 0x2f (inclusive)
29    Datasheet: Publicly available at the Winbond website
30  * Winbond W83627HF
31    Prefix 'w83627hf'
32    Addresses scanned: I2C 0x20 - 0x2f (inclusive), ISA 0x290 (8 I/O ports)
33    Datasheet: Publicly available at the Winbond website
34  * Winbond W83697HF
35    Prefix 'w83697hf'
36    Addresses scanned: ISA 0x290 (8 I/O ports)
37    Datasheet: Publicly available at the Winbond website
38  * Asus AS99127F
39    Prefix 'as99127f'
40    Addresses scanned: I2C 0x28 - 0x2f (inclusive)
41    Datasheet: Unavailable from Asus
42
43
44
45Authors: Frodo Looijaard <frodol@dds.nl>, Philip Edelbrock <phil@netroedge.com>,
46         and Mark Studebaker <mdsxyz123@yahoo.com>
47
48
49Module Parameters
50-----------------
51
52* force: short array (min = 1, max = 48)
53  List of adapter,address pairs to boldly assume to be present
54* force_w83781d: short array (min = 1, max = 48)
55  List of adapter,address pairs which are unquestionably assumed to contain
56  a `w83781d' chip
57* force_w83782d:
58  Ditto
59* force_w83783s:
60  Ditto
61* force_w83791d:
62  Ditto
63* force_w83627hf:
64  Ditto
65* force_w83697hf:
66  Ditto
67* force_as99127f:
68  Ditto
69* force_subclients=bus,caddr,saddr,saddr
70  This is used to force the i2c addresses for subclients of
71  a certain chip. Typical usage is `force_subclients=0,0x2d,0x4a,0x4b'
72  to force the subclients of chip 0x2d on bus 0 to i2c addresses
73  0x4a and 0x4b.
74  This parameter is useful for certain Tyan boards.
75* ignore: short array (min = 1, max = 48)
76  List of adapter,address pairs not to scan
77* ignore_range: short array (min = 1, max = 48)
78  List of adapter,start-addr,end-addr triples not to scan
79* probe: short array (min = 1, max = 48)
80  List of adapter,address pairs to scan additionally
81* probe_range: short array (min = 1, max = 48)
82  List of adapter,start-addr,end-addr triples to scan additionally
83* init=[0,1] (default 1)
84  Use 'init=0' to bypass initializing the chip.
85  Try this if your computer crashes when you load the module.
86
87
88Description
89-----------
90
91This driver implements support for the Winbond W83781D, W83782D,
92W8783S, and W83627HF chips, and the Asus AS99127F chips.
93We will refer to them collectively as W8378* chips.
94
95There is quite some difference between these chips, but they are similar
96enough that it was sensible to put them together in one driver.
97The W83627HF chip is assumed to be identical to the ISA W83782D.
98The Asus chips are similar to an I2C-only W83782D.
99
100Detection of these chips can sometimes be foiled because they can be in
101an internal state that allows no clean access. If you know the address
102of the chip, use a 'force' parameter; this will put them into a more
103well-behaved state first.
104
105The W8378* implements temperature sensors (three on the W83781D and W83782D,
106two on the W83783S), three FAN rotation speed sensors, voltage sensors
107(seven on the W83781D, nine on the W83782D and six on the W83783S), VID
108lines, alarms with beep warnings, and some miscellaneous stuff.
109
110Temperatures are measured in degrees Celcius. There is always one main
111temperature sensor, and one (W83783S) or two (W83781D and W83782D) other
112sensors.  An alarm is triggered for the main sensor once when the
113Overtemperature Shutdown limit is crossed; it is triggered again as soon as
114it drops below the Hysteresis value. A more useful behaviour
115can be found by setting the Hysteresis value to +127 degrees Celcius; in
116this case, alarms are issued during all the time when the actual temperature
117is above the Overtemperature Shutdown value. The driver sets the
118hysteresis value for temp1 to 127 at initialization.
119
120For the other temperature sensor(s), an
121alarm is triggered when the temperature gets higher then the Overtemperature
122Shutdown value; it stays on until the temperature falls below the Hysteresis
123value. But on the W83781D, there is only one alarm that functions for both
124other sensors!  Temperatures are guaranteed within a range of -55 to +125
125degrees. The main temperature sensors has a resolution of 1 degree; the other
126sensor(s) of 0.5 degree.
127
128FAN rotation speeds are reported in RPM (rotations per minute). An alarm is
129triggered if the rotation speed has dropped below a programmable limit. FAN
130readings can be divided by a programmable divider (1, 2, 4 or 8 for the
131W83781D; 1, 2, 4, 8, 16, 32, 64 or 128 for the others) to give
132the readings more range or accuracy. This is important because some FANs
133report only one 'tick' each rotation, while others report two - making
134all readings twice as high. Not all RPM values can accurately be represented,
135so some rounding is done. With a divider of 2, the lowest representable
136value is around 2600 RPM.
137
138Voltage sensors (also known as IN sensors) report their values in volts.
139An alarm is triggered if the voltage has crossed a programmable minimum
140or maximum limit. Note that minimum in this case always means 'closest to
141zero'; this is important for negative voltage measurements. All voltage
142inputs can measure voltages between 0 and 4.08 volts, with a resolution
143of 0.016 volt.
144
145The VID lines encode the core voltage value: the voltage level your processor
146should work with. This is hardcoded by the mainboard and/or processor itself.
147It is a value in volts. When it is unconnected, you will often find the
148value 3.50 V here.
149
150The W83782D and W83783S temperature conversion machine understands about
151several kinds of temperature probes. You can program the so-called
152beta value in the sensor files. '1' is the PII/Celeron diode, '2' is the
153TN3904 transistor, and 3435 the default thermistor value. Other values
154are (not yet) supported. You can program your own values through the
155rt interface, but this is not very useful, because these tables are
156under NDA.
157
158In addition to the alarms described above, there is a CHAS alarm on the
159chips which triggers if your computer case is open.
160
161When an alarm goes off, you can be warned by a beeping signal through
162your computer speaker. It is possible to enable all beeping globally,
163or only the beeping for some alarms.
164
165If an alarm triggers, it will remain triggered until the hardware register
166is read at least once. This means that the cause for the alarm may
167already have disappeared!  Note that in the current implementation, all
168hardware registers are read whenever any data is read (unless it is less
169than 1.5 seconds since the last update). This means that you can easily
170miss once-only alarms.
171
172The chips only update values each 1.5 seconds; reading them more often
173will do no harm, but will return 'old' values.
174
175
176W8378* PROBLEMS
177-----------------
178Known problems:
179        - Some chips are misidentified.
180          This is caused by the chip having the wrong WCHIPID register
181          value, so there is no fix. The workaround is to use the
182          force_CHIP parameter.
183          (modprobe w83781d force_CHIP=BUS,0x2d where CHIP is the chip name
184           and BUS is your i2c bus number -
185           cat /proc/bus/i2c to see a list of bus numbers)
186
187
188AS99127F PROBLEMS
189-----------------
190The as99127f support was developed without the benefit of a datasheet.
191In most cases it is treated as a w83781d (although revision 2 of the
192AS9917F looks more like a w83782d).
193This support will be BETA until a datasheet is released.
194One user has reported problems with fans stopping
195occasionally.
196
197Note that the individual beep bits are inverted from the other chips.
198The driver now takes care of this so that user-space applications
199don't have to know about it.
200
201Known problems:
202        - Problems with diode/thermistor settings (supported?)
203        - One user reports fans stopping under high server load.
204        - Revision 2 seems to have 2 PWM registers but we don't know
205          how to handle them. More details below.
206
207These will not be fixed unless we get a datasheet.
208If you have problems, please lobby Asus to release a datasheet.
209Unfortunately several others have without success.
210Please do not send mail to us asking for better as99127f support.
211We have done the best we can without a datasheet.
212Please do not send mail to the author or the sensors group asking for
213a datasheet or ideas on how to convince Asus. We can't help.
214
215
216Chip Features
217-------------
218
219Chip `w83781d'
220             LABEL        LABEL CLASS      COMPUTE CLASS ACCESS MAGNITUDE
221               in0               NONE               NONE     R     2
222               in1               NONE               NONE     R     2
223               in2               NONE               NONE     R     2
224               in3               NONE               NONE     R     2
225               in4               NONE               NONE     R     2
226               in5               NONE               NONE     R     2
227               in6               NONE               NONE     R     2
228           in0_min                in0                in0     RW    2
229           in1_min                in1                in1     RW    2
230           in2_min                in2                in2     RW    2
231           in3_min                in3                in3     RW    2
232           in4_min                in4                in4     RW    2
233           in5_min                in5                in5     RW    2
234           in6_min                in6                in6     RW    2
235           in0_max                in0                in0     RW    2
236           in1_max                in1                in1     RW    2
237           in2_max                in2                in2     RW    2
238           in3_max                in3                in3     RW    2
239           in4_max                in4                in4     RW    2
240           in5_max                in5                in5     RW    2
241           in6_max                in6                in6     RW    2
242              fan1               NONE               NONE     R     0
243              fan2               NONE               NONE     R     0
244              fan3               NONE               NONE     R     0
245          fan1_min               fan1               NONE     RW    0
246          fan2_min               fan2               NONE     RW    0
247          fan3_min               fan3               NONE     RW    0
248             temp1               NONE               NONE     R     1
249        temp1_hyst              temp1              temp1     RW    1
250        temp1_over              temp1              temp1     RW    1
251             temp2               NONE               NONE     R     1
252        temp2_hyst              temp2              temp2     RW    1
253        temp2_over              temp2              temp2     RW    1
254             temp3               NONE               NONE     R     1
255        temp3_hyst              temp3              temp3     RW    1
256        temp3_over              temp3              temp3     RW    1
257               vid               NONE               NONE     R     2
258          fan1_div               fan1               NONE     RW    0
259          fan2_div               fan2               NONE     RW    0
260          fan3_div               fan3               NONE     R     0
261            alarms               NONE               NONE     R     0
262       beep_enable             alarms               NONE     RW    0
263             beeps             alarms             alarms     RW    0
264
265             LABEL                          FEATURE SYMBOL        SYSCTL FILE:NR
266               in0                     SENSORS_W83781D_IN0                in0:3
267               in1                     SENSORS_W83781D_IN1                in1:3
268               in2                     SENSORS_W83781D_IN2                in2:3
269               in3                     SENSORS_W83781D_IN3                in3:3
270               in4                     SENSORS_W83781D_IN4                in4:3
271               in5                     SENSORS_W83781D_IN5                in5:3
272               in6                     SENSORS_W83781D_IN6                in6:3
273           in0_min                 SENSORS_W83781D_IN0_MIN                in0:1
274           in1_min                 SENSORS_W83781D_IN1_MIN                in1:1
275           in2_min                 SENSORS_W83781D_IN2_MIN                in2:1
276           in3_min                 SENSORS_W83781D_IN3_MIN                in3:1
277           in4_min                 SENSORS_W83781D_IN4_MIN                in4:1
278           in5_min                 SENSORS_W83781D_IN5_MIN                in5:1
279           in6_min                 SENSORS_W83781D_IN6_MIN                in6:1
280           in0_max                 SENSORS_W83781D_IN0_MAX                in0:2
281           in1_max                 SENSORS_W83781D_IN1_MAX                in1:2
282           in2_max                 SENSORS_W83781D_IN2_MAX                in2:2
283           in3_max                 SENSORS_W83781D_IN3_MAX                in3:2
284           in4_max                 SENSORS_W83781D_IN4_MAX                in4:2
285           in5_max                 SENSORS_W83781D_IN5_MAX                in5:2
286           in6_max                 SENSORS_W83781D_IN6_MAX                in6:2
287              fan1                    SENSORS_W83781D_FAN1               fan1:2
288              fan2                    SENSORS_W83781D_FAN2               fan2:2
289              fan3                    SENSORS_W83781D_FAN3               fan3:2
290          fan1_min                SENSORS_W83781D_FAN1_MIN               fan1:1
291          fan2_min                SENSORS_W83781D_FAN2_MIN               fan2:1
292          fan3_min                SENSORS_W83781D_FAN3_MIN               fan3:1
293             temp1                   SENSORS_W83781D_TEMP1              temp1:3
294        temp1_hyst              SENSORS_W83781D_TEMP1_HYST              temp1:2
295        temp1_over              SENSORS_W83781D_TEMP1_OVER              temp1:1
296             temp2                   SENSORS_W83781D_TEMP2              temp2:3
297        temp2_hyst              SENSORS_W83781D_TEMP2_HYST              temp2:2
298        temp2_over              SENSORS_W83781D_TEMP2_OVER              temp2:1
299             temp3                   SENSORS_W83781D_TEMP3              temp3:3
300        temp3_hyst              SENSORS_W83781D_TEMP3_HYST              temp3:2
301        temp3_over              SENSORS_W83781D_TEMP3_OVER              temp3:1
302               vid                     SENSORS_W83781D_VID                vid:1
303          fan1_div                SENSORS_W83781D_FAN1_DIV            fan_div:1
304          fan2_div                SENSORS_W83781D_FAN2_DIV            fan_div:2
305          fan3_div                SENSORS_W83781D_FAN3_DIV            fan_div:3
306            alarms                  SENSORS_W83781D_ALARMS             alarms:1
307       beep_enable             SENSORS_W83781D_BEEP_ENABLE               beep:1
308             beeps                   SENSORS_W83781D_BEEPS               beep:2
309
310
311Chip `w83782d'
312             LABEL        LABEL CLASS      COMPUTE CLASS ACCESS MAGNITUDE
313               in0               NONE               NONE     R     2
314               in1               NONE               NONE     R     2
315               in2               NONE               NONE     R     2
316               in3               NONE               NONE     R     2
317               in4               NONE               NONE     R     2
318               in5               NONE               NONE     R     2
319               in6               NONE               NONE     R     2
320               in7               NONE               NONE     R     2
321               in8               NONE               NONE     R     2
322           in0_min                in0                in0     RW    2
323           in1_min                in1                in1     RW    2
324           in2_min                in2                in2     RW    2
325           in3_min                in3                in3     RW    2
326           in4_min                in4                in4     RW    2
327           in5_min                in5                in5     RW    2
328           in6_min                in6                in6     RW    2
329           in7_min                in7                in7     RW    2
330           in8_min                in8                in8     RW    2
331           in0_max                in0                in0     RW    2
332           in1_max                in1                in1     RW    2
333           in2_max                in2                in2     RW    2
334           in3_max                in3                in3     RW    2
335           in4_max                in4                in4     RW    2
336           in5_max                in5                in5     RW    2
337           in6_max                in6                in6     RW    2
338           in7_max                in7                in7     RW    2
339           in8_max                in8                in8     RW    2
340              fan1               NONE               NONE     R     0
341              fan2               NONE               NONE     R     0
342              fan3               NONE               NONE     R     0
343          fan1_min               fan1               NONE     RW    0
344          fan2_min               fan2               NONE     RW    0
345          fan3_min               fan3               NONE     RW    0
346             temp1               NONE               NONE     R     1
347        temp1_hyst              temp1              temp1     RW    1
348        temp1_over              temp1              temp1     RW    1
349             temp2               NONE               NONE     R     1
350        temp2_hyst              temp2              temp2     RW    1
351        temp2_over              temp2              temp2     RW    1
352             temp3               NONE               NONE     R     1
353        temp3_hyst              temp3              temp3     RW    1
354        temp3_over              temp3              temp3     RW    1
355               vid               NONE               NONE     R     2
356          fan1_div               fan1               NONE     RW    0
357          fan2_div               fan2               NONE     RW    0
358          fan3_div               fan3               NONE     R     0
359            alarms               NONE               NONE     R     0
360       beep_enable             alarms               NONE     RW    0
361             beeps             alarms             alarms     RW    0
362           sensor1               NONE               NONE     RW    0
363           sensor2               NONE               NONE     RW    0
364           sensor3               NONE               NONE     RW    0
365
366             LABEL                          FEATURE SYMBOL        SYSCTL FILE:NR
367               in0                     SENSORS_W83782D_IN0                in0:3
368               in1                     SENSORS_W83782D_IN1                in1:3
369               in2                     SENSORS_W83782D_IN2                in2:3
370               in3                     SENSORS_W83782D_IN3                in3:3
371               in4                     SENSORS_W83782D_IN4                in4:3
372               in5                     SENSORS_W83782D_IN5                in5:3
373               in6                     SENSORS_W83782D_IN6                in6:3
374               in7                     SENSORS_W83782D_IN7                in7:3
375               in8                     SENSORS_W83782D_IN8                in8:3
376           in0_min                 SENSORS_W83782D_IN0_MIN                in0:1
377           in1_min                 SENSORS_W83782D_IN1_MIN                in1:1
378           in2_min                 SENSORS_W83782D_IN2_MIN                in2:1
379           in3_min                 SENSORS_W83782D_IN3_MIN                in3:1
380           in4_min                 SENSORS_W83782D_IN4_MIN                in4:1
381           in5_min                 SENSORS_W83782D_IN5_MIN                in5:1
382           in6_min                 SENSORS_W83782D_IN6_MIN                in6:1
383           in7_min                 SENSORS_W83782D_IN7_MIN                in7:1
384           in8_min                 SENSORS_W83782D_IN8_MIN                in8:1
385           in0_max                 SENSORS_W83782D_IN0_MAX                in0:2
386           in1_max                 SENSORS_W83782D_IN1_MAX                in1:2
387           in2_max                 SENSORS_W83782D_IN2_MAX                in2:2
388           in3_max                 SENSORS_W83782D_IN3_MAX                in3:2
389           in4_max                 SENSORS_W83782D_IN4_MAX                in4:2
390           in5_max                 SENSORS_W83782D_IN5_MAX                in5:2
391           in6_max                 SENSORS_W83782D_IN6_MAX                in6:2
392           in7_max                 SENSORS_W83782D_IN7_MAX                in7:2
393           in8_max                 SENSORS_W83782D_IN8_MAX                in8:2
394              fan1                    SENSORS_W83782D_FAN1               fan1:2
395              fan2                    SENSORS_W83782D_FAN2               fan2:2
396              fan3                    SENSORS_W83781D_FAN3               fan3:2
397          fan1_min                SENSORS_W83782D_FAN1_MIN               fan1:1
398          fan2_min                SENSORS_W83782D_FAN2_MIN               fan2:1
399          fan3_min                SENSORS_W83781D_FAN3_MIN               fan3:1
400             temp1                   SENSORS_W83782D_TEMP1              temp1:3
401        temp1_hyst              SENSORS_W83782D_TEMP1_HYST              temp1:2
402        temp1_over              SENSORS_W83782D_TEMP1_OVER              temp1:1
403             temp2                   SENSORS_W83782D_TEMP2              temp2:3
404        temp2_hyst              SENSORS_W83782D_TEMP2_HYST              temp2:2
405        temp2_over              SENSORS_W83782D_TEMP2_OVER              temp2:1
406             temp3                   SENSORS_W83782D_TEMP3              temp3:3
407        temp3_hyst              SENSORS_W83782D_TEMP3_HYST              temp3:2
408        temp3_over              SENSORS_W83782D_TEMP3_OVER              temp3:1
409               vid                     SENSORS_W83782D_VID                vid:1
410          fan1_div                SENSORS_W83782D_FAN1_DIV            fan_div:1
411          fan2_div                SENSORS_W83782D_FAN2_DIV            fan_div:2
412          fan3_div                SENSORS_W83781D_FAN3_DIV            fan_div:3
413            alarms                  SENSORS_W83782D_ALARMS             alarms:1
414       beep_enable             SENSORS_W83782D_BEEP_ENABLE               beep:1
415             beeps                   SENSORS_W83782D_BEEPS               beep:2
416           sensor1                   SENSORS_W83782D_SENS1            sensor1:1
417           sensor2                   SENSORS_W83782D_SENS2            sensor2:1
418           sensor3                   SENSORS_W83782D_SENS3            sensor3:1
419
420
421Chip `w83783s'
422             LABEL        LABEL CLASS      COMPUTE CLASS ACCESS MAGNITUDE
423               in0               NONE               NONE     R     2
424               in1               NONE               NONE     R     2
425               in2               NONE               NONE     R     2
426               in3               NONE               NONE     R     2
427               in4               NONE               NONE     R     2
428               in5               NONE               NONE     R     2
429               in6               NONE               NONE     R     2
430           in0_min                in0                in0     RW    2
431           in1_min                in1                in1     RW    2
432           in2_min                in2                in2     RW    2
433           in3_min                in3                in3     RW    2
434           in4_min                in4                in4     RW    2
435           in5_min                in5                in5     RW    2
436           in6_min                in6                in6     RW    2
437           in0_max                in0                in0     RW    2
438           in1_max                in1                in1     RW    2
439           in2_max                in2                in2     RW    2
440           in3_max                in3                in3     RW    2
441           in4_max                in4                in4     RW    2
442           in5_max                in5                in5     RW    2
443           in6_max                in6                in6     RW    2
444              fan1               NONE               NONE     R     0
445              fan2               NONE               NONE     R     0
446              fan3               NONE               NONE     R     0
447          fan1_min               fan1               NONE     RW    0
448          fan2_min               fan2               NONE     RW    0
449          fan3_min               fan3               NONE     RW    0
450             temp1               NONE               NONE     R     1
451        temp1_hyst              temp1              temp1     RW    1
452        temp1_over              temp1              temp1     RW    1
453             temp2               NONE               NONE     R     1
454        temp2_hyst              temp2              temp2     RW    1
455        temp2_over              temp2              temp2     RW    1
456               vid               NONE               NONE     R     2
457          fan1_div               fan1               NONE     RW    0
458          fan2_div               fan2               NONE     RW    0
459          fan3_div               fan3               NONE     R     0
460            alarms               NONE               NONE     R     0
461       beep_enable             alarms               NONE     RW    0
462             beeps             alarms             alarms     RW    0
463           sensor1               NONE               NONE     RW    0
464           sensor2               NONE               NONE     RW    0
465
466             LABEL                          FEATURE SYMBOL        SYSCTL FILE:NR
467               in0                     SENSORS_W83783S_IN0                in0:3
468               in1                     SENSORS_W83783S_IN1                in1:3
469               in2                     SENSORS_W83783S_IN2                in2:3
470               in3                     SENSORS_W83783S_IN3                in3:3
471               in4                     SENSORS_W83783S_IN4                in4:3
472               in5                     SENSORS_W83783S_IN5                in5:3
473               in6                     SENSORS_W83783S_IN6                in6:3
474           in0_min                 SENSORS_W83783S_IN0_MIN                in0:1
475           in1_min                 SENSORS_W83783S_IN1_MIN                in1:1
476           in2_min                 SENSORS_W83783S_IN2_MIN                in2:1
477           in3_min                 SENSORS_W83783S_IN3_MIN                in3:1
478           in4_min                 SENSORS_W83783S_IN4_MIN                in4:1
479           in5_min                 SENSORS_W83783S_IN5_MIN                in5:1
480           in6_min                 SENSORS_W83783S_IN6_MIN                in6:1
481           in0_max                 SENSORS_W83783S_IN0_MAX                in0:2
482           in1_max                 SENSORS_W83783S_IN1_MAX                in1:2
483           in2_max                 SENSORS_W83783S_IN2_MAX                in2:2
484           in3_max                 SENSORS_W83783S_IN3_MAX                in3:2
485           in4_max                 SENSORS_W83783S_IN4_MAX                in4:2
486           in5_max                 SENSORS_W83783S_IN5_MAX                in5:2
487           in6_max                 SENSORS_W83783S_IN6_MAX                in6:2
488              fan1                    SENSORS_W83783S_FAN1               fan1:2
489              fan2                    SENSORS_W83783S_FAN2               fan2:2
490              fan3                    SENSORS_W83783S_FAN3               fan3:2
491          fan1_min                SENSORS_W83783S_FAN1_MIN               fan1:1
492          fan2_min                SENSORS_W83783S_FAN2_MIN               fan2:1
493          fan3_min                SENSORS_W83783S_FAN3_MIN               fan3:1
494             temp1                   SENSORS_W83783S_TEMP1              temp1:3
495        temp1_hyst              SENSORS_W83783S_TEMP1_HYST              temp1:2
496        temp1_over              SENSORS_W83783S_TEMP1_OVER              temp1:1
497             temp2                   SENSORS_W83783S_TEMP2              temp2:3
498        temp2_hyst              SENSORS_W83783S_TEMP2_HYST              temp2:2
499        temp2_over              SENSORS_W83783S_TEMP2_OVER              temp2:1
500               vid                     SENSORS_W83783S_VID                vid:1
501          fan1_div                SENSORS_W83783S_FAN1_DIV            fan_div:1
502          fan2_div                SENSORS_W83783S_FAN2_DIV            fan_div:2
503          fan3_div                SENSORS_W83783S_FAN3_DIV            fan_div:3
504            alarms                  SENSORS_W83783S_ALARMS             alarms:1
505       beep_enable             SENSORS_W83783S_BEEP_ENABLE               beep:1
506             beeps                   SENSORS_W83783S_BEEPS               beep:2
507           sensor1                   SENSORS_W83783S_SENS1            sensor1:1
508           sensor2                   SENSORS_W83783S_SENS2            sensor2:1
509
510
511
512Miscellaneous documentation
513===========================
514
515
516
517/PROC ENTRIES
518-------------
519Varies depending on chip type. Most are identical to the lm78 entries.
520See the lm78 documentation for details.
521
522Additional entries not in the lm78:
523
524        pwm[1-4]: (not on w83781d nor as99127f)
525          Controls the speed of the fans with PWM (Pulse Width Modulation)
526          Valid values:
527            0 - 255. 255 = max speed.
528        Second value is PWM enable 0/1.
529
530        sensor[1-3]: (not on w83781d nor as99127f)
531          Controls the sensor type. To change to a different
532          sensor type, for example, do 'echo 2 > sensor1'.
533          Valid values:
534               1: Pentium II / Celeron diode
535               2: 2N3904 Transistor in a diode configuration
536            3435: Thermistor with Beta = 3435. Beta is a measure
537                  of sensitivity to temperature.
538          Thermistors with other Betas could in theory be supported
539          after correspondence with Winbond. See below.
540
541        rt[1-3]: (w83781d only)
542          32-byte tables controlling the conversion from
543          resistance to temperature for thermistors.
544          For the curious only. Writing to these entries will
545          probably render temperature sensing insane.
546          Only set at initialization; not updated every 1.5 seconds.
547
548
549
550TO DO:
551-----
552 782d programmable pins
553
554
555NOTES:
556-----
557  783s has no in1 so that in[2-6] are compatible with the 781d/782d.
558
559  783s pin is programmable for -5V or temp1; defaults to -5V,
560       no control in driver so temp1 doesn't work.
561
562  782d and 783s datasheets differ on which is pwm1 and which is pwm2.
563       We chose to follow 782d.
564
565  782d and 783s pin is programmable for fan3 input or pwm2 output;
566       defaults to fan3 input.
567       If pwm2 is enabled (with echo 255 1 > pwm2), then
568       fan3 will report 0.
569
570  782d has pwm1-2 for isa, pwm1-4 for i2c. (pwm3-4 share pins with
571       the isa pins)
572
573  781d allowable values for fan_div are 1,2,4,8.
574  782d/783s allowable values for fan_div are 1,2,4,8,16,32,64,128.
575
576
577
578Data sheet updates:
579------------------
580        - PWM clock registers:
581
582                000: master /  512
583                001: master / 1024
584                010: master / 2048
585                011: master / 4096
586                100: master / 8192
587
588
589Answers from Winbond tech support
590---------------------------------
591>
592> 1) In the W83781D data sheet section 7.2 last paragraph, it talks about
593>    reprogramming the R-T table if the Beta of the thermistor is not
594>    3435K. The R-T table is described briefly in section 8.20.
595>    What formulas do I use to program a new R-T table for a given Beta?
596>
597        We are sorry that the calculation for R-T table value is
598confidential. If you have another Beta value of thermistor, we can help
599to calculate the R-T table for you. But you should give us real R-T
600Table which can be gotten by thermistor vendor. Therefore we will calculate
601them and obtain 32-byte data, and you can fill the 32-byte data to the
602register in Bank0.CR51 of W83781D.
603
604
605> 2) In the W83782D data sheet, it mentions that pins 38, 39, and 40 are
606>    programmable to be either thermistor or Pentium II diode inputs.
607>    How do I program them for diode inputs? I can't find any register
608>    to program these to be diode inputs.
609 --> You may program Bank0 CR[5Dh] and CR[59h] registers.
610 
611        CR[5Dh]                 bit 1(VTIN1)    bit 2(VTIN2)   bit 3(VTIN3)
612             
613        thermistor                0              0              0       
614        diode                     1              1              1               
615 
616 
617(error) CR[59h]                 bit 4(VTIN1)    bit 2(VTIN2)   bit 3(VTIN3)
618(right) CR[59h]                 bit 4(VTIN1)    bit 5(VTIN2)   bit 6(VTIN3)
619       
620        PII thermal diode         1              1              1
621        2N3904  diode             0              0              0
622 
623 
624Author/Maintainer
625-----------------
626Original 781D support: Frodo and Phil (sensors@stimpy.netroedge.com)
627782D/783S support added by: Mark D. Studebaker (mdsxyz123@yahoo.com)
628Send requests to the sensors@stimpy.netroedge.com mailing list.
629
630
631Asus Clones
632-----------
633
634We have no datasheets for the Asus clones (AS99127F and ASB100 Bach).
635Here are some very useful information that were given to us by Alex Van
636Kaam about how to detect these chips, and how to read their values. He
637also gives advice for another Asus chipset, the Mozart-2 (which we
638don't support yet). Thanks Alex!
639I reworded some parts and added personal comments.
640
641# Detection:
642
643AS99127F rev.1, AS99127F rev.2 and ASB100:
644- I2C address range: 0x29 - 0x2F
645- If register 0x58 holds 0x31 then we have an Asus (either ASB100 or
646  AS99127F)
647- Which one depends on register 0x4F (manufacturer ID):
648  0x06 or 0x94: ASB100
649  0x12 or 0xC3: AS99127F rev.1
650  0x5C or 0xA3: AS99127F rev.2
651  Note that 0x5CA3 is Winbond's ID (WEC), which let us think Asus get their
652  AS99127F rev.2 direct from Winbond. The other codes mean ATT and DVC,
653  respectively. ATT could stand for Asustek something (although it would be
654  very badly chosen IMHO), I don't know what DVC could stand for. Maybe
655  these codes simply aren't meant to be decoded that way.
656
657Mozart-2:
658- I2C address: 0x77
659- If register 0x58 holds 0x56 or 0x10 then we have a Mozart-2
660- Of the mozart there are 3 types:
661  0x58=0x56, 0x4E=0x94, 0x4F=0x36: Asus ASM58 Mozart-2
662  0x58=0x56, 0x4E=0x94, 0x4F=0x06: Asus AS2K129R Mozart-2
663  0x58=0x10, 0x4E=0x5C, 0x4F=0xA3: Asus ??? Mozart-2
664  You can handle all 3 the exact same way :)
665
666# Temperature sensors:
667
668ASB100:
669- sensor 1: register 0x27
670- sensor 2 & 3 are the 2 LM75's on the SMBus
671- sensor 4: register 0x17
672Remark: I noticed that on Intel boards sensor 2 is used for the CPU
673  and 4 is ignored/stuck, on AMD boards sensor 4 is the CPU and sensor 2 is
674  either ignored or a socket temperature.
675
676AS99127F (rev.1 and 2 alike):
677- sensor 1: register 0x27
678- sensor 2 & 3 are the 2 LM75's on the SMBus
679Remark: Register 0x5b is suspected to be temperature type selector. Bit 1
680  would control temp1, bit 3 temp2 and bit 5 temp3.
681
682Mozart-2:
683- sensor 1: register 0x27
684- sensor 2: register 0x13
685
686# Fan sensors:
687
688ASB100, AS99127F (rev.1 and 2 alike):
689- 3 fans, identical to the W83781D
690
691Mozart-2:
692- 2 fans only, 1350000/rpm/div
693- fan 1: register 0x28,  divisor on register 0xA1 (bits 4-5)
694- fan 2: register 0x29,  divisor on register 0xA1 (bits 6-7)
695
696# Voltages:
697
698This is where there is a diffrence between AS99127F rev.1 and 2.
699Remark: The difference is similar to the difference between
700  W83781D and W83782D.
701
702ASB100:
703in0=r(0x20)*0.016
704in1=r(0x21)*0.016
705in2=r(0x22)*0.016
706in3=r(0x23)*0.016*1.68
707in4=r(0x24)*0.016*3.8
708in5=r(0x25)*(-0.016)*3.97
709in6=r(0x26)*(-0.016)*1.666
710
711AS99127F rev.1:
712in0=r(0x20)*0.016
713in1=r(0x21)*0.016
714in2=r(0x22)*0.016
715in3=r(0x23)*0.016*1.68
716in4=r(0x24)*0.016*3.8
717in5=r(0x25)*(-0.016)*3.97
718in6=r(0x26)*(-0.016)*1.503
719
720AS99127F rev.2:
721in0=r(0x20)*0.016
722in1=r(0x21)*0.016
723in2=r(0x22)*0.016
724in3=r(0x23)*0.016*1.68
725in4=r(0x24)*0.016*3.8
726in5=(r(0x25)*0.016-3.6)*5.14+3.6
727in6=(r(0x26)*0.016-3.6)*3.14+3.6
728
729Mozart-2:
730in0=r(0x20)*0.016
731in1=255
732in2=r(0x22)*0.016
733in3=r(0x23)*0.016*1.68
734in4=r(0x24)*0.016*4
735in5=255
736in6=255
737
738
739# PWM
740
741Additional info about PWM on the AS99127F (may apply to other Asus
742chips as well) by Jean Delvare as of 2004-04-09:
743
744AS99127F revision 2 seems to have two PWM registers at 0x59 and 0x5A,
745and a temperature sensor type selector at 0x5B (which basically means
746that they swapped registers 0x59 and 0x5B when you compare with Winbond
747chips).
748Revision 1 of the chip also has the temperature sensor type selector at
7490x5B, but PWM registers have no effect.
750
751We don't know exactly how the temperature sensor type selection works.
752Looks like bits 1-0 are for temp1, bits 3-2 for temp2 and bits 5-4 for
753temp3, although it is possible that only the most significant bit matters
754each time. So far, values other than 0 always broke the readings.
755
756PWM registers seem to be split in two parts: bit 7 is a mode selector,
757while the other bits seem to define a value or threshold.
758
759When bit 7 is clear, bits 6-0 seem to hold a threshold value. If the value
760is below a given limit, the fan runs at low speed. If the value is above
761the limit, the fan runs at full speed. We have no clue as to what the limit
762represents. Note that there seem to be some inertia in this mode, speed
763changes may need some time to trigger. Also, an hysteresis mechanism is
764suspected since walking through all the values increasingly and then
765decreasingly led to slighlty different limits.
766
767When bit 7 is set, bits 3-0 seem to hold a threshold value, while bits 6-4
768would not be significant. If the value is below a given limit, the fan runs
769at full speed, while if it is above the limit it runs at low speed (so this
770is the contrary of the other mode, in a way). Here again, we don't know
771what the limit is supposed to represent.
772
773One remarkable thing is that the fans would only have two or three
774different speeds (transitional states left apart), not a whole range as
775you usually get with PWM.
776
777As a conclusion, you can write 0x00 or 0x8F to the PWM registers to make
778fans run at low speed, and 0x7F or 0x80 to make them run at full speed.
779
780Please contact us if you can figure out how it is supposed to work. As
781long as we don't know more, the w83781d driver doesn't handle PWM on
782AS99127F chips at all.
783
784Additional info about PWM on the AS99127F by Marcansoft:
785
786I've been fiddling around with the (in)famous 0x59 register and
787found out the following values do work as a form of coarse pwm:
788
7890x80 - seems to turn fans off after some time(1-2 minutes)... might be
790some form of auto-fan-control based on temp? hmm (Qfan? this mobo is an
791old ASUS, it isn't marketed as Qfan. Maybe some beta pre-attemp at Qfan
792that was dropped at the BIOS)
7930x81 - off
7940x82 - slightly "on-ner" than off, but my fans do not get to move. I can
795hear the high-pitched PWM sound that motors give off at too-low-pwm.
7960x83 - now they do move. Estimate about 70% speed or so.
7970x84-0x8f - full on
798
799Changing the high nibble doesn't seem to do much except the high bit
800(0x80) must be set for PWM to work, else the current pwm doesn't seem to
801change.
802
803My mobo is an ASUS A7V266-E. This behaviour is similar to what I got
804with speedfan under Windows, where 0-15% would be off, 15-2x% (can't
805remember the exact value) would be 70% and higher would be full on.
Note: See TracBrowser for help on using the browser.