January 30th, 2010

[Tips] IT8720 super i/o fixing readout in lm_sensors with 2.6.31 kernel

Computer Hardware & Software, Tips & trick, by brigs.

High per­for­mance sys­tem usu­ally need to be tem­per­a­ture mon­i­tor­ing every­day to pre­vent­ing from hard­ware fail­ure by the over­seed­ing heat trap. In Win­dows mode like Win­dows 7 or Vista, we don’t found­ing hard prob­lem with hard­ware mon­i­tor­ing soft­ware but some­how we must spent extra­time to patch for work­ing expe­ri­ence in open­source oper­at­ing sys­tem like linux does.

Many Linux dis­tri­b­u­tion still using same low level dri­ver mon­i­tor likes lm_sensors for super i/o hard­ware mon­i­tor­ing read­out. We can using 3th party linux dis­tri­b­u­tion pack­age help for GUI (graph­ics user inter­face) win­dows mode if you like some eye­candy in your desk­top. The prob­lem appears in new 2.6.31 ker­nel if we work­ing with it87  dri­ver in lm_sensors configuration

$ mod­probe it87

FATAL: Error insert­ing it87 (/lib/modules/2.6.31.8–0.1-desktop/kernel/drivers/hwmon/it87.ko): Device or resource busy

There is kindly like lit­tle buggy ker­nel ACPI dri­ver con­flict that must reg­is­tered first from BIOS code.

Hard­ware spe­si­fi­ca­tion for test­ing purpose

CPU  Intel Core i5 750 @4Ghz cooled by Cogage Arrow with dual 12cm high per­for­mance fan (push pull)

Moth­er­board Biostar Tpower i55 with ITE 8720 Super I/O chipset
Mem­ory 2x2Gb Team Extreme LV PC15000 CL8
Forsa Geforce 9600GT
WD Black 1Tb
PC Power & Cool­ing 750W

For Linux oper­at­ing sys­tem and test­ing i using Open­suse 11.2 x64 that upgrad­ing with 2.6.31.8–0.1-desktop ker­nel.
… And here a sim­ple step for answer­ing the problem

1. Down­load and install lm_sensors dri­ver and 3th party pro­gram if u like

$ sudo zyp­per in sen­sors gkrellm ksensors

2. Con­fig­ur­ing them with (root console)

$ sensors-detect

Shut­ting down sen­sors: done

# sensors-detect revi­sion 5729 (2009−06−02 15:51:29 +0200)

# Sys­tem: BIOSTAR Group TPower I55

This pro­gram will help you deter­mine which ker­nel mod­ules you need to load to use lm_sensors most effec­tively. It is gen­er­ally safe

and rec­om­mended to accept the default answers to all questions, unless you know what you’re doing.

Some south bridges, CPUs or mem­ory con­trollers con­tain embed­ded sensors.

Do you want to scan for them? This is totally safe. (YES/no): y

Sil­i­con Inte­grated Sys­tems SIS5595…                       No

VIA VT82C686 Inte­grated Sen­sors… No

VIA VT8231 Inte­grated Sen­sors… No

AMD K8 ther­mal sen­sors… No

AMD K10 ther­mal sen­sors… No

Intel Core fam­ily ther­mal sen­sor… No

Intel AMB FB-DIMM ther­mal sen­sor… No

VIA C7 ther­mal and volt­age sen­sors… No

.….

3. Put my sen­sors code if you have the same moth­er­board in /etc/sensors3.conf or you can cus­tom name for dif­fer­ent sen­sors source. You can com­pare your source sen­sors from win­dows based soft­ware mon­i­tor­ing or from the Bios itself

######### BIOSTAR TPOWER I55 V.1.1 IT 8720 SUPER I/O ##########

chip “it87-*” “it8712-*” “it8716-*” “it8718-*” “it8720-*“
label in0 “V-CPU“
label in1 “V-PCH“
label in2 “V-VTT“
label in3 “+5V
label in4 “V-MCH“
label in5 “V-Dimm“
label in6 “V-PLL“
label in7 “+5VSB
label in8 “VBat”

# in0 will depend on your proces­sor VID value, set to volt­age spec­i­fied in

# bios setup screen

#    set in0_min 1.2 * 0.95
#    set in0_max 1.2 * 1.05
#    set in1_min 1.05 * 0.95
#    set in1_max 1.05 * 0.95
#    set in2_min 3.3 * 0.95
#    set in2_max 3.3 * 1.05
#    set in3_min 5.0 * 0.95
#    set in3_max 5.0 * 1.05
# +- 12V are very poor tol­er­ance on this board. Ver­i­fied with volt­meter
#    set in4_min 12 * 0.90
#    set in4_max 12 * 1.10
#    set in5_min 3.3 * 0.95
#    set in5_max 3.3 * 1.05
#    set in6_max –12 * 0.90
#    set in6_min –12 * 1.10
#    set in7_min 5 * 0.95
#    set in7_max 5 * 1.05
# vid not mon­i­tored by IT8705F

ignore  cpu0_vid

com­pute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)

#    com­pute in4 ((30÷10) +1)*@  , @/((30/10) +1)
#    com­pute in6 (1+232/56)*@ — 4.096×232÷56, (@ + 4.096×232÷56)÷(1+232÷56)
com­pute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)

# Tem­per­a­ture

ignore temp1
label temp2 “Sys­tem Temp“
label temp3 “CPU Temp”

# Fans

# The CPU fan can be any of fan1, fan2 or fan3 — it’s moth­er­board
# depen­dent. Same for the case fan.

label  fan1 “CPU Fan“
label  fan2 “Sys­tem Fan1“
label  fan3 “Sys­tem Fan2“
#   set fan1_min 2000
#   set fan2_min 2000

And here sensors3.conf for w83627ehf and w83l786ng for J&W P45D2 ultra moth­er­board. You don’t have to fix ACPI boot for win­bond base I/O chip (ignore step 4)

# Win­bond W83627EHF con­fig­u­ra­tion by brigs lab’s

# This is for an J&W P45D2 Ultra
chip “w83627ehf-*” “w83627dhg-*”
label in0 “VCore”
label in1 “Vdimm”
label in2 “AVCC
label in3 “+3.3V
label in4 “VMCH
label in5 “VICH
label in6 “VTT
label in7 “VSB
label in8 “VBAT
# The W83627DHG has no in9, uncom­ment the fol­low­ing line
ignore in9
# Vdimm read­out in1
com­pute in1 @*(1+(10/10)),  @/(1+(10/10))
# com­pute in6 @*(1+(22/10)),  @/(1+(22/10))
set in0_min   1.25×0.75
set in0_max   1.25×1.25
set in1_min   1.8×0.9
set in1_max   1.8×1.5
#    set in2_min   3.3×0.95
#    set in2_max   3.3×1.05
set in3_min   3.3×0.95
set in3_max   3.3×1.05
set in4_min   1.1×0.95
set in4_max   1.1×1.25
set in5_min   1.5×0.95
set in5_max   1.5×1.1
set in6_min   1.2×0.95
set in6_max   1.2×1.1
set in7_min   3.3×0.95
set in7_max   3.3×1.05
set in8_min   3.0×0.95
set in8_max   3.0×1.05
# Fans
label fan1      “Case Fan”
label fan2      “CPU Fan”
label fan3      “Aux Fan”
ignore fan5
ignore fan4
#  set fan1_min    1200
#  set fan2_min    1700
# Tem­per­a­tures
label temp1     “Sys Temp”
label temp2     “CPU Temp”
label temp3     “AUX Temp”
#  ignore temp3
#  set temp1_over  45
#  set temp1_hyst  40
#  set temp2_over  45
#  set temp2_hyst  40
chip “w83l786ng-*”
label in0 “+5V
label in1 “+12V
ignore in2
ignore fan1
ignore fan2
ignore temp1
ignore temp2
com­pute in0 @*(1+(36.5/10)),  @/(1+(36.5/10))
com­pute in1 @*(1+(61.5/10)),  @/(1+(61.5/10))
set in0_min   5.0×0.95
set in0_max   5.0×1.05
set in1_min   12×0.95
set in1_max   12×1.05

4. Fix­ing ACPI boot prob­lem with add lines in ker­nel boot option menu.1st and don’t for­get to put lm_sensors dae­mon in startup

acpi_enforce_resources=lax

5. Now you can test your sys­tem sen­sor mon­i­tor­ing in your con­sole, like i said above you can adding some flavour for bet­ter look­ing in your desktop.

You can use for your desktop eyecandy

You can use for your desk­top eyecandy

Back Top

Responses to “[Tips] IT8720 super i/o fixing readout in lm_sensors with 2.6.31 kernel”

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Back Top