Bug 5981 - it87 chassis fan speed not reported, some values miscalculated
Summary: it87 chassis fan speed not reported, some values miscalculated
Status: REJECTED INVALID
Alias: None
Product: Drivers
Classification: Unclassified
Component: Hardware Monitoring (show other bugs)
Hardware: i386 Linux
: P2 normal
Assignee: Jean Delvare
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-01-30 16:02 UTC by Jan "Yenya" Kasprzak
Modified: 2006-01-31 03:30 UTC (History)
0 users

See Also:
Kernel Version: 2.6.13, 2.6.15.1
Subsystem:
Regression: ---
Bisected commit-id:


Attachments

Description Jan "Yenya" Kasprzak 2006-01-30 16:02:16 UTC
Most recent kernel where this bug did not occur: 2.6.15.1
Distribution: Fedora Core 4
Hardware Environment: Asus A7V600 mainboard, Athlon XP 3000+
Software Environment:
Problem Description:
The A7V600 board is equipped with an it8712 sensors chip. There are some
problems with this chip wrt. the kernel driver:
- on my box, only CPU fan speed is displayed (even though I have a chassis fan
as well, and its RPM is displayed correctly by a hardware health menu in the
BIOS setup).
- some other values displayed by sensors(1) command are wrong (altough this is
probably not a kernel issue, but a /etc/sensors.conf problem - should I report
this one elsewhere?). See below for the actual values.


Steps to reproduce:
# pwd
/sys/devices/platform/i2c-1/1-0290
# for i in *; do echo -n $i:\       ; cat $i; done
alarms: 28438
bus:    cat: bus: Is a directory
cpu0_vid:       1200
driver: cat: driver: Is a directory
fan1_div:       2
fan1_input:     4017
fan1_min:       0
fan2_div:       2
fan2_input:     0
fan2_min:       3000
fan3_div:       2
fan3_input:     0
fan3_min:       3000
in0_input:      1744
in0_max:        1568
in0_min:        1424
in1_input:      0
in1_max:        2608
in1_min:        2400
in2_input:      3264
in2_max:        1728
in2_min:        1568
in3_input:      2800
in3_max:        3120
in3_min:        2832
in4_input:      3056
in4_max:        3152
in4_min:        2848
in5_input:      0
in5_max:        2080
in5_min:        1920
in6_input:      0
in6_max:        2048
in6_min:        1936
in7_input:      2960
in7_max:        3120
in7_min:        2832
in8_input:      3184
name:   it8712
power:  cat: power: Is a directory
pwm1:   255
pwm1_enable:    0
pwm2:   255
pwm2_enable:    0
pwm3:   255
pwm3_enable:    0
temp1_input:    48000
temp1_max:      52000
temp1_min:      -83000
temp1_type:     2
temp2_input:    44000
temp2_max:      50000
temp2_min:      15000
temp2_type:     2
temp3_input:    -1000
temp3_max:      45000
temp3_min:      15000
temp3_type:     0
vrm:    90
# sensors
it8712-isa-0290
Adapter: ISA adapter
VCore 1:   +1.74 V  (min =  +1.42 V, max =  +1.57 V)   ALARM
VCore 2:   +0.00 V  (min =  +2.40 V, max =  +2.61 V)   ALARM
+3.3V:     +6.53 V  (min =  +3.14 V, max =  +3.46 V)   ALARM
+5V:       +4.70 V  (min =  +4.76 V, max =  +5.24 V)   ALARM
+12V:     +12.22 V  (min = +11.39 V, max = +12.61 V)
-12V:     -27.36 V  (min = -12.63 V, max = -11.41 V)   ALARM
-5V:      -13.64 V  (min =  -5.26 V, max =  -4.77 V)   ALARM
Stdby:     +4.97 V  (min =  +4.76 V, max =  +5.24 V)
VBat:      +3.18 V
fan1:     4017 RPM  (min =    0 RPM, div = 2)
fan2:        0 RPM  (min = 3000 RPM, div = 2)          ALARM
fan3:        0 RPM  (min = 3000 RPM, div = 2)          ALARM
CPU Temp:    +59
Comment 1 Jan "Yenya" Kasprzak 2006-01-30 16:12:02 UTC
I am sorry, the top-most line in the bug report is wrong:

> Most recent kernel where this bug did not occur: 2.6.15.1

- in fact, I have misread this. The bug occurs both in 2.6.13 and 2.6.15.1 (I
may test any other version on request).
Comment 2 Jean Delvare 2006-01-31 00:53:52 UTC
This is a user-space configuration issue, not suitable for this bug tracking 
system.

You should first search in the archives, the A7V600 is a popular model and it 
has been discussed a few times already:
  http://www.google.com/search?q=a7v600&sitesearch=lists.lm-sensors.org

There is also a FAQ which has answers to some of your problems:
  http://www2.lm-sensors.nu/~lm78/cvs/lm_sensors2/doc/lm_sensors-FAQ.html
(See in particular point 4.1.1.)

If you still need help, please post on the lm-sensors mailing list:
  http://lists.lm-sensors.org/mailman/listinfo/lm-sensors
Comment 3 Jan "Yenya" Kasprzak 2006-01-31 02:58:15 UTC
OK, thanks. After setting fan2_div to 8 the chassis fan RPM is readed correctly.
Sorry for the noise.

BTW, it seems that the it87 driver in the lm_sensors distribution supports more
features than the in-kernel one (in particular, it can set fan speed values for
different temperatures, so that the CPU fan can actually slow down when the CPU
is cooler, and speed up when the CPU is busy). Are there any plans to merge this
functionality to the 2.6 kernel?
Comment 4 Jean Delvare 2006-01-31 03:08:55 UTC
You are correct, the Linux 2.4 driver as found in lm_sensors supports 
the "Smart Guardian" feature (automatic fan speed control depending on measured 
temperature), while the Linux 2.6 driver doesn't. There is no immediate plan to 
port this additional feature (nobody is working on it as far as I know), 
although doing so would be obviously welcome.
Comment 5 Jan "Yenya" Kasprzak 2006-01-31 03:20:58 UTC
OK, I will hopefully have some time next week, so I may try to look at it - from
reading the it87.c from lm_sensors.c it does not look difficult (altough some
changes in the user interface would be needed - sysfs tries to stick with "one
value per file" policy, so there has to be a separate file for each fan and each
threshhold.
Comment 6 Jean Delvare 2006-01-31 03:30:47 UTC
True. Additionally, Linux 2.6 hardware monitoring drivers must comply with a 
standard interface as much as possible, see Documentation/hwmon/sysfs-
interface. This may require some additional work.

Also, beware that different revisions of the IT87xxF chips have completely 
different register configurations for the SmartGuardian feature. So, depending 
on your board, the code from the lm_sensors CVS repository may or may not work 
properly. If not, check out the latest IT8712F datasheet available from ITE's 
web site.

Note You need to log in before you can comment on or make changes to this bug.