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

Revision 3275, 38.6 KB (checked in by khali, 7 years ago)

Backport from Linux 2.6:
Document the individual alarm and beep bits of the w83781d driver.

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