On Wed, Apr 18, 2007 at 11:48:42PM -0400, Ward Vandewege wrote:
On Thu, Apr 19, 2007 at 05:41:49AM +0200, Peter Stuge wrote:
I guess LB doesn't activate the sensors part of the superio?
That was my guess too.
I've managed to activate the 'environmental controller' (EC) on the gigabyte m57sli-s4's superio.
This now works:
====================================================================== # perl sensors-detect Some Super I/O chips may also contain sensors. We have to write to standard I/O ports to probe them. This is usually safe. Do you want to scan for Super I/O sensors? (YES/no): Probing for Super-I/O at 0x2e/0x2f Trying family `National Semiconductor'... No Trying family `SMSC'... No Trying family `VIA/Winbond/Fintek'... No Trying family `ITE'... Yes Found `ITE IT8716F Super IO Sensors' Success! (address 0x290, driver `it87') ======================================================================
And I get output with the 'sensors' command:
====================================================================== # sensors k8temp-pci-00c3 Adapter: PCI adapter Core0 Temp: +39°C Core1 Temp: +40°C
it8716-isa-0290 Adapter: ISA adapter VCore: +1.30 V (min = +0.00 V, max = +4.08 V) VDDR: +1.94 V (min = +0.00 V, max = +4.08 V) +3.3V: +3.26 V (min = +0.00 V, max = +4.08 V) +5V: +4.87 V (min = +0.00 V, max = +6.85 V) +12V: +12.42 V (min = +0.00 V, max = +16.32 V) in5: +0.54 V (min = +0.00 V, max = +4.08 V) in6: +1.07 V (min = +0.00 V, max = +4.08 V) 5VSB: +4.87 V (min = +0.00 V, max = +6.85 V) VBat: +3.09 V fan1: 1618 RPM (min = 0 RPM) fan2: 1333 RPM (min = 0 RPM) fan3: 0 RPM (min = 0 RPM) temp1: +25°C (low = -1°C, high = +127°C) sensor = thermistor temp2: +128°C (low = -1°C, high = +127°C) sensor = diode temp3: +81°C (low = -1°C, high = +127°C) sensor = thermistor vid: +1.300 V ======================================================================
Most of these values seem ok or at least plausable - fan3 is not connected so that's correct; the value for temp2 and possibly temp3 is not correct.
This is what sensors tells me under the proprietary BIOS: ====================================================================== # sensors k8temp-pci-00c3 Adapter: PCI adapter Core0 Temp: +26°C Core1 Temp: +29°C
it8716-isa-0290 Adapter: ISA adapter VCore: +1.07 V (min = +0.00 V, max = +4.08 V) VDDR: +1.94 V (min = +0.00 V, max = +4.08 V) +3.3V: +3.26 V (min = +0.00 V, max = +4.08 V) +5V: +4.84 V (min = +0.00 V, max = +6.85 V) +12V: +12.42 V (min = +0.00 V, max = +16.32 V) in5: +0.90 V (min = +0.00 V, max = +4.08 V) in6: +0.66 V (min = +0.00 V, max = +4.08 V) 5VSB: +4.84 V (min = +0.00 V, max = +6.85 V) VBat: +3.10 V fan1: 1622 RPM (min = 0 RPM) fan2: 1336 RPM (min = 0 RPM) fan3: 0 RPM (min = 0 RPM) temp1: +25°C (low = +127°C, high = +127°C) sensor = thermistor temp2: -21°C (low = +127°C, high = +127°C) sensor = thermistor temp3: +31°C (low = +127°C, high = +127°C) sensor = diode vid: +1.100 V ======================================================================
Some of these are in agreement with what I get under LinuxBIOS - but the core0/core1 temperatures are more than 10 degrees off (that's in k8temp); Vcore is different; in5 and in6 are different; temp2 is *also* wrong (funny :), and temp3 is different; vid is different.
I guess I'm not quite there yet; this is what's logged when loading the it8716 module:
[ 14.860000] it87: Found IT8716F chip at 0x290, revision 0 [ 14.864000] it87: in3 is VCC (+5V) [ 14.868000] it87: in7 is VCCH (+5V Stand-By) [ 14.872000] i2c_adapter i2c-9191: Driver it87-isa registered [ 14.872000] i2c_adapter i2c-9191: client [it8716] registered with bus id 9191-0290 [ 14.872000] it87-isa 9191-0290: Detected broken BIOS defaults, disabling PWM interface
Funnily enough, if I load the it87 module with the following parameter
modprobe it87 fix_pwm_polarity=1
(which is a fix for some broken proprietary BIOS'es out there ;) it seems to be happier:
[ 797.956000] it87: Found IT8716F chip at 0x290, revision 0 [ 797.960000] it87: in3 is VCC (+5V) [ 797.964000] it87: in7 is VCCH (+5V Stand-By) [ 797.968000] i2c_adapter i2c-9191: Driver it87-isa registered [ 797.968000] i2c_adapter i2c-9191: client [it8716] registered with bus id 9191-0290 [ 797.968000] it87-isa 9191-0290: Reconfiguring PWM to active high polarity
And then I can set the fan speed :)
YH mentioned some initialization might be required for some of these readouts, so I guess I'll go back to the datasheet to see if I can figure something out.
In any case, patch attached to get at least this far.
Thanks, Ward.