Discussion:
[lm-sensors] Temperature reading too high for it87
Klaus Dahlke
2012-10-01 20:56:56 UTC
Permalink
Dear all,
I just put together a new PC with the following components:
mainboard: Gigabyte GA-A75M-UD2H, newest BIOS (beta)
CPU: AMD A8-3850 APU

Using lm_sensors, one temperature of the APU via it87 is shown far too high. The BIOS/PC Health Status (after reboot) reports basically 34?C and 34?C which were also the usual temparatures at my old PC when just surfing or doing some office stuff. But for teh new PC lm_sensors shows now for the CPU a temperature of 59?C which is about the sum of the first temperature and the temperature in the case/housing (case has an own thermocouple). It is the same behaviour with the kernel module as well as the driver from your download page.

I would be happy if you could investigate a bit further to get also a correct temperature reading.

Thanks,
Klaus

Here some further details:

mb40 etc # uname -a
Linux mb40 3.4.9-gentoo #4 SMP Sun Sep 30 16:57:03 CEST 2012 x86_64 AMD A8-3850 APU with Radeon(tm) HD Graphics AuthenticAMD GNU/Linux

Here is the relevant output of 'sensor-detect':

Do you want to probe the I2C/SMBus adapters now? (YES/no):
Using driver `i2c-piix4' for device 0000:00:14.0: AMD Hudson-2 SMBus

Next adapter: SMBus PIIX4 adapter at 0b00 (i2c-0)
Do you want to scan it? (yes/NO/selectively): yes
Client found at address 0x52
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Client found at address 0x53
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)

Now follows a summary of the probes I have just done.
Just press ENTER to continue:

Driver `it87':
* ISA bus, address 0x228
Chip `ITE IT8720F Super IO Sensors' (confidence: 9)

Driver `k10temp' (autoloaded):
* Chip `AMD Family 12h and 14h thermal sensors' (confidence: 9)



sensor3.conf for it87 is
chip "it87-*" "it8712-*" "it8716-*" "it8718-*" "it8720-*"

set temp1_type 4
set temp2_type 4
set temp3_type 4
label in8 "Vbat"



output for 'sensors'
mb40 sbin # sensors -v
sensors version 3.3.2 with libsensors version 3.3.2


$ sensors
k10temp-pci-00c3
Adapter: PCI adapter
temp1: +3.8?C (high = +70.0?C)

it8720-isa-0228
Adapter: ISA adapter
in0: +1.02 V (min = +0.00 V, max = +4.08 V)
in1: +1.49 V (min = +0.00 V, max = +4.08 V)
in2: +3.34 V (min = +0.00 V, max = +4.08 V)
+5V: +3.02 V (min = +0.00 V, max = +4.08 V)
in4: +3.09 V (min = +0.00 V, max = +4.08 V)
in5: +2.13 V (min = +0.00 V, max = +4.08 V)
in6: +2.13 V (min = +0.00 V, max = +4.08 V)
5VSB: +2.99 V (min = +0.00 V, max = +4.08 V)
Vbat: +3.07 V
fan1: 1115 RPM (min = 10 RPM)
fan2: 1147 RPM (min = 0 RPM)
fan3: 0 RPM (min = 0 RPM)
temp1: +34.0?C (low = +127.0?C, high = +127.0?C) sensor = thermistor
temp2: +59.0?C (low = +127.0?C, high = +127.0?C) sensor = thermistor
temp3: +13.0?C (low = +127.0?C, high = +70.0?C) sensor = thermistor
cpu0_vid: +0.000 V
Guenter Roeck
2012-10-05 02:55:21 UTC
Permalink
Post by Klaus Dahlke
Dear all,
mainboard: Gigabyte GA-A75M-UD2H, newest BIOS (beta)
CPU: AMD A8-3850 APU
Using lm_sensors, one temperature of the APU via it87 is shown far too high. The BIOS/PC Health Status (after reboot) reports basically 34?C and 34?C which were also the usual temparatures at my old PC when just surfing or doing some office stuff. But for teh new PC lm_sensors shows now for the CPU a temperature of 59?C which is about the sum of the first temperature and the temperature in the case/housing (case has an own thermocouple). It is the same behaviour with the kernel module as well as the driver from your download page.
I would be happy if you could investigate a bit further to get also a correct temperature reading.
$ sensors
k10temp-pci-00c3
Adapter: PCI adapter
temp1: +3.8?C (high = +70.0?C)
This is reported by the CPU and a relative value. A number of people have reported
similar low values. I start suspecting that it may have to do with the fact
that thermal control is disabled on your board (which we know because there is
no critical temperature reported), and that the reported temperature is possibly
relative to the critical temperature, which in turn may be initialized to a much-too-low
value (eg 70 degrees C instead of around 100 degrees C). But someone from AMD would have
to confirm that, and/or someone with an AMD board would have to play with it to
confirm if that is really the case.
Post by Klaus Dahlke
it8720-isa-0228
Adapter: ISA adapter
in0: +1.02 V (min = +0.00 V, max = +4.08 V)
in1: +1.49 V (min = +0.00 V, max = +4.08 V)
in2: +3.34 V (min = +0.00 V, max = +4.08 V)
+5V: +3.02 V (min = +0.00 V, max = +4.08 V)
in4: +3.09 V (min = +0.00 V, max = +4.08 V)
in5: +2.13 V (min = +0.00 V, max = +4.08 V)
in6: +2.13 V (min = +0.00 V, max = +4.08 V)
5VSB: +2.99 V (min = +0.00 V, max = +4.08 V)
Vbat: +3.07 V
fan1: 1115 RPM (min = 10 RPM)
fan2: 1147 RPM (min = 0 RPM)
fan3: 0 RPM (min = 0 RPM)
temp1: +34.0?C (low = +127.0?C, high = +127.0?C) sensor = thermistor
temp2: +59.0?C (low = +127.0?C, high = +127.0?C) sensor = thermistor
temp3: +13.0?C (low = +127.0?C, high = +70.0?C) sensor = thermistor
Those temperature values are as reported to the chip by the hardware. Depending
on the board and the actual sensors, the reported value can differ from the real
temperature. Unfortunately, that is board specific, and compensation would
depend on information from the board vendor. The chip has registers to
compensate for that, but there is no guarantee that those registers are
initialized by the BIOS, and the it87 Linux driver does not support writing them.

On the other side, it may well be possible that _some_ component runs a bit
hotter than others on your board, and that temp2 reports such a temperature.
I see that, for example, with the PCH chip on one of my Intel boards. But unless
you run your computer in a fridge, 13?C is really a bit on the low side ;).

Only idea I have would be to adjust the raw readings in your sensors.conf file
to something you think is reasonable.

Guenter
Klaus Dahlke
2012-10-08 20:37:18 UTC
Permalink
Hi G?nter,
thanks for the comments.

In meanwhile I put some load to the system when compiling a couple of programs. K10temp and temp3 go up then. I operate my PC as dual boot. On Windows 7 the 'speedfan' program reports also ~60?C for temp2 whereby the Gigabyte utility program reports only temp1 and temp3. temp1 is the 'system temperature', temp3 the APU temp. An indication for that is that k10temp and temp3 have 70?C as high warning. In the BIOS I only set the CPU temperature to high=70?C, the system temperature is on 'auto'. Anyhow, as the systems works fine in the moment, I don't mind the weird readings.

Best regards,
Klaus



On Thu, 4 Oct 2012 19:55:21 -0700
Post by Guenter Roeck
Post by Klaus Dahlke
Dear all,
mainboard: Gigabyte GA-A75M-UD2H, newest BIOS (beta)
CPU: AMD A8-3850 APU
Using lm_sensors, one temperature of the APU via it87 is shown far too high. The BIOS/PC Health Status (after reboot) reports basically 34?C and 34?C which were also the usual temparatures at my old PC when just surfing or doing some office stuff. But for teh new PC lm_sensors shows now for the CPU a temperature of 59?C which is about the sum of the first temperature and the temperature in the case/housing (case has an own thermocouple). It is the same behaviour with the kernel module as well as the driver from your download page.
I would be happy if you could investigate a bit further to get also a correct temperature reading.
$ sensors
k10temp-pci-00c3
Adapter: PCI adapter
temp1: +3.8?C (high = +70.0?C)
This is reported by the CPU and a relative value. A number of people have reported
similar low values. I start suspecting that it may have to do with the fact
that thermal control is disabled on your board (which we know because there is
no critical temperature reported), and that the reported temperature is possibly
relative to the critical temperature, which in turn may be initialized to a much-too-low
value (eg 70 degrees C instead of around 100 degrees C). But someone from AMD would have
to confirm that, and/or someone with an AMD board would have to play with it to
confirm if that is really the case.
Post by Klaus Dahlke
it8720-isa-0228
Adapter: ISA adapter
in0: +1.02 V (min = +0.00 V, max = +4.08 V)
in1: +1.49 V (min = +0.00 V, max = +4.08 V)
in2: +3.34 V (min = +0.00 V, max = +4.08 V)
+5V: +3.02 V (min = +0.00 V, max = +4.08 V)
in4: +3.09 V (min = +0.00 V, max = +4.08 V)
in5: +2.13 V (min = +0.00 V, max = +4.08 V)
in6: +2.13 V (min = +0.00 V, max = +4.08 V)
5VSB: +2.99 V (min = +0.00 V, max = +4.08 V)
Vbat: +3.07 V
fan1: 1115 RPM (min = 10 RPM)
fan2: 1147 RPM (min = 0 RPM)
fan3: 0 RPM (min = 0 RPM)
temp1: +34.0?C (low = +127.0?C, high = +127.0?C) sensor = thermistor
temp2: +59.0?C (low = +127.0?C, high = +127.0?C) sensor = thermistor
temp3: +13.0?C (low = +127.0?C, high = +70.0?C) sensor = thermistor
Those temperature values are as reported to the chip by the hardware. Depending
on the board and the actual sensors, the reported value can differ from the real
temperature. Unfortunately, that is board specific, and compensation would
depend on information from the board vendor. The chip has registers to
compensate for that, but there is no guarantee that those registers are
initialized by the BIOS, and the it87 Linux driver does not support writing them.
On the other side, it may well be possible that _some_ component runs a bit
hotter than others on your board, and that temp2 reports such a temperature.
I see that, for example, with the PCH chip on one of my Intel boards. But unless
you run your computer in a fridge, 13?C is really a bit on the low side ;).
Only idea I have would be to adjust the raw readings in your sensors.conf file
to something you think is reasonable.
Guenter
Sadin Selmani
2012-11-03 04:13:33 UTC
Permalink
Sorry if I'm posting in the wrong mail-list, but I have a similar problem worth
noting.

As for my temp sensing, I think the senors are cheating. It simply reflects CPU
usage and scales it to a temp. Either that, or my CPU is running SUPER COOL,
which is highly unlikely. See for yourself.

Loading Image...
Loading Image...

These Screenshots were taken during a small battery of burn-in tests which ran
all 4 of my cores at 100%. See
[URL="http://www.roylongbottom.org.uk/linux%20burn-
in%20apps.htm#anchorStart"]this[/URL] for more details.
For comparison, BIOS looks WAY more realistic (and scary).

Loading Image...

After reading [URL="http://www.mjmwired.net/kernel/Documentation/hwmon/k10temp"]
this, it almost appears like the KERNEL driver "k10temp" is the culprit since it
kind of explains what's happening with temp sensing. Time to file a bug?
Loading...