Hi all, I just noticed that the voltage conversions in via686a have severe rounding issues. And all in all they are artificially complex, and wrong. Two hints confirm my suspicions: 1* In the source code, the original author states: // These get us close, but they don't completely agree with what my BIOS // says- they are all a bit low. But, it all we have to go on... 2* In etc/sensors.conf.eg, I found: # For at least one Tyan S1598, the following corrections make the sensors # readings more in-line with the BIOS readings on boot. Try these, and # adjust as necessary. #compute "2.0V" 1.02*@ , @/1.02 #compute "3.3V" 1.02*@ , @/1.02 #compute "5.0V" 1.009*@ , @/1.009 #compute "12V" 1.04*@ , @/1.04 So this would tend to confirm that the proposed change would convert the register values more accurately. Patch against CVS attached. A similar patch for 2.6 is available here: http://delvare.nerim.net/i2c/linux-2.6/linux-2.6.5-mm3-i2c-via686a-2-in-values.diff It has to be applied on top of (at least): http://delvare.nerim.net/i2c/linux-2.6/linux-2.6.5-mm3-i2c-via686a-1-init.diff I tested both on my own VIA686A chip, but since it's not used on my motherboard, I have no real values to confirm that the change is correct. I just could see what O expected, i.e. the (bogus) readings went about 2% up. Lennard Klein tested on a real chip (2.6 kernel) and also observed slightly greater readings. Looks OK, although he didn't reboot the system to compare with the BIOS (yet). If anyone has a working VIA686A, please test and comment. Thanks. -- Jean Delvare http://www.ensicaen.ismra.fr/~delvare/ -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: lm_sensors2-CVS-via686a-in-values.diff Url: http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20040412/b8adb833/attachment.pl