root/lm-sensors/trunk/etc/sensors.conf.eg @ 2984

Revision 2984, 68.1 KB (checked in by khali, 8 years ago)

Add a few notes about dual-CPU AS99127F setups, based on a report
from Jan "Slimak" Gorski.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# Sensors configuration file used by 'libsensors'
2#------------------------------------------------
3#
4##########################################################################
5#                                                                        #
6#    PLEASE READ THIS HELPFUL HINT!!!                                    #
7#                                                                        #
8#       The 'set' lines (generally for min and max values)               #
9#       do not take effect until you run 'sensors -s' as root !!!        #
10#       We suggest you put 'sensors -s' in a /etc/rc.d/... file          #
11#       to be run at boot time after the modules are inserted !!!        #
12#                                                                        #
13##########################################################################
14#
15#
16# OVERVIEW
17# --------
18# This configuration file will be used by all userspace applications
19# linked to libsensors. It is NOT used by the lm_sensors drivers directly.
20#
21# This config file consists of two parts: the heavily commented LM78
22# example, and the real parts. Search for '####' if you want to skip
23# to the real stuff.
24#
25# Hash marks introduce comments, which continue until the end of a line.
26#
27# Identifiers consisting of only digits and letters can be used
28# unquoted; other identifiers must be quoted. Escape characters within
29# quotes operate like those in C.
30#
31#
32# CHIP LINES
33# ----------
34# A 'chip' line specifies what the following 'label', 'compute', 'set' and
35# 'ignore' lines refer to. In this case, until the
36# next 'chip' line, everything refers to all lm78, lm78-j and lm79
37# chips. Other examples are *-isa-* for everything on the ISA bus, and
38# lm78-j-i2c-*-4e for all lm78-j chips on address 0x4e of any I2C bus.
39#
40# If more chip statements match a specific chip, they are all considered.
41# Later lines overrule earlier lines, so if you set the in0 label for
42# lm78-* to "This", and later on the in0 label for lm78-isa-* to "That",
43# "That" is used for LM78 chips on the ISA bus, and "This" for LM78
44# chips on a non-ISA bus.
45#
46#       chip "lm78-*" "lm78-j-*" "lm79-*"
47#
48#
49# FEATURE NAMES
50# -------------
51# Feature names are used in 'label', 'compute', 'set', and 'ignore' lines.
52# Example feature names are 'in0', 'temp2', 'in3_min', and 'temp3_over'.
53# These features are defined for each chip in lib/chips.c.
54#
55# Undefined features will be silently ignored in 'label' and 'compute' lines.
56# Undefined features in 'set' lines will result in 'Unknonw feature name'
57# when running 'sensors -s'.
58#
59# Unfortunately, feature names starting with a number must be in
60# double quotes or you get "parse error, expecting 'NAME'".
61#
62# If you have trouble, verify the features in lib/chips.c!!!
63#
64#
65# LABEL LINES
66# -----------
67# A label line describes what a certain feature stands for on your
68# mainboard. Programs can retrieve these names and display them.
69# If no label is specified for a certain feature, the default name
70# (ie. 'fan1' for fan1) is used.
71#
72# If you specify a label for in1, this label is also used for in1_min and
73# in1_max, unless they have their own labels declared. There are several
74# of these logical groups.
75#
76# These are as advised in the LM78 and LM79 data sheets, and used on most
77# boards we have seen.
78#
79#       label in0 "VCore 1"
80#       label in1 "VCore 2"
81#       label in2 "+3.3V"
82#       label in3 "+5V"
83#       label in4 "+12V"
84#       label in5 "-12V"
85#       label in6 "-5V"
86#
87#
88# COMPUTE LINES
89# -------------
90# A compute line describes how to scale a certain feature. There are
91# two expressions in it: the first describes how the /proc value must
92# be translated to a user value, the second how a user value must be
93# translated to a /proc value. '@' is the value to operate on. You may
94# refer to other readable features (like '2 * vid').
95#
96# The following operators are valid: + - * / ( ) ^ `
97# ^ is e**x and ` is ln(x) (valid in library version 2.0.0 /
98# lm_sensors 2.8.0 or higher)
99#
100# Like for the label statement, there are logical groups here. They are
101# sometimes a bit different, though. For example, fan1_div is in the
102# logical label group of fan1 (it gets the same label if none is declared
103# for it), but it is not in the compute group of fan1 (as it uses a
104# completely different system of values).
105#
106#
107# VOLTAGE COMPUTATION DETAILS
108# ---------------------------
109# Most voltage sensors in sensor chips have a range of 0 to 4.096 Volts.
110# This is generally sufficient for the 3.3 and CPU (2.5V, for example)
111# supply voltages, so the sensor chip reading is the actual voltage.
112#
113# Other supply voltages must be scaled with an external resistor network.
114# The chip driver generally reports the 'raw' value 0 - 4.09 V, and the
115# userspace application must convert this raw value to an actual voltage.
116# The 'compute' lines provide this facility.
117#
118# Unfortunately the resistor values vary among motherboard types.
119# Therefore you may have to adjust the computations in this file
120# to match your motherboard.
121#
122# For positive voltages (in3, in4), two resistors are used, with the following
123# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
124#       R1 = R2 * (Vs/Vin - 1)
125# For negative voltages (in5, in6) two resistors are used, with the following
126# formula (Rin,Rf: resistor values, Vs: read voltage, Vin: pin voltage)
127#       Rin = (Vs * Rf) / Vin
128#
129# Note: Some chips use a different formula, see it87 section for example.
130#
131# Here are the official LM78 and LM79 data sheet values.
132#             Vs     R1,Rin   R2,Rf    Vin
133#       in3   +5.0      6.8    10     +2.98
134#       in4  +12.0     30      10     +3.00
135#       in5  -12.0    240      60     +3.00
136#       in6   -5.0    100      60     +3.00
137#
138# These would lead to these declarations:
139#       compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
140#       compute in4 ((30/10)+1)*@  ,  @/((30/10)+1)
141#       compute in5 -(240/60)*@    ,  -@/(240/60)
142#       compute in6 -(100/60)*@    ,  -@/(100/60)
143#
144# On almost any mainboard we have seen, the Winbond compute values lead to
145# much better results, though.
146#
147#             Vs     R1,Rin   R2,Rf    Vin
148#       in4  +12.0     28      10     +3.00
149#       in5  -12.0    210      60.4   +3.00
150#       in6   -5.0     90.9    60.4   +3.00
151#
152# These leads to these declarations:
153#       compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
154#       compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
155#       compute in5 -(210/60.4)*@  ,  -@/(210/60.4)
156#       compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
157#
158# NOTE: On many motherboards, the -5V and -12V sensors are not connected.
159# Add ignore lines so these readings will not be displayed. For example:
160#       ignore in5
161#       ignore in6
162#
163#
164# TEMPERATURE COMPUTATION EXAMPLES
165# --------------------------------
166# There are two common ways to adjust temperature readings.
167# One is to adjust by a constant. The other is to change the
168# temperature sensor type.
169#
170# Add 5 degrees to temperature sensor 1:
171#       compute temp1 @+5,@-5
172#
173# Sensor type adjustments (certain chips only):
174# ...Set temp1 to processor's thermal diode:
175#       set sensor1 1 (Winbond chips)
176#       set sensor1 3 (IT87xx and MTP008 chips)
177#
178# ...Set temp1 sensor to 3904 transistor:
179#       set sensor1 2 (Winbond chips)
180#
181# ...Set temp1 to thermistor:
182#       set sensor1 3435 (Winbond chips)
183#       set sensor1 2 (IT87xx and MTP008 chips)
184#
185# Often, a temperature sensor is disconnected; disable it with an ignore line:
186#       ignore temp3
187#
188#
189# SET LINES
190# ---------
191# Set statements set things like limits. Complete expressions can be
192# used. Not everything can sensibly be set: setting 'in0', for example,
193# is impossible! These settings are put through the compute translations;
194# so if we specify '12.8' for in6, '3.2' will actually be written!
195#
196# Important note: In the 'sensors' program, these only take effect
197# after running 'sensors -s'!!!
198#
199# Here are some examples:
200#
201#       set in0_max vid*1.05
202#       set in0_min vid*0.95
203#       set temp1_over 40
204#       set temp1_hyst 37
205#
206# Think of tempx_over as 'alarm set' and tempx_hyst as 'alarm clear'
207# thresholds. In most cases the 'over' value should be higher than
208# the 'hyst' value by several degrees.
209#
210#
211# IGNORE LINES
212# ------------
213# Ignore statements tell certain features are not wanted. User programs can
214# still read them if they really want, though; this is just an advisory
215# marking. 'in0' would also invalidate 'in0_max' and 'in0_min'.
216# 'ignore' does not disable anything in the actual sensor chip; it
217# simply advises the user program to not access that data.
218#
219#       ignore in0
220#
221#
222# STATEMENT ORDER
223# ---------------
224# Statements can go in any order, EXCEPT that some statements depend
225# on others. Dependencies could be either in the library or the driver.
226# A 'compute' statement must go before a 'set' statement
227# for the same feature or else the 'set' won't be computed correctly.
228# This is a library dependency.
229# A 'set fan1_div' statement must go before a 'set fan1_min' statement,
230# because the driver uses the divisor in calculating the minimum.
231# Also, one should set vrm prior to using vid in any formula.
232#
233#
234# BUS LINES
235# ---------
236# There is one other feature: the 'bus' statement. An example is below.
237#
238#       bus "i2c-0" "SMBus PIIX4 adapter at e800" "Non-I2C SMBus adapter"
239#
240# If we refer from now on to 'i2c-0' in 'chip' lines, this will run-time
241# be matched to this bus. So even if the PIIX4 is called 'i2c-5' at that
242# moment, because five other adapters were detected first, 'i2c-0' in
243# the config file would always only match this physical bus. In the above
244# config file, this feature is not needed; but the next lines would
245# only affect the LM75 chips on the PIIX4 adapter:
246#
247#       chip "lm75-i2c-0-*"
248#
249# You should really use the output of /proc/bus/chips to generate bus lines,
250# because one mistyped characted will inhibit the match. Wildcards are not
251# yet supported; spaces at the end are ignored, though.
252#
253#
254# BEEPS
255# -----
256# Some chips support alarms with beep warnings. When an alarm is triggered
257# you can be warned by a beeping signal through your computer speaker. It
258# is possible to enable beeps for all alarms on a chip using the following
259# line:
260#
261#       set beep_enable 1
262#
263# or disable them using:
264#
265#       set beep_enable 0
266#
267#
268##########################################################################
269#### Here begins the real configuration file
270
271
272chip "lm78-*" "lm78-j-*" "lm79-*" "w83781d-*"
273
274# These are as advised in the LM78 and LM79 data sheets, and used on almost
275# any mainboard we have seen.
276
277    label in0 "VCore 1"
278    label in1 "VCore 2"
279    label in2 "+3.3V"
280    label in3 "+5V"
281    label in4 "+12V"
282    label in5 "-12V"
283    label in6 "-5V"
284
285# For positive voltages (in3, in4), two resistors are used, with the following
286# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
287#   R1 = R2 * (Vs/Vin - 1)
288# For negative voltages (in5, in6) two resistors are used, with the following
289# formula (Rin,Rf: resistor values, Vs: read voltage, Vin: pin voltage)
290#   Rin = (Vs * Rf) / Vin
291#
292# Here are the official LM78 and LM79 data sheet values.
293#       Vs     R1,Rin   R2,Rf    Vin
294# in3   +5.0      6.8    10     +2.98
295# in4  +12.0     30      10     +3.00
296# in5  -12.0    240      60     +3.00
297# in6   -5.0    100      60     +3.00
298#
299# These would lead to these declarations:
300# compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
301# compute in4 ((30/10)+1)*@  ,  @/((30/10)+1)
302# compute in5 -(240/60)*@    ,  -@/(240/60)
303# compute in6 -(100/60)*@    ,  -@/(100/60)
304#
305# On almost any mainboard we have seen, the Winbond compute values lead to
306# much better results, though.
307#
308#       Vs     R1,Rin   R2,Rf    Vin
309# in4  +12.0     28      10     +3.00
310# in5  -12.0    210      60.4   +3.00
311# in6   -5.0     90.9    60.4   +3.00
312#
313# These leads to these declarations:
314
315    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
316    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
317    compute in5 -(210/60.4)*@  ,  -@/(210/60.4)
318    compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
319
320# Here, we assume the VID readings are valid, and we use a max. 5% deviation
321
322    set in0_min vid*0.95
323    set in0_max vid*1.05
324    set in1_min vid*0.95
325    set in1_max vid*1.05
326    set in2_min 3.3 * 0.95
327    set in2_max 3.3 * 1.05
328    set in3_min 5.0 * 0.95
329    set in3_max 5.0 * 1.05
330    set in4_min 12 * 0.95
331    set in4_max 12 * 1.05
332    set in5_max -12 * 0.95
333    set in5_min -12 * 1.05
334    set in6_max -5 * 0.95
335    set in6_min -5 * 1.05
336
337# Examples for lm78, lm78j, lm79 temperature limits
338#    set temp_over 40
339#    set temp_hyst 37
340
341# Examples for w83781d temperature limits
342#    set temp1_over 40
343#    set temp1_hyst 37
344#    set temp2_over 52
345#    set temp2_hyst 47
346#    set temp3_over 52
347#    set temp3_hyst 47
348
349# Ignore fans you don't actually have
350#    ignore fan1
351#    ignore fan2
352#    ignore fan3
353
354# In case a lm78 is used together with a lm75, the lm78 temp sensor will
355# generally show the M/B temperature while the lm75 temp sensor will show
356# the CPU temperature.
357#    label temp "M/B Temp"
358
359# Uncomment the following line to enable beeps for all alarms on this chip
360#    set beep_enable 1
361
362
363
364chip "lm75-*"
365
366# Most boards don't need scaling. Following is
367# for the Asus TX97-E. If it doesn't work for you, feel free to complain.
368#   compute temp @*2.0, @/2.0
369
370# Examples for temperature limits
371#    set temp_over 70   
372#    set temp_hyst 65   
373
374# In case a lm75 is used together with a lm78, the lm78 temp sensor will
375# generally show the M/B temperature while the lm75 temp sensor will show
376# the CPU temperature.
377#    label temp "CPU Temp"
378
379
380chip "sis5595-*"
381
382    label in0 "VCore 1"
383    label in1 "VCore 2"
384    label in2 "+3.3V"
385    label in3 "+5V"
386    label in4 "+12V"
387
388    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
389    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
390
391    set in0_min 2.0 * 0.95
392    set in0_max 2.0 * 1.05
393    set in1_min 2.0 * 0.95
394    set in1_max 2.0 * 1.05
395    set in2_min 3.3 * 0.95
396    set in2_max 3.3 * 1.05
397    set in3_min 5.0 * 0.95
398    set in3_max 5.0 * 1.05
399    set in4_min 12 * 0.95
400    set in4_max 12 * 1.05
401
402#
403# SiS5595 temperature calculation
404# The driver currently includes a calculation due to the wide
405# variation in thermistor types on SiS5595 motherboards.
406# The driver currently has a calculation of t = (.83x + 52.12).
407# One user reports the correct formula of t = (.345x - 12).
408# So you want to put a compute line in sensors.conf that has
409# the inverse of the driver formula, and put your formula on top of it.
410# The inverse of the driver formula is x = (1.20t - 62.77)
411# So the final formula is newt = (.345(1.20t - 62.77)) - 12).
412# Put this in the sensors.conf file as
413# compute temp ((.345 * ((1.20 * @) - 62.77)) - 12), ...
414# where ... is the inverse function I leave to you.
415#
416# Look in your 'Vendor.ini' file to see which one is present
417# on your motherboard. Look for the line like:
418#       [Temp1]
419#            ThermistorType     = NTC-10KC15-1608-1P
420# Fix up a 'compute' line to match your thermistor type.
421# Warning. You still don't have enough information to do this.
422#            ThermistorType     = NTC-10KC15-1608-1P (10K at 25C; Beta = 3435)
423#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
424#            ThermistorType     = NTC-103KC15-1608-1P  (??)
425#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
426#            ThermistorType     = NTC-103AT-2 (10K at 25C; Beta = 3435)
427#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
428#            ThermistorType     = NTC-103JT   (10K at 25C; Beta = 3435)
429#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
430
431# examples for sis5595 temperature limits;
432# for sis5595, temp_hyst is really the low limit, not a hysteresis value
433#    set temp_over 40
434#    set temp_hyst 37
435
436
437chip "w83782d-*" "w83627hf-*"
438
439# Same as above for w83781d except that in5 and in6 are computed differently.
440# Rather than an internal inverting op amp, the 82d/83s use standard positive
441# inputs and the negative voltages are level shifted by a 3.6V reference.
442# The math is convoluted, so we hope that your motherboard
443# uses the recommended resistor values.
444
445    label in0 "VCore 1"
446    label in1 "VCore 2"
447    label in2 "+3.3V"
448    label in3 "+5V"
449    label in4 "+12V"
450    label in5 "-12V"
451    label in6 "-5V"
452    label in7 "V5SB"
453    label in8 "VBat"
454
455# Abit BP6 motherboard has a few differences. VCore1 and VCore2 are the core
456# voltages of the two processors. Vtt is memory bus termination resistors
457# voltage.
458#    label in1 "Vtt"
459#    label in8 "VCore2"
460
461    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
462    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
463    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
464    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
465    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
466
467# adjust this if your vid is wrong; see doc/vid
468#   set vrm 9.0
469
470# set limits to  5% for the critical voltages
471# set limits to 10% for the non-critical voltages
472# set limits to 20% for the battery voltage
473
474    set in0_min vid*0.95
475    set in0_max vid*1.05
476    set in1_min vid*0.95
477    set in1_max vid*1.05
478    set in2_min 3.3 * 0.95
479    set in2_max 3.3 * 1.05
480    set in3_min 5.0 * 0.95
481    set in3_max 5.0 * 1.05
482    set in4_min 12 * 0.90
483    set in4_max 12 * 1.10
484    set in5_max -12 * 0.90
485    set in5_min -12 * 1.10
486    set in6_max -5 * 0.95
487    set in6_min -5 * 1.05
488    set in7_min 5 * 0.95
489    set in7_max 5 * 1.05
490    set in8_min 3.0 * 0.80
491    set in8_max 3.0 * 1.20
492
493# set up sensor types (thermistor is default)
494# 1 = PII/Celeron Diode; 2 = 3904 transistor;
495# 3435 = thermistor with Beta = 3435
496# If temperature changes very little, try 1 or 2.
497#   set sensor1 1
498#   set sensor2 2
499#   set sensor3 3435
500
501# examples for temperature limits
502#    set temp1_over 40
503#    set temp1_hyst 37
504#    set temp2_over 52
505#    set temp2_hyst 47
506#    set temp3_over 52
507#    set temp3_hyst 47
508
509
510chip "w83783s-*"
511
512# Same as above for w83781d except that in5 and in6 are computed differently.
513# Rather than an internal inverting op amp, the 82d/83s use standard positive
514# inputs and the negative voltages are level shifted by a 3.6V reference.
515# The math is convoluted, so we hope that your motherboard
516# uses the recommended resistor values.
517
518    label in0 "VCore 1"
519    label in2 "+3.3V"
520    label in3 "+5V"
521    label in4 "+12V"
522    label in5 "-12V"
523    label in6 "-5V"
524
525    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
526    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
527    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
528    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
529
530# adjust this if your vid is wrong; see doc/vid
531#   set vrm 9.0
532
533# set limits to  5% for the critical voltages
534# set limits to 10% for the non-critical voltages
535# set limits to 20% for the battery voltage
536
537    set in0_min vid*0.95
538    set in0_max vid*1.05
539    set in2_min 3.3 * 0.95
540    set in2_max 3.3 * 1.05
541    set in3_min 5.0 * 0.95
542    set in3_max 5.0 * 1.05
543    set in4_min 12 * 0.90
544    set in4_max 12 * 1.10
545    set in5_max -12 * 0.90
546    set in5_min -12 * 1.10
547    set in6_max -5 * 0.95
548    set in6_min -5 * 1.05
549
550# set up sensor types (thermistor is default)
551# 1 = PII/Celeron Diode; 2 = 3904 transistor;
552# 3435 = thermistor with Beta = 3435
553# If temperature changes very little, try 1 or 2.
554#   set sensor1 1
555#   set sensor2 2
556
557# examples for temperature limits
558#    set temp1_over 40
559#    set temp1_hyst 37
560#    set temp2_over 52
561#    set temp2_hyst 47
562
563
564chip "w83697hf-*"
565
566# Same as above for w83781d except that in5 and in6 are computed differently.
567# Rather than an internal inverting op amp, the 82d/83s use standard positive
568# inputs and the negative voltages are level shifted by a 3.6V reference.
569# The math is convoluted, so we hope that your motherboard
570# uses the recommended resistor values.
571
572# no in1 on this chip.
573
574    label in0 "VCore"
575    label in2 "+3.3V"
576    label in3 "+5V"
577    label in4 "+12V"
578    label in5 "-12V"
579    label in6 "-5V"
580    label in7 "V5SB"
581    label in8 "VBat"
582
583# Tyan Trinity S2495 KT400 has a few differences. Thanks to Eric Schumann
584# for proving this information. Same is true for Epox 8K3A and 8KHA+.
585# Thanks to Thomas Schorpp for additional feedback.
586#    label in2 "VAgp"
587#    label in5 "+3.3V" # aka. Vio
588#    label in6 "Vdimm"
589#    label in7 "VBat"
590#    label in8 "V5SB"
591#
592# You'll also want to comment out the in5 and in6 compute lines right below,
593# and rename compute in7 to compute in8.
594
595    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
596    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
597    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
598    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
599    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
600
601# 697HF does not have VID inputs so you MUST set your core
602# voltage limits below. Currently set for 1.8V core.
603#               vvv
604
605    set in0_min 1.8 * 0.95
606    set in0_max 1.8 * 1.05
607
608    set in2_min 3.3 * 0.95
609    set in2_max 3.3 * 1.05
610    set in3_min 5.0 * 0.95
611    set in3_max 5.0 * 1.05
612    set in4_min 12 * 0.90
613    set in4_max 12 * 1.10
614    set in5_max -12 * 0.90
615    set in5_min -12 * 1.10
616    set in6_max -5 * 0.95
617    set in6_min -5 * 1.05
618    set in7_min 5 * 0.95
619    set in7_max 5 * 1.05
620    set in8_min 3.0 * 0.80
621    set in8_max 3.0 * 1.20
622
623# And for Tyan Trinity S2495 KT400 and Epox 8K3A and 8KHA+:
624#    set in2_min 1.5 * 0.95
625#    set in2_max 1.5 * 1.05
626#    set in5_min 3.3 * 0.95
627#    set in5_max 3.3 * 1.05
628#    set in6_min 2.5 * 0.95 # 2.6 on Epox
629#    set in6_max 2.5 * 1.05 # 2.6 on Epox
630#    set in7_min 3.0 * 0.90
631#    set in7_max 3.0 * 1.10
632#    set in8_min 5 * 0.90
633#    set in8_max 5 * 1.10
634
635# set up sensor types (thermistor is default)
636# 1 = PII/Celeron Diode; 2 = 3904 transistor;
637# 3435 = thermistor with Beta = 3435
638# If temperature changes very little, try 1 or 2.
639#   set sensor1 1
640#   set sensor2 2
641#   set sensor3 3435
642
643# examples for temperature limits
644#    set temp1_over 40
645#    set temp1_hyst 37
646#    set temp2_over 52
647#    set temp2_hyst 47
648
649
650chip "w83627thf-*" "w83637hf-*"
651
652# Rather than an internal inverting op amp, the 627thf uses standard positive
653# inputs and the negative voltages are level shifted by a 3.6V reference
654# (same as 82d/83s).
655# The math is convoluted, so we hope that your motherboard
656# uses the recommended resistor values.
657# Note that in1 (+12V) is the usual in4, and in4 (-12V) is the usual in5.
658# Data sheet is obviously wrong for in4, the usual formula should work.
659# No in5 nor in6.
660# sensors doesn't need the ignore lines but sensord does...
661    ignore in5
662    ignore in6
663
664    label in0 "VCore"
665    label in1 "+12V"
666    label in2 "+3.3V"
667    label in3 "+5V"
668    label in4 "-12V"
669    label in7 "V5SB"
670    label in8 "VBat"
671
672# Mori Hiroyuki reported to need this (P4P800)
673#   compute in0 @/2, @*2
674
675    compute in1 ((28/10)+1)*@, @/((28/10)+1)
676    compute in3 ((34/51)+1)*@, @/((34/51)+1)
677    compute in4 (5.14*@)-14.91, (@+14.91)/5.14
678    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
679
680# adjust this if your vid is wrong; see doc/vid
681#   set vrm 9.0
682
683# set limits to  5% for the critical voltages
684# set limits to 10% for the non-critical voltages
685# set limits to 20% for the battery voltage
686# if your vid is wrong, you'll need to adjust in0_min and in0_max
687
688    set in0_min vid * 0.95
689    set in0_max vid * 1.05
690    set in1_min 12 * 0.90
691    set in1_max 12 * 1.10
692    set in2_min 3.3 * 0.95
693    set in2_max 3.3 * 1.05
694    set in3_min 5.0 * 0.95
695    set in3_max 5.0 * 1.05
696    set in4_min -12 * 0.90
697    set in4_max -12 * 1.10
698    set in7_min 5 * 0.95
699    set in7_max 5 * 1.05
700    set in8_min 3.0 * 0.80
701    set in8_max 3.0 * 1.20
702
703# set up sensor types (thermistor is default)
704# 1 = PII/Celeron Diode; 2 = 3904 transistor;
705# 3435 = thermistor with Beta = 3435
706# If temperature changes very little, try 1 or 2.
707#   set sensor1 1
708#   set sensor2 2
709#   set sensor3 3435
710
711    label temp1 "M/B Temp"
712    label temp2 "CPU Temp"
713#   ignore temp3
714
715# examples for temperature limits
716#    set temp1_over 40
717#    set temp1_hyst 37
718#    set temp2_over 52
719#    set temp2_hyst 47
720#    set temp3_over 52
721#    set temp3_hyst 47
722
723#   ignore fan1
724    label fan2 "CPU Fan"
725#   ignore fan3
726
727
728# Here are configurations for Winbond W83792AD/D chip.
729chip "w83792d-*"
730
731    label in0 "VCoreA"
732    label in1 "VCoreB"
733    label in2 "VIN0"
734    label in3 "VIN1"
735    label in4 "VIN2"
736    label in5 "VIN3"
737    label in6 "5VCC"
738    label in7 "5VSB"
739    label in8 "VBAT"
740    label fan1 "Fan1"
741    label fan2 "Fan2"
742    label fan3 "Fan3"
743    label fan4 "Fan4"
744    label fan5 "Fan5"
745    label fan6 "Fan6"
746    label fan7 "Fan7"
747    label temp1 "Temp1"
748    label temp2 "Temp2"
749    label temp3 "Temp3"
750
751    set in0_min 1.4
752    set in0_max 1.6
753    set in1_min 1.4
754    set in1_max 1.6
755    set in2_min 3.2
756    set in2_max 3.4
757    set in3_min 3.1
758    set in3_max 3.3
759    set in4_min 1.4
760    set in4_max 1.5
761    set in5_min 2.6
762    set in5_max 2.65
763    set in6_min 5 * 0.95
764    set in6_max 5 * 1.05
765    set in7_min 5 * 0.95
766    set in7_max 5 * 1.05
767    set in8_min 3 * 0.95
768    set in8_max 3 * 1.05
769
770    #set fan1_div 4
771    #set fan1_min 1500
772    set fan2_div 4
773    set fan2_min 1500
774    #set fan3_min 1300
775    #set fan4_min 1500
776    #set fan5_min 1500
777    #set fan6_min 1500
778    #set fan7_min 1500
779
780    set temp1_over 42
781    set temp1_hyst 37
782    set temp2_over 43
783    set temp2_hyst 38
784    set temp3_over 45
785    set temp3_hyst 40
786
787    #ignore fan1
788    #ignore fan3
789    #ignore fan4
790    #ignore fan5
791    #ignore fan6
792    #ignore fan7
793    #ignore temp3
794
795
796chip "as99127f-*"
797
798# Asus won't release a datasheet so this is guesswork.
799# Thanks to Guntram Blohm, Jack, Ed Harrison, Artur Gawryszczak,
800# Victor G. Marimon and others for their feedback.
801
802# Dual power plane
803    label in0 "VCore 1"
804    label in1 "VCore 2"
805# Single power plane (A7V133, A7M266, CUV4X)
806#   label in0 "VCore"
807#   ignore in1
808
809    label in2 "+3.3V"
810    label in3 "+5V"
811    label in4 "+12V"
812# These last two may not make sense on all motherboards.
813    label in5 "-12V"
814    label in6 "-5V"
815
816    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
817    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
818# AS99127F rev.1 (same as w83781d)
819    compute in5 -(240/60.4)*@ ,  -@/(240/60.4)
820    compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
821# AS99127F rev.2 (same as w83782d)
822#   compute in5 (5.14 * @) - 14.91 , (@ + 14.91) / 5.14
823#   compute in6 (3.14 * @) -  7.71 , (@ +  7.71) / 3.14
824
825# Depending on your motherboard, you may have to use any of two formulae
826# for temp2. Quoting Artur Gawryszczak (edited to reflect subsequent fixes
827# to the driver):
828# "I guess, that the formula "(@*15/43)+25, (@-25)*43/15" is correct
829# for those Asus motherboards, which get CPU temperature from internal
830# thermal diode (Pentium Coppermine, and above), while no formula is needed
831# for Athlon/Duron boards, which use a thermistor in the socket."
832# An alternative formula was then found and reported by Victor G. Marimon.
833
834# Asus A7V133, Asus A7M266
835#   No compute line is needed
836# Asus CUV4X, Asus A7V8X
837#   compute temp2 (@*15/43)+25, (@-25)*43/15
838# Asus CUSL2, Asus CUV266-DLS, Asus TUSL2-C
839#   compute temp2 (@*30/43)+25, (@-25)*43/30
840
841# See comments above if temp3 looks bad. What works for temp2 is likely
842# to work for temp3 for dual-CPU boards, such as the CUV4X-D.
843
844# Most Asus boards have temperatures settled like that:
845    label temp1 "M/B Temp"
846    label temp2 "CPU Temp"
847# However, some boards have them swapped (A7N8X Deluxe rev.2,
848# A7N8X-E Deluxe rev.2, A7N8X-X, CUV4X):
849#   label temp1 "CPU Temp"
850#   label temp2 "M/B Temp"
851
852# Most boards have no temp3 by default, except for dual-CPU boards.
853#   label temp3 "CPU 2 Temp"
854#   ignore temp3
855
856# adjust this if your vid is wrong; see doc/vid
857#   set vrm 9.0
858
859# set limits to  5% for the critical voltages
860# set limits to 10% for the non-critical voltages
861# set limits to 20% for the battery voltage
862
863    set in0_min vid*0.95
864    set in0_max vid*1.05
865    set in1_min vid*0.95
866    set in1_max vid*1.05
867    set in2_min 3.3 * 0.95
868    set in2_max 3.3 * 1.05
869    set in3_min 5.0 * 0.95
870    set in3_max 5.0 * 1.05
871    set in4_min 12 * 0.90
872    set in4_max 12 * 1.10
873    set in5_max -12 * 0.90
874    set in5_min -12 * 1.10
875    set in6_max -5 * 0.95
876    set in6_min -5 * 1.05
877
878# examples for temperature limits
879#    set temp1_over 40
880#    set temp1_hyst 37
881#    set temp2_over 52
882#    set temp2_hyst 47
883#    set temp3_over 52
884#    set temp3_hyst 47
885
886# The A7N8X-X board is known to need this:
887# (reported by Roberto Sebastiano <robs@multiplayer.it>)
888#    compute fan1  @/2,  2*@
889
890
891chip "gl518sm-*"
892
893# IMPORTANT: in0, in1, and in2 values (+5, +3, and +12) CANNOT be read
894#            unless you use the slow 'iterate' method. Limits will still
895#            work even when iterate=0. See doc/chips/gl518sm.
896#            Note that the 'iterate' method was trimmed while porting the
897#            driver to Linux 2.6 as we considered it too ugly for the thin
898#            benefit.
899#
900# Factors and labels taken from GL518SM datasheet, they seem to give
901# reasonable values with EISCA connected Fan78
902
903  label vdd "+5V"
904  label vin1 "+3.3V"
905  label vin2 "+12V"
906  label vin3 "Vcore"
907
908# vin2 depends on external resistors (4,7k and 15k assumed here)
909# vin1 and vin3 require no scaling
910
911  compute vin2 (197/47)*@  ,  @/(197/47)
912
913  set vdd_min 4.8
914  set vdd_max 5.2
915  set vin1_min 3.20
916  set vin1_max 3.40
917  set vin2_min 11.0
918  set vin2_max 13.0
919  set vin3_min 2.10
920  set vin3_max 2.30
921#  set fan1_off 0
922#  set fan2_min 0
923
924# Do NOT uncomment the following line with the Linux 2.6 kernel driver,
925# as it'll raise an error.
926# set iterate 2
927
928
929chip "gl520sm-*"
930
931# Factors and labels taken from GL520SM datasheet
932
933# The GL520SM has two application modes. In mode 1 it has two thermistor
934# inputs, in mode 2 it has only one and an extra (negative) voltage input.
935# The mode is supposed to be set properly by your BIOS so you should not
936# need to change it. You can force it below if really needed though.
937# Note that this means that you have either temp2 or vin4 but never both
938# at the same time.
939
940# set two_temps 1
941
942  label vdd "+5V"
943  label vin1 "+3.3V"
944  label vin2 "+12V"
945  label vin3 "Vcore"
946  label vin4 "-12V"
947
948# vin1 and vin3 require no scaling
949# vin2 depends on external resistors (4,7k and 15k assumed)
950
951# vin4 = ((R1+R2)/R2)*@ - (R1/R2)*vdd
952#
953#       -12 --| R1 |---t---| R2 |-- +5
954#                      |
955#                    vin4
956#
957
958  compute vin2 (197/47)*@  ,  @/(197/47)
959  compute vin4 (5*@)-(4*vdd) , (@+4*vdd)/5
960
961  set vdd_min 4.8
962  set vdd_max 5.2
963  set vin1_min 3.20
964  set vin1_max 3.40
965  set vin2_min 11.0
966  set vin2_max 13.0
967  set vin3_min 2.10
968  set vin3_max 2.30
969
970
971chip "lm80-*"
972
973# The values below should be correct if you own a qdi BX (brilliant1)
974# mainboard. If not, please contact us, so we can figure out better readings.
975# Many thanks go to Peter T. Breuer <ptb@it.uc3m.es> for helping us figure
976# out how to handle the LM80.
977
978# For positive voltages (in0..in4), two resistors are used, with the following
979# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
980#   R1 = R2 * (Vs/Vin - 1)
981# For negative voltages (in5, in6) two resistors are used, with the following
982# formula (R3,R4: resistor values, Vs: read voltage, Vin: pin voltage,
983# V5: +5V)
984#   R3 = R4 * (Vs - Vin) / (Vin - V5)
985
986# Here are the official LM80 data sheet values.
987#       Vs      R1,R3   R2,R4    Vin
988#       +2.5V    23.7    75     +1.9
989#       +3.3V    22.1    30     +1.9
990#       +5.0     24      14.7   +1.9
991#      +12.0    160      30.1   +1.9
992#      -12.0    160      35.7   +1.9
993#       -5.0     36      16.2   +1.9
994
995# Now curiously enough, VCore is connected with (unknown) resistors, which
996# translate a +2.8V to +1.9V. So we use that in the computations below.
997
998    label in0 "+5V"
999    label in1 "VTT"
1000    label in2 "+3.3V"
1001    label in3 "+Vcore"
1002    label in4 "+12V"
1003    label in5 "-12V"
1004    label in6 "-5V"
1005
1006    compute in0 (24/14.7 + 1) * @ ,       @ / (24/14.7 + 1)
1007    compute in2 (22.1/30 + 1) * @ ,       @ / (22.1/30 + 1)
1008    compute in3 (2.8/1.9) * @,            @ * 1.9/2.8
1009    compute in4 (160/30.1 + 1) * @,       @ / (160/30.1 + 1)
1010    compute in5 (160/35.7)*(@ - in0) + @, (@ + in0 * 160/35.7)/ (1 + 160/35.7)
1011    compute in6 (36/16.2)*(@ - in0) + @,  (@ + in0 * 36/16.2) / (1 + 36/16.2)
1012
1013    set in0_min 5 * 0.95
1014    set in0_max 5 * 1.05
1015# What is your VTT? It is probably not this value...
1016    set in1_min 2*0.95
1017    set in1_max 2*1.05
1018    set in2_min 3.3 * 0.95
1019    set in2_max 3.3 * 1.05
1020# What is your VCore? It is probably not this value...
1021    set in3_min 1.9 * 0.95
1022    set in3_max 1.9 * 1.05
1023    set in4_min 12 * 0.95
1024    set in4_max 12 * 1.05
1025    set in5_min -12 * 1.05
1026    set in5_max -12 * 0.95
1027    set in6_min -5 * 1.05
1028    set in6_max -5 * 0.95
1029
1030# examples for lm80 temperature limits
1031# WARNING - nonstandard names and functions for the lm80!!!
1032# All 4 of these limits apply to the single temperature sensor.
1033# "hot" is like the standard alarm for most chips.
1034# "os" is the threshold for the overtemperature shutdown output.
1035# "os" may or may not do anything on your motherboard but it should
1036#  be set higher than the "hot" thresholds.
1037# Note that the /proc file 'temp" also has five entries instead of
1038# the usual three.
1039#    set temp_hot_hyst 45
1040#    set temp_hot_max  52
1041#    set temp_os_hyst  57
1042#    set temp_os_max   62
1043
1044
1045chip "maxilife-cg-*" "maxilife-co-*" "maxilife-as-*"
1046
1047   label fan1  "HDD Fan"
1048   label fan2  "PCI Fan"
1049   label fan3  "CPU Fan"
1050   ignore fan4
1051
1052   label temp2 "PCI Temp"
1053   label temp4 "HDD Temp"
1054   label temp5 "CPU Temp"
1055   ignore temp6
1056
1057   label vid1  "V+12"
1058   ignore vid5
1059
1060# vid1 need to be scaled by 6.337 other voltages
1061# require no scaling
1062
1063   compute vid1 6.337*@ , @/6.337
1064
1065
1066chip "maxilife-cg-*"
1067
1068   ignore temp1
1069   label temp3  "BX Temp"
1070
1071   label vid2   "Vcpu1"
1072   label vid3   "Vcpu2"
1073   ignore vid4
1074
1075
1076chip "maxilife-co-*"
1077
1078   label temp1  "CPU 1 Temp"
1079   label temp3  "CPU 2 Temp"
1080
1081   label vid2   "Vcpu1"
1082   label vid3   "Vcpu2"
1083   label vid4   "VcacheL2"
1084
1085
1086chip "maxilife-as-*"
1087
1088   ignore temp1
1089   ignore temp3
1090
1091   label vid2   "Vcpu"
1092   ignore vid3
1093   ignore vid4
1094
1095
1096chip "maxilife-nba-*"
1097
1098   label fan1  "CPU Fan"
1099   label fan2  "PCI Fan"
1100   label fan3  "HDD Fan"
1101   label fan4  "Heat Sink Fan"
1102
1103   label temp1  "CPU 1 Temp"
1104   label temp2  "CPU 2 Temp"
1105   label temp3  "PCI/Ambient Temp"
1106   label temp4  "HDD Temp"
1107   label temp5  "Motherboard Temp"
1108   label temp6  "CPU Reference Temp"
1109
1110   label vid1  "V+12"
1111   label vid2  "Vcpu1"
1112   label vid3  "Vcpu2"
1113   label vid4  "VcacheL2"
1114   label vid5  "V-12"
1115
1116
1117chip "via686a-*"
1118
1119# VIA is very specific about the voltage sensor inputs, and our labels
1120# reflect what they say.  Unfortunately, they are not at all specific about
1121# how to convert any of the register values to real units.  Fortunately,
1122# Jonathan Yew <j.teh@iname.com> and Alex van Kaam <darkside@chello.nl>
1123# came through with some data for temp conversion and formulae for voltage
1124# conversion. However, the conversions should be regarded as our best guess-
1125# YMMV.
1126
1127# On the Tyan S1598, the 2.5V sensor reads 0 and is not displayed in the BIOS.
1128# Linas Vepstas <linas@linas.org> reports that this sensor shows nothing of
1129# interest on the Abit KA7 (Athlon), and is also not displayed in the BIOS.
1130# Likewise, Johannes Drechsel-Burkhard <jdb@chello.at> reports that this
1131# sensor is unavailable in the BIOS of his MSI K7T Pro (Thunderbird).  So,
1132# if you have one of these boards you may want to uncomment the 'ignore 2.5V'
1133# line below.
1134
1135    label "2.0V" "CPU core"
1136    label "2.5V" "+2.5V"
1137    #ignore "2.5V"
1138    label "3.3V" "I/O"
1139    label "5.0V" "+5V"
1140    label "12V" "+12V"
1141
1142    label fan1  "CPU Fan"
1143    label fan2  "P/S Fan"
1144
1145# VIA suggests that temp3 is an internal temp sensor for the 686a.  However,
1146# on the Tyan S1598 as well as the Abit KA7 (Athalon), the absolute values
1147# of the readings from that sensor are not valid.  The readings do seem to
1148# correlate with temp changes, but the conversion factor may be quite
1149# different from temp1 & temp2 (as noted above, VIA has not provided
1150# conversion info).  So, you may wish to 'ignore temp3'.
1151
1152# Johannes Drechsel-Burkhard <jdb@chello.at> notes that on his MSI K7T Pro,
1153# temp1 is the CPU temp and temp2 is the SYS temp. Hugo van der Merwe notes
1154# the same for his Gigabyte GA-7DXC, and Olivier Martin for his Gigabyte
1155# GA-7ZM.
1156
1157    label temp1 "SYS Temp"
1158    label temp2 "CPU Temp"
1159    label temp3 "SBr Temp"
1160    #ignore temp3
1161
1162# Set your CPU core limits here if the BIOS did not.
1163
1164    #set in0_min 1.70 * 0.95
1165    #set in0_max 1.70 * 1.05
1166
1167# Other voltage values are standard so we can enforce the limits.
1168
1169    set in1_min 2.5 * 0.95
1170    set in1_max 2.5 * 1.05
1171    set in2_min 3.3 * 0.95
1172    set in2_max 3.3 * 1.05
1173    set in3_min 5 * 0.9
1174    set in3_max 5 * 1.1
1175    set in4_min 12 * 0.9
1176    set in4_max 12 * 1.1
1177
1178# Set your temp limits here.  Remember, 'tempX_over' is the temp at which an
1179# alarm is triggered, and 'tempX_hyst' is the temp at which an alarm turns off.
1180# Setting tempX_hyst to a few degrees below the corresponding tempX_over
1181# prevents an oscillation between alarm on and off states.  This kind of
1182# oscillation is known as hyteresis, thus the name.  (You typically get the
1183# most serious and troublesome hysteresis when a sensor triggers something to
1184# reduce the temp, thus creating a negative feedback loop.  Even without that,
1185# we would still get some oscillation when the temp hovers around the limit
1186# due to noise.)
1187
1188    set temp1_hyst 40
1189    set temp1_over 45
1190    set temp2_hyst 55
1191    set temp2_over 60
1192    set temp3_hyst 60
1193    set temp3_over 65
1194
1195# You could set your fan limits too, but the defaults should be fine.
1196
1197    #set fan1_min 5000
1198    #set fan2_min 5000
1199
1200
1201chip "mtp008-*"
1202
1203# The values below should be correct if you own a Tyan S1834D motherboard.
1204# If not, please contact us, so we can figure out better readings.
1205# FOR TYAN S2510 SEE END OF THIS SECTION.
1206
1207# For positive voltages outside the 0..4.09V range (in2..in4), two resistors
1208# are used, with the following formula (R1,R2: resistor values, Vs: read
1209# voltage, Vin: pin voltage)
1210#   Vin = Vs * (R2 / (R1 + R2))
1211# For negative voltages (in5) two resistors are used, with the following
1212# formula (R3,R4: resistor values, Vs: read voltage, Vin: pin voltage)
1213#   Vin = ((4.096 - Vs) * (R3 / (R3 + R4))) + Vs
1214
1215# Here are the official MTP008 data sheet values:
1216#       Vs      R1,R3   R2,R4    Vin
1217#      +12.0    28000   10000   +3.16
1218#      -12.0   232000   56000   +0.96
1219#       -5.0   120000   56000   +1.20
1220
1221    label in0 "VCore1"
1222    label in1 "+3.3V"
1223    label in2 "+12V"
1224    label in3 "Vcore2"
1225    ignore in4
1226    label in5 "-12V"
1227    label in6 "Vtt"
1228
1229    label fan1 "CPU1 Fan"
1230    label fan2 "CPU2 Fan"
1231    label fan3 "fan3"
1232
1233    label temp1 "CPU1 Temp"
1234    label temp2 "CPU2 Temp"
1235    ignore temp3
1236
1237    compute in2 @ * 38 / 10,            @ * 10 / 38
1238    compute in5 (@ * 36 - 118.61) / 7,  (118.61 + 7 * @) / 36
1239
1240# examples for temperature limits
1241#    set temp1_over 40
1242#    set temp1_hyst 37
1243#    set temp2_over 52
1244#    set temp2_hyst 47
1245#    set temp3_over 52
1246#    set temp3_hyst 47
1247
1248# End of standard mtp008 configuration
1249
1250# TYAN S2510 INFORMATION
1251# This motherboard has two mtp008's which are hooked up differently,
1252# so they must be configured separately.
1253# For this motherboard, COMMENT OUT the above mtp008 section and
1254# UNCOMMENT the following two sections.
1255#
1256#chip "mtp008-i2c-*-2c"
1257#    label in0 "VCore1"
1258#    set in0_min 1.60
1259#    set in0_max 1.80
1260#    label in1 "+3.3V"
1261#    label in2 "+12V"
1262#    label in3 "Vcore2"
1263#    set in3_min 1.60
1264#    set in3_max 1.80
1265#    ignore in4
1266#    label in5 "-12V"
1267#    label in6 "Vtt"
1268#    label fan1 "CPU1 Fan"
1269#    label fan2 "CPU2 Fan"
1270#    label fan3 "fan3"
1271#    label temp1 "CPU1 Temp"
1272#    label temp2 "CPU2 Temp"
1273#    ignore temp3
1274#    compute in2 @ * 38 / 10,           @ * 10 / 38
1275#    compute in5 (@ * 36 - 118.61) / 7, (118.61 + 7 * @) / 36
1276#
1277#chip "mtp008-i2c-*-2e"
1278#    ignore in0
1279#    label in1 "+3.3V"
1280#    ignore in2
1281#    label in3 "+5V"
1282#    set in3_min 4.50
1283#    set in3_max 5.50
1284#    ignore in4
1285#    label in5 "+3.3V"
1286#    ignore in6
1287#    label fan1 "fan4"
1288#    label fan2 "fan5"
1289#    label fan3 "fan6"
1290#    ignore temp1
1291#    label temp2 "MB Temp"
1292#    set temp2_over 52
1293#    set temp2_hyst 47
1294#    ignore temp3
1295
1296chip "adm1025-*" "ne1619-*"
1297
1298# The ADM1025 has integrated scaling resistors, rather
1299# than external resistors common to most sensor devices.
1300# These apply to the 6 voltage inputs in0-in5 (+2.5V, VCore,
1301# +3.3V, +5V, +12V, VCC). As the scaling is fixed inside
1302# the chip for these inputs, it is fairly certain that the
1303# motherboard connections match these labels, and that the
1304# driver computations are correct. Therefore they do not need to
1305# be overridden here.
1306
1307    label in0 "+2.5V"
1308    label in1 "VCore"
1309    label in2 "+3.3V"
1310    label in3 "+5V"
1311    label in4 "+12V"
1312    label in5 "VCC"
1313
1314# Adjust this if your vid is wrong; see doc/vid
1315#   set vrm 9.0
1316
1317# Tolerate a 5% deviance for CPU power-supply
1318    set in1_min vid * 0.95
1319    set in1_max vid * 1.05
1320# Tolerate a 10% deviance for other voltages
1321    set in0_min 2.5 * 0.90
1322    set in0_max 2.5 * 1.10
1323    set in2_min 3.3 * 0.90
1324    set in2_max 3.3 * 1.10
1325    set in3_min 5.0 * 0.90
1326    set in3_max 5.0 * 1.10
1327    set in4_min 12 * 0.90
1328    set in4_max 12 * 1.10
1329    set in5_min 3.3 * 0.90
1330    set in5_max 3.3 * 1.10
1331
1332# Depending on how your chipset is hardwired, you may or may not have
1333# +12V readings (will show as 0.0V if you don't have it).
1334#   ignore in4
1335
1336# VCC is the power-supply voltage of the ADM1025 chipset, generally
1337# redundant with +3.3V so you may want to hide it.
1338#   ignore in5
1339
1340# Temperatures
1341    label temp1 "CPU Temp"
1342    label temp2 "M/B Temp"
1343    set temp1_low 10
1344    set temp1_high 60
1345    set temp2_low 10
1346    set temp2_high 45
1347
1348
1349chip "lm87-*"
1350#
1351# The LM87 has integrated scaling resistors, rather
1352# than external resistors common to most sensor devices.
1353# These apply to the first 6 voltage inputs in0-in5
1354# (+2.5, Vccp1, +3.3, +5, 12, +Vccp2). As the scaling is fixed inside
1355# the chip for these inputs, it is fairly certain that the
1356# motherboard connections match these labels, and that the
1357# driver computations are correct. Therefore they do not need to
1358# be overridden here.
1359#
1360# Note: AIN1 (-12?), AIN2 (-5?) and temp3 require changing
1361# #defines in the driver and recompiling!!!
1362# This does not apply to the Linux 2.6 driver.
1363#
1364# This chip has non-standard entries in lib/chips.c so
1365# the feature names are quite different from other chips.
1366# For this chip, libsensors anticipates the correct labeling.
1367# This is great if it's correct but makes it a little more
1368# difficult if you want to change it.
1369#
1370# This may not have been a good idea, so it may be changed in the future.
1371# Here is an entry with everything commented out so you can
1372# uncomment the appropriate line if you want to change it.
1373#
1374# Warning - feature names starting with a number must be enclosed
1375# with double quotes.
1376
1377   label "2.5V"  "+2.5V"
1378   label Vccp1   "VCore"
1379   label "3.3V"  "+3.3V"
1380   label "5V"    "+5V"
1381   label "12V"   "+12V"
1382#   label Vccp2   "VCore2"
1383
1384   label fan1 "CPU Fan"
1385#   label fan2 "Case Fan"
1386   label temp1 "M/B Temp"
1387   label CPU_Temp "CPU Temp"
1388#   label temp3 "AUX Temp"
1389
1390   set Vccp1_min    vid * 0.95
1391   set Vccp1_max    vid * 1.05
1392   set "3.3V_min"   3.3 * 0.92
1393   set "3.3V_max"   3.3 * 1.08
1394   set "5V_min"       5 * 0.92
1395   set "5V_max"       5 * 1.08
1396   set "12V_min"     12 * 0.90
1397   set "12V_max"     12 * 1.10
1398
1399# These ones are mutually exclusive with temp3. If you have temp3,
1400# comment out these lines as they will trigger errors on "sensors -s".
1401   set "2.5V_min"   2.5 * 0.92
1402   set "2.5V_max"   2.5 * 1.08
1403   set Vccp2_min    vid * 0.95
1404   set Vccp2_max    vid * 1.05
1405
1406# Increase fan clock dividers if your fans read 0 RPM while you know
1407# they are connected and running.
1408#   set fan1_div 4
1409#   set fan2_div 4
1410
1411   set fan1_min 3000
1412   set fan2_min 3000
1413
1414   set temp1_min   5
1415   set temp1_max  65
1416   set temp2_min   5
1417   set temp2_max  70
1418
1419# Uncomment if you actually have temp3 (which means you don't have 2.5V
1420# nor Vccp2, as they are mutually exclusive).
1421#   set temp3_min   5
1422#   set temp3_max  70
1423
1424# LM87 AIN1 and AIN2 Section
1425# As described above, the driver must be recompiled to use either or
1426# both of these. -12 and -5 may be reversed on your board, this is
1427# just a guess, the datasheet gives no guidance.
1428# Note that the Linux 2.6 driver needs no recompilation, it'll read the
1429# configuration from the chip.
1430#   label AIN1 "-12V"
1431#   label AIN2 "-5V"
1432#   set AIN1_min -12 * 0.95
1433#   set AIN2_min -5 * 0.95
1434#   set AIN1_max -12 * 1.05
1435#   set AIN2_max -5 * 1.05
1436#   compute AIN1 (7.50 * @) - 21.45  ,  (@ + 21.45) / 7.50
1437#   compute AIN2 (4.05 * @) - 10.07  ,  (@ + 10.07) / 4.05
1438
1439chip "adm9240-*" "ds1780-*" "lm81-*"
1440#
1441# These chips have non-standard entries in lib/chips.c so
1442# the feature names are quite different from other chips.
1443# For these chips, libsensors anticipates the correct labeling.
1444# This is great if it's correct but makes it a little more
1445# difficult if you want to change it.
1446#
1447# This may not have been a good idea, so it may be changed in the future.
1448# Here is an entry with everything commented out so you can
1449# uncomment the appropriate line if you want to change it.
1450#
1451# Warning - feature names starting with a number must be enclosed
1452# with double quotes.
1453#
1454#   label "2.5V" "xxx"
1455#   label Vccp1 "xxx"
1456#   label "3.3V" "xxx"
1457#   label "5V" "xxx"
1458#   label "12V" "xxx"
1459#   label Vccp2 "xxx"
1460#   label fan1 "xxx"
1461#   label fan2 "xxx"
1462#   label temp "xxx"
1463#
1464#   set Vccp1_min xxx
1465#   set "2.5V_min" xxx
1466#   set "3.3V_min" xxx
1467#   set "5V_min" xxx
1468#   set "12V_min" xxx
1469#   set Vccp2_min xxx
1470#
1471#   set Vccp1_max xxx
1472#   set "2.5V_max" xxx
1473#   set "3.3V_max" xxx
1474#   set "5V_max" xxx
1475#   set "12V_max" xxx
1476#   set Vccp2_max xxx
1477#
1478#   set fan1_div xxx
1479#   set fan2_div xxx
1480#   set fan1_min xxx
1481#   set fan2_min xxx
1482#   set temp1_hyst xxx
1483#   set temp1_over xxx
1484
1485#   compute "2.5V" xxx
1486#   compute Vccp1 xxx
1487#   compute "3.3V" xxx
1488#   compute "5V" xxx
1489#   compute "12V" xxx
1490#   compute Vccp2 xxx
1491#   compute temp xxx
1492
1493chip "adm1024-*"
1494#
1495# These settings work for me, adjust for your system
1496#
1497    label fan1 "CPU1 fan"
1498    label fan2 "CPU2 fan"
1499    label temp "SYS Temp"
1500    label temp1 "CPU2 Temp"
1501    label temp2 "CPU1 Temp"
1502    ignore "2.5V" # This register is also used for temp2
1503    ignore "Vccp1"
1504    ignore "Vccp2"
1505
1506
1507chip "it87-*" "it8712-*"
1508
1509# The values below have been tested on Asus CUSI, CUM motherboards.
1510
1511# Voltage monitors as advised in the It8705 data sheet
1512
1513    label in0 "VCore 1"
1514    label in1 "VCore 2"
1515    label in2 "+3.3V"
1516    label in3 "+5V"
1517    label in4 "+12V"
1518    label in5 "-12V"
1519    label in6 "-5V"
1520    label in7 "Stdby"
1521    label in8 "VBat"
1522
1523    # vid is not monitored by IT8705F
1524    # comment out if you have IT8712
1525    ignore  vid
1526
1527# Incubus Saturnus reports that the IT87 chip on Asus A7V8X-X seems
1528# to report the VCORE voltage approximately 0.05V higher than the board's
1529# BIOS does. Although it doesn't make much sense physically, uncommenting
1530# the next line should bring the readings in line with the BIOS' ones in
1531# this case.
1532# compute in0 -0.05+@ , @+0.05
1533
1534# If 3.3V reads 2X too high (Soyo Dragon and Asus A7V8X-X, for example),
1535# comment out following line.
1536    compute in2   2*@ , @/2
1537#
1538    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1539    compute in4 ((30/10) +1)*@  , @/((30/10) +1)
1540# For this family of chips the negative voltage equation is different from
1541# the lm78.  The chip uses two external resistor for scaling but one is
1542# tied to a positive reference voltage.  See ITE8705/12 datasheet (SIS950
1543# data sheet is wrong)
1544# Vs = (1 + Rin/Rf) * Vin - (Rin/Rf) * Vref.
1545# Vref = 4.096 volts, Vin is voltage measured, Vs is actual voltage.
1546
1547# The next two are negative voltages (-12 and -5).
1548# The following formulas must be used. Unfortunately the datasheet
1549# does not give recommendations for Rin, Rf, but we can back into
1550# them based on a nominal +2V input to the chip, together with a 4.096V Vref.
1551# Formula:
1552#    actual V = (Vmeasured * (1 + Rin/Rf)) - (Vref * (Rin/Rf))
1553#    For -12V input use Rin/Rf = 6.68
1554#    For -5V input use Rin/Rf = 3.33
1555# Then you can convert the forumula to a standard form like:
1556    compute in5 (7.67 * @) - 27.36  ,  (@ + 27.36) / 7.67
1557    compute in6 (4.33 * @) - 13.64  ,  (@ + 13.64) / 4.33
1558#
1559# this much simpler version is reported to work for a
1560# Elite Group K7S5A board
1561#
1562#   compute in5 -(36/10)*@, -@/(36/10)
1563#   compute in6 -(56/10)*@, -@/(56/10)
1564#
1565    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1566
1567    set in0_min 1.5 * 0.95
1568    set in0_max 1.5 * 1.05
1569    set in1_min 2.4
1570    set in1_max 2.6
1571    set in2_min 3.3 * 0.95
1572    set in2_max 3.3 * 1.05
1573    set in3_min 5.0 * 0.95
1574    set in3_max 5.0 * 1.05
1575    set in4_min 12 * 0.95
1576    set in4_max 12 * 1.05
1577    set in5_max -12 * 0.95
1578    set in5_min -12 * 1.05
1579    set in6_max -5 * 0.95
1580    set in6_min -5 * 1.05
1581    set in7_min 5 * 0.95
1582    set in7_max 5 * 1.05
1583    #the chip does not support in8 min/max
1584
1585# Temperature
1586#
1587# Important - if your temperature readings are completely whacky
1588# you probably need to change the sensor type.
1589# Adujst and uncomment the appropriate lines below.
1590# The old method (modprobe it87 temp_type=0xXX) is no longer supported.
1591#
1592# 2 = thermistor; 3 = thermal diode; 0 = unused
1593#   set sensor1 3
1594#   set sensor2 3
1595#   set sensor3 3
1596# If a given sensor isn't used, you will probably want to ignore it
1597# (see ignore statement right below).
1598
1599    label temp1       "M/B Temp"
1600    set   temp1_over  40
1601    set   temp1_low   15
1602    label temp2       "CPU Temp"
1603    set   temp2_over  45
1604    set   temp2_low   15
1605#   ignore temp3
1606    label temp3       "Temp3"
1607    set   temp3_over  45
1608    set   temp3_low   15
1609
1610# The A7V8X-X has temperatures inverted, and needs a conversion for
1611# CPU temp. Thanks to Preben Randhol for the formula.
1612#   label temp1       "CPU Temp"
1613#   label temp2       "M/B Temp"
1614#   compute temp1     (-15.096+1.4893*@), (@+15.096)/1.4893
1615
1616# The A7V600 also has temperatures inverted, and needs a different
1617# conversion for CPU temp. Thanks to Dariusz Jaszkowski for the formula.
1618#   label temp1       "CPU Temp"
1619#   label temp2       "M/B Temp"
1620#   compute temp1     (@+128)/3, (3*@-128)
1621
1622# Fans
1623    set fan1_min 0
1624    set fan2_min 3000
1625#   ignore fan3
1626    set fan3_min 3000
1627
1628# The following is for the Inside Technologies 786LCD which uses either a
1629# IT8705F or a SIS950 for monitoring with the SIS630.
1630# You will need to load the it87 module as follows to select the correct
1631# temperature sensor type.
1632# modprobe it87 temp_type=0x31
1633# The sensors-detect program reports lm78 and a sis5595 and lists the it87 as
1634# a misdetect.  Don't do the modprobe for the lm78 or sis5595 as suggested.
1635#
1636# delete or comment out above it87 section and uncomment the following.
1637#chip "it87-*"
1638#    label in0 "VCore 1"
1639#    label in1 "VCore 2"
1640#    label in2 "+3.3V"
1641#    label in3 "+5V"
1642#    label in4 "+12V"
1643#    label in5 "3.3 Stdby"
1644#    label in6 "-12V"
1645#    label in7 "Stdby"
1646#    label in8 "VBat"
1647    # in0 will depend on your processor VID value, set to voltage specified in
1648    # bios setup screen
1649#    set in0_min 1.7 * 0.95
1650#    set in0_max 1.7 * 1.05
1651#    set in1_min 2.4
1652#    set in1_max 2.6
1653#    set in2_min 3.3 * 0.95
1654#    set in2_max 3.3 * 1.05
1655#    set in3_min 5.0 * 0.95
1656#    set in3_max 5.0 * 1.05
1657    # +- 12V are very poor tolerance on this board. Verified with voltmeter
1658#    set in4_min 12 * 0.90
1659#    set in4_max 12 * 1.10
1660#    set in5_min 3.3 * 0.95
1661#    set in5_max 3.3 * 1.05
1662#    set in6_max -12 * 0.90
1663#    set in6_min -12 * 1.10
1664#    set in7_min 5 * 0.95
1665#    set in7_max 5 * 1.05
1666    # vid not monitored by IT8705F
1667#    ignore  vid
1668
1669#    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1670#    compute in4 ((30/10) +1)*@  , @/((30/10) +1)
1671#    compute in6 (1+232/56)*@ - 4.096*232/56, (@ + 4.096*232/56)/(1+232/56)
1672#    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1673    # Temperature
1674#    label temp1       "CPU Temp"
1675#    ignore temp2
1676#    ignore temp3
1677    # Fans
1678#    set fan1_min 3000
1679#    ignore fan2
1680#    ignore fan3
1681
1682
1683chip "fscpos-*"
1684# Fujitsu-Siemens Poseidon chip
1685
1686# Temperature
1687
1688    label temp1       "Temp1/CPU"
1689    label temp2       "Temp2/MB"
1690    label temp3       "Temp3/AUX"
1691
1692# Fans
1693
1694    label fan1        "Fan1"
1695    label fan2        "Fan2"
1696    label fan3        "Fan3"
1697
1698# Voltage
1699
1700    label volt12      "+12V"
1701    label volt5       "+5V"
1702    label voltbatt    "Battery"
1703
1704
1705chip "fscscy-*"
1706# Fujitsu-Siemens Scylla chip
1707
1708# Temperature
1709
1710    label temp1       "Temp1/CPU0"
1711    label temp2       "Temp2/CPU1"
1712    label temp3       "Temp3/MB"
1713    label temp4       "Temp4/AUX"
1714
1715# Fans
1716
1717    label  fan1       "Fan1/CPU0"
1718    label  fan2       "Fan2/CPU0"
1719    label  fan3       "Fan3"
1720    label  fan4       "Fan4"
1721    label  fan5       "Fan5"
1722    label  fan6       "Fan6"
1723
1724# Voltage
1725
1726    label volt12      "+12V"
1727    label volt5       "+5V"
1728    label voltbatt    "+3.3V"
1729
1730
1731chip "fscher-*"
1732# Fujitsu-Siemens Hermes chip
1733
1734# Temperature
1735    label temp1       "Temp1/CPU"
1736    label temp2       "Temp2/MB"
1737    label temp3       "Temp3/AUX"
1738
1739# Fans
1740    label fan1        "Fan1/PS"
1741    label fan2        "Fan2/CPU"
1742    label fan3        "Fan3/AUX"
1743
1744# Voltage
1745    label in0         "+12V"
1746    label in1         "+5V"
1747    label in2         "Battery"
1748
1749# Compute Voltages using mainboard dependant MRO-values
1750# (see doc/chips/fscher)
1751#                           M    R             O               O                  M    R
1752    compute in0       (@ * (49 * 33) / 255) + (0 / 100), (@ - (0 / 100)) * 255 / (49 * 33)
1753    compute in1       (@ * (20 * 33) / 255) + (0 / 100), (@ - (0 / 100)) * 255 / (20 * 33)
1754    compute in2       (@ * (10 * 33) / 255) + (0 / 100), (@ - (0 / 100)) * 255 / (10 * 33)
1755
1756# Read documentation before enabling pwm settings (see doc/chips/fscher)
1757# WARNING: IMPROPER VALUES MAY DAMAGE YOUR SYSTEM DUE TO OVERHEATING!
1758
1759# Allow fans to turn off
1760#    set pwm1          0
1761#    set pwm2          0
1762#    set pwm3          0
1763
1764# Min cooling
1765#    set pwm1          2
1766#    set pwm2          1
1767#    set pwm3          1
1768
1769# Max cooling
1770#    set pwm1          255
1771#    set pwm2          255
1772#    set pwm3          255
1773
1774
1775chip "pcf8591-*"
1776#
1777#    values for the Philips PCF8591 chip
1778#
1779# Analog inputs
1780
1781   ignore ain_conf
1782# Since Linux 2.6, input configuration is set as module parameter,
1783# so the line below is for older kernels only.
1784#  set    ain_conf    0
1785
1786# You may discard ch2 and ch3 if you don't use them (depends on the input
1787# configuration)
1788#  ignore ch2
1789#  ignore ch3
1790
1791   label  ch0         "Chan. 0"
1792   label  ch1         "Chan. 1"
1793   label  ch2         "Chan. 2"
1794   label  ch3         "Chan. 3"
1795
1796# The driver assumes Vref = 2.56V and Agnd = 0V. If it doesn't match
1797# your hardware, you have to use compute lines. The example below is
1798# correct for Vref = 5.0V and Agnd = 0V.
1799#  compute ch0 (@ * 500 / 256), (@ * 256 / 500)
1800#  compute ch1 (@ * 500 / 256), (@ * 256 / 500)
1801#  compute ch2 (@ * 500 / 256), (@ * 256 / 500)
1802#  compute ch3 (@ * 500 / 256), (@ * 256 / 500)
1803
1804# Analog output
1805
1806   ignore aout_enable
1807   set    aout_enable 1
1808   label  aout        "Output"
1809   set    aout        0
1810
1811chip "adm1021-*" "adm1023-*" "max1617-*" "max1617a-*" "thmc10-*" "lm84-*" "gl523sm-*" "mc1066-*"
1812
1813   label temp           "Board"
1814   label remote_temp    "CPU"
1815#   set temp_low                40
1816#   set temp_over               70
1817#   set remote_temp_low         40
1818#   set remote_temp_over        70
1819
1820chip "lm83-*"
1821
1822   label temp1 "M/B Temp"
1823   label temp2 "D1 Temp"
1824   label temp3 "CPU Temp"
1825   label temp4 "D3 Temp"
1826
1827# ignore D1 and/or D3 readings if not used
1828#   ignore temp2
1829#   ignore temp4
1830
1831# change high limits to fit your needs
1832#   set temp1_high 55
1833#   set temp2_high 60
1834#   set temp3_high 65
1835#   set temp4_high 60
1836
1837# change critical limit to fit your needs
1838# only one limit for all four temperatures
1839# should be higher than each of the high limits above
1840#   set tcrit 85
1841
1842
1843chip "max1619-*"
1844
1845   label temp1 "M/B Temp"
1846   label temp2 "CPU Temp"
1847
1848# change high and low limits to fit your needs
1849   set temp2_min   10
1850   set temp2_max   100
1851
1852# change critical limit and hysteresis to fit your needs
1853   set temp2_crit  50
1854   set temp2_hyst  40
1855
1856
1857chip "lm90-*" "adm1032-*" "lm86-*" "max6657-*" "adt7461-*"
1858
1859   label temp1 "M/B Temp"
1860   label temp2 "CPU Temp"
1861   label tcrit1 "M/B Crit"
1862   label tcrit2 "CPU Crit"
1863
1864# change high and low limits to fit your needs
1865#   set temp1_low  10
1866#   set temp1_high 55
1867#   set temp2_low  10
1868#   set temp2_high 66
1869
1870# change critical limits to fit your needs
1871# should be higher than the corresponding high limit above
1872#   set tcrit1 75
1873#   set tcrit2 85
1874
1875# change the hysteresis values (to critical limits) to fit your needs
1876# note #1: hyst2 will be automatically set with the same delta
1877# note #2: the internal register, which stores a single, relative value
1878# for both channels, cannot hold values greater than 31, so the delta
1879# between critical temperatures and respective absolute hysteresis can
1880# never exceed this value
1881#   set hyst1 70
1882
1883chip "lm99-*"
1884
1885   label temp1 "G/C Temp"
1886   label temp2 "GPU Temp"
1887   label tcrit1 "G/C Crit"
1888   label tcrit2 "GPU Crit"
1889
1890# note #1: only the LM99 needs this; for a LM89, comment the compute line
1891# out
1892# note #2: there is no way for us to differenciate between a LM89 and a
1893# LM99; you have to know what you have; LM99 are frequently found on
1894# graphics cards, most notably nVidia ones
1895   compute temp2 @+16, @-16
1896
1897# change high and low limits to fit your needs
1898#   set temp1_low  10
1899#   set temp1_high 90
1900#   set temp2_low  10
1901#   set temp2_high 100
1902
1903# change critical limits to fit your needs
1904# should be higher than the corresponding high limit above
1905#   set tcrit1 100
1906#   set tcrit2 110
1907
1908# change the hysteresis values (to critical limits) to fit your needs
1909# note #1: hyst2 will be automatically set with the same delta
1910# note #2: the internal register, which stores a single, relative value
1911# for both channels, cannot hold values greater than 31, so the delta
1912# between critical temperatures and respective absolute hysteresis can
1913# never exceed this value
1914#   set hyst1 105
1915
1916
1917chip "lm63-*"
1918
1919   label temp1       "M/B Temp"
1920   label temp2       "CPU Temp"
1921   label temp2_crit  "CPU Crit"
1922   label fan1        "CPU Fan"
1923
1924# Change limits to fit your needs. Note that temp2_crit is read-only.
1925#   set temp1_high       50
1926#   set temp2_low        10
1927#   set temp2_high       70
1928#   set temp2_crit_hyst  75
1929#   set fan1_min         2000
1930
1931
1932chip "vt1211-*" "vt8231-*"
1933#
1934# temp1 and in6 are not implemented in vt1211 / vt8231
1935#
1936#                                                       1 for temp, 0 for volt.
1937#       Sensor          Voltage Mode    Temp Mode       config bit
1938#       --------        ------------    ---------       --------------
1939#       Reading 1                       temp3
1940#       UCH1/Reading2   in0             temp2           0x04 (4)
1941#       UCH2            in1             temp4           0x08 (8)
1942#       UCH3            in2             temp5           0x10 (16)
1943#       UCH4            in3             temp6           0x20 (32)
1944#       UCH5            in4             temp7           0x40 (64)
1945#       3.3V            in5
1946#
1947# set uch1-2 to temp mode, uch3-5 to voltage mode
1948#
1949    set config 12
1950    ignore in0
1951    ignore in1
1952    ignore temp5
1953    ignore temp6
1954    ignore temp7
1955
1956# IMPORTANT: If you get "ERROR: Can't get TEMPX data!" from "sensors",
1957# where X is 2, 4, 5, 6 or 7, although you have this UCH set to
1958# temperature, this generally means that this UCH isn't (physically)
1959# used for temperature, so you should add an ignore statement for tempX
1960# and change the "config" value to reflect the fact that this UCH is
1961# probably used for voltage.
1962
1963#   label in0 "unused"
1964#   label in1 "unused"
1965    label in2 "VCore1"
1966    label in3 "+5V"
1967    label in4 "+12V"
1968    label in5 "+3.3V"
1969
1970    label temp2 "MB1 Temp"
1971    label temp3 "Proc Temp"
1972    label temp4 "MB2 Temp"
1973#
1974#   All voltage calculations have the form
1975#       ((@ * 100) - 3) / (K * 95.8), (@ * K * 0.958) + .03
1976#   where K = R2 / (R1 + R2).
1977#   Use the following K values based on input voltage.
1978#   This of course assumes the mobo has the resistors
1979#   recommended by Via in the datasheet.
1980#       Voltage                 K
1981#       VCore                   1.0
1982#       2.5                     0.8333
1983#       3.3 (in5 internal)      0.6296
1984#       3.5 (3.3V ext.)         0.5952
1985#       5.0                     0.4167
1986#       12.0                    0.1754
1987#
1988#   compute in0 ((@ * 100) - 3) / (0.5952 * 95.8), (@ * 0.5952 * 0.958) + .03
1989#   compute in1 ((@ * 100) - 3) / (0.8333 * 95.8), (@ * 0.8333 * 0.958) + .03
1990    compute in2 ((@ * 100) - 3) / (0.5952 * 95.8), (@ * 0.5952 * 0.958) + .03
1991    compute in3 ((@ * 100) - 3) / (0.4167 * 95.8), (@ * 0.4167 * 0.958) + .03
1992    compute in4 ((@ * 100) - 3) / (0.1754 * 95.8), (@ * 0.1754 * 0.958) + .03
1993    compute in5 ((@ * 100) - 3) / (0.6296 * 95.8), (@ * 0.6296 * 0.958) + .03
1994
1995    set vrm 9.1
1996#   set in0_min 2.5 * 0.95
1997#   set in0_max 2.5 * 1.05
1998#   set in1_min 2.5 * 0.95
1999#   set in1_max 2.5 * 1.05
2000    set in2_min vid * 0.97
2001    set in2_max vid * 1.03
2002    set in3_min 5.0 * 0.95
2003    set in3_max 5.0 * 1.05
2004    set in4_min 12.0 * 0.90
2005    set in4_max 12.0 * 1.10
2006    set in5_min 3.3 * 0.95
2007    set in5_max 3.3 * 1.05
2008
2009    compute temp3  (@ - 65) / 0.9686,  (@ * 0.9686) + 65
2010#
2011# thermistor calculations.
2012# 3435 is the thermistor beta.
2013# '^' is the e**x operator; '`' is the ln(x) operator
2014# (valid in library version 1.4.0 / lm_sensors 2.7.1 or higher)
2015# This assumes that the thermistor forms a resistor divider with a resistor
2016# equal to its nominal value @ 25C. If not, the math gets even harder.
2017#
2018    compute temp2  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
2019                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
2020    compute temp4  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
2021                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
2022    compute temp5  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
2023                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
2024    compute temp6  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
2025                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
2026    compute temp7  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
2027                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
2028
2029    set temp2_hyst 40
2030    set temp2_over 45
2031    set temp3_hyst 60
2032    set temp3_over 65
2033    set temp4_hyst 40
2034    set temp4_over 45
2035
2036    set fan1_min 3000
2037    set fan2_min 3000
2038
2039chip "bmc-*"
2040#
2041# You should not need compute lines here, the driver will
2042# do all the conversions.
2043# For label lines, copy from syslog/dmesg when the bmcsensors
2044# module is inserted.
2045#
2046# for example:
2047# label temp1 "Ambient Temp"
2048
2049
2050chip "smsc47m1-*"
2051
2052# SMSC LPC47M10x, LPC47M13x, LPC47M14x and LPC47B27x chips
2053
2054# We don't set the fan mins by default anymore because they may not exist
2055# when using the Linux 2.6 driver (since we respect the original chip
2056# configuration).
2057#    set fan1_min 3000
2058#    set fan2_min 3000
2059
2060
2061#
2062# This example was tested vs. Asus P4S333
2063#
2064chip "asb100-*"
2065    set vrm 9.0
2066
2067    label in0 "VCore 1"
2068    set in0_min vid * 0.95
2069    set in0_max vid * 1.05
2070
2071    label in1 "VCore 2"
2072    ignore in1
2073    set in1_min vid * 0.95
2074    set in1_max vid * 1.05
2075
2076    label in2 "+3.3V"
2077    set in2_min 3.3 * 0.95
2078    set in2_max 3.3 * 1.05
2079
2080    label in3 "+5V"
2081    compute in3 1.68 * @ ,  @ / 1.68
2082    set in3_min 5.0 * 0.95
2083    set in3_max 5.0 * 1.05
2084
2085    label in4 "+12V"
2086    compute in4 3.8 * @ , @ / 3.8
2087    set in4_min 12  * 0.90
2088    set in4_max 12  * 1.10
2089
2090    label in5 "-12V (reserved)"
2091    #ignore in5
2092    compute in5 -@ * 3.97 ,  -@ / 3.97
2093    set in5_max -12 * 0.90
2094    set in5_min -12 * 1.10
2095
2096    label in6 "-5V (reserved)"
2097    #ignore in6
2098    compute in6 -@ * 1.666 , -@ / 1.666
2099    set in6_max -5  * 0.95
2100    set in6_min -5  * 1.05
2101
2102    label temp1 "M/B Temp"
2103    set temp1_over 45
2104    set temp1_hyst 40
2105
2106    label temp2 "CPU Temp (Intel)"
2107    #ignore temp2
2108    set temp2_over 60
2109    set temp2_hyst 50
2110
2111    # PWRTMP connector on P4S333, for external sensor
2112    label temp3 "Power Temp"
2113    #ignore temp3
2114    set temp3_over 45
2115    set temp3_hyst 40
2116
2117
2118    # Used for Athlon diode, ignore for P4S333
2119    label temp4 "CPU Temp (AMD)"
2120    set temp4_over 60
2121    set temp4_hyst 50
2122    #ignore temp4
2123
2124    label fan1 "CPU Fan"
2125    set fan1_div 4
2126    set fan1_min 2000
2127
2128    label fan2 "Chassis Fan"
2129    set fan2_div 2
2130    set fan2_min 4000
2131
2132    label fan3 "Power Fan"
2133    set fan3_div 2
2134    set fan3_min 4000
2135
2136#
2137# Sample configuration for the Intel S845WD1-E
2138# courtesy of Marcus Schopen
2139#
2140chip "lm85c-*" "adm1027-*" "adt7463-*" "lm85-*" "lm85b-*"
2141
2142   set temp1_max 50
2143
2144# Voltage inputs
2145   label in0   "V1.5"      # AGP on Intel S845WD1-E
2146   label in1   "VCore"
2147   label in2   "V3.3"
2148   label in3   "V5"
2149   label in4   "V12"
2150
2151# Temperature inputs
2152   label temp1  "CPU"
2153   label temp2  "Board"
2154   label temp3  "Remote"
2155
2156# Fan inputs
2157   label fan1   "CPU_Fan"
2158#   label fan2   "Fan2"
2159#   label fan3   "Fan3"
2160#   label fan4   "Fan4"
2161
2162# PWM Outputs
2163   label pwm1   "CPU_PWM"
2164   label pwm2   "Fan2_PWM"
2165   label pwm3   "Fan3_PWM"
2166
2167# Voltage scaling is done on-chip.  No 'compute' directive
2168# should be necessary.  If in0 has external scaling set
2169# it here.
2170
2171#   compute in0  @ * 2.5,   @ / 2.5
2172
2173# Adjust fans speeds for actual pulses per rev
2174#   compute fan1  @ * 2,  @ / 2    # 1 pulse per rev
2175#   set fan1_ppr  1                # ADM1027 or ADT7463
2176#   compute fan2  @ / 2,  @ * 2    # 4 pulse per rev
2177#   set fan2_ppr  4                # ADM1027 or ADT7463
2178
2179# Ignore fans you (or your motherboard) don't have
2180#   ignore fan2
2181#   ignore fan3
2182#   ignore fan4
2183
2184# Set VRM version
2185   set vrm  9.1   # Pentium 4
2186
2187# Set voltage limits
2188   set in0_min  1.5 * 0.95
2189   set in0_max  1.5 * 1.05
2190   set in1_min  vid * 0.95
2191   set in1_max  vid * 1.05
2192   set in2_min  3.3 * 0.95
2193   set in2_max  3.3 * 1.05
2194   set in3_min  5.0 * 0.95
2195   set in3_max  5.0 * 1.05
2196   set in4_min   12 * 0.95
2197   set in4_max   12 * 1.05
2198
2199# Set Fan limits
2200   set fan1_min 4000
2201
2202# Set Temp Limits
2203   set temp1_min 10
2204   set temp1_max 50
2205   set temp2_min 10
2206   set temp2_max 35
2207   set temp3_min 10
2208   set temp3_max 35
2209
2210chip "pc87366-*"
2211
2212# Voltage inputs
2213
2214# Set VRM version (default 9.0)
2215#   set vrm     9.0
2216
2217   label in7   "Vsb"
2218   label in8   "Vdd"
2219   label in9   "Vbat"
2220   label in10  "AVdd"
2221
2222   compute in7   @*2, @/2
2223   compute in8   @*2, @/2
2224   compute in10  @*2, @/2
2225
2226# These are the operating conditions as recommended by National
2227# Semiconductor
2228   set in7_min   3.0
2229   set in7_max   3.6
2230   set in8_min   3.0
2231   set in8_max   3.6
2232   set in9_min   2.4
2233   set in9_max   3.6
2234   set in10_min  3.0
2235   set in10_max  3.6
2236
2237# Temperature inputs
2238
2239   label temp1       "CPU0 Temp"
2240   label temp1_crit  "CPU0 Crit"
2241   label temp2       "CPU1 Temp"
2242   label temp2_crit  "CPU1 Crit"
2243   label temp3       "S-IO Temp"
2244   label temp3_crit  "S-IO Crit"
2245
2246   set temp1_min    0
2247   set temp1_max   70
2248   set temp1_crit  85
2249   set temp2_min    0
2250   set temp2_max   70
2251   set temp2_crit  85
2252   set temp3_min    0
2253   set temp3_max   70
2254   set temp3_crit  85
2255
2256# Thermistors
2257# On some systems, thermistors are used instead of thermal diodes.
2258# Note that these are the same pins used differently, so you really
2259# can't have them all on a given system.
2260#   ignore temp1
2261#   ignore temp2
2262   ignore temp4
2263   ignore temp5
2264   ignore temp6
2265
2266# 3435 is the thermistor beta.
2267# This assumes that the thermistor forms a resistor divider with a resistor
2268# equal to its nominal value at 25 degres Celcius. If not, change the values.
2269# We also assume that you have a working in10 (which is forcibly enabled by
2270# default). If not, use 3.3 instead, but you lose accuracy.
2271
2272   compute temp4  3435 / (` (1 / (1 - @ / in10) - 1) + 3435 / 298.15) - 273.15, \
2273                  in10 * (1 - 1 / (1 + (^ (3435 / (273.15 + @) - 3435 / 298.15))))
2274   compute temp5  3435 / (` (1 / (1 - @ / in10) - 1) + 3435 / 298.15) - 273.15, \
2275                  in10 * (1 - 1 / (1 + (^ (3435 / (273.15 + @) - 3435 / 298.15))))
2276   compute temp6  3435 / (` (1 / (1 - @ / in10) - 1) + 3435 / 298.15) - 273.15, \
2277                  in10 * (1 - 1 / (1 + (^ (3435 / (273.15 + @) - 3435 / 298.15))))
2278
2279#   set temp4_min    0
2280#   set temp4_max   70
2281#   set temp4_crit  85
2282#   set temp5_min    0
2283#   set temp5_max   70
2284#   set temp5_crit  85
2285#   set temp6_min    0
2286#   set temp6_max   70
2287#   set temp6_crit  85
2288
2289# Fan inputs
2290
2291# Ignore fans you don't have
2292#   ignore fan2
2293#   ignore fan3
2294
2295   set fan1_min 2000
2296   set fan2_min 2000
2297   set fan3_min 2000
2298
2299
2300chip "adm1030-*"
2301
2302   label temp1 "SYS Temp"
2303   label temp2 "CPU Temp"
2304   label temp1_crit "SYS Crit"
2305   label temp2_crit "CPU Crit"
2306
2307   set temp1_max  60
2308   set temp2_max  70
2309   set temp1_crit 85
2310   set temp2_crit 85
2311
2312   label fan1 "CPU Fan"
2313
2314   set fan1_min 2000
2315
2316
2317chip "adm1031-*"
2318
2319   label temp1 "SYS Temp"
2320   label temp2 "CPU Temp"
2321   label temp3 "AUX Temp"
2322   label temp1_crit "SYS Crit"
2323   label temp2_crit "CPU Crit"
2324   label temp3_crit "AUX Crit"
2325
2326   set temp1_max  60
2327   set temp2_max  70
2328   set temp3_max  70
2329   set temp1_crit 85
2330   set temp2_crit 85
2331   set temp3_crit 85
2332
2333   label fan1 "CPU Fan"
2334   label fan2 "Case Fan"
2335
2336   set fan1_min 2000
2337   set fan2_min 2000
2338
2339
2340chip "w83l785ts-*"
2341
2342   label temp1 "CPU Diode"
2343
2344chip "lm92-*"
2345
2346   label temp "CPU Temp"
2347
2348# Change limits as you see fit
2349#   set temp_low 14
2350#   set temp_high 60
2351#   set temp_crit 72
2352# Hysteresis is computed from critical limit for Linux 2.6,
2353# and from high limit for Linux 2.4. That might change in the future.
2354# Whatever, the same relative hysteresis is used for all of low, high
2355# and critical limits.
2356#   set temp_hyst 70 # Linux 2.6
2357#   set temp_hyst 58 # Linux 2.4
2358
2359
2360# Winbond W83627EHF configuration originally contributed by Leon Moonen
2361# This is for an Asus P5P800.
2362chip "w83627ehf-*"
2363# Fans
2364   label fan1      "Case Fan"
2365   label fan2      "CPU Fan"
2366#  ignore fan3
2367#  ignore fan4
2368   set fan1_min    1200
2369   set fan2_min    1700
2370
2371# Temperatures
2372   label temp1     "Sys Temp"
2373   label temp2     "CPU Temp"
2374#  ignore temp3
2375   set temp1_over  45
2376   set temp1_hyst  40
2377   set temp2_over  45
2378   set temp2_hyst  40
2379
Note: See TracBrowser for help on using the browser.