Jean Delvare
cd4de21f7e
hwmon: (k8temp) Bypass core swapping on single-core processors
...
Commit a2e066bba2 introduced core
swapping for CPU models 64 and later. I recently had a report about
a Sempron 3200+, model 95, for which this patch broke temperature
reading. It happens that this is a single-core processor, so the
effect of the swapping was to read a temperature value for a core
that didn't exist, leading to an incorrect value (-49 degrees C.)
Disabling core swapping on singe-core processors should fix this.
Additional comment from Andreas:
The BKDG says
Thermal Sensor Core Select (ThermSenseCoreSel)-Bit 2. This bit
selects the CPU whose temperature is reported in the CurTemp
field. This bit only applies to dual core processors. For
single core processors CPU0 Thermal Sensor is always selected.
k8temp_probe() correctly detected that SEL_CORE can't be used on single
core CPU. Thus k8temp did never update the temperature values stored
in temp[1][x] and -49 degrees was reported. For single core CPUs we
must use the values read into temp[0][x].
Signed-off-by: Jean Delvare <[email protected] >
Tested-by: Rick Moritz <[email protected] >
Acked-by: Andreas Herrmann <[email protected] >
Cc: [email protected]
2010-06-20 09:22:32 +02:00
..
ams
macintosh/hwmon/ams: Fix device removal sequence
2010-02-03 17:39:49 +11:00
abituguru.c
hwmon: Include <linux/io.h> instead of <asm/io.h>
2009-09-15 17:18:13 +02:00
abituguru3.c
hwmon: Include <linux/io.h> instead of <asm/io.h>
2009-09-15 17:18:13 +02:00
ad7414.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
ad7418.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
adcxx.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
adm1021.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
adm1025.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
adm1026.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
adm1029.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
adm1031.c
hwmon: (adm1031) Allow setting update rate
2010-05-27 19:58:46 +02:00
adm9240.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
ads7828.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
ads7871.c
hwmon: add TI ads7871 a/d converter driver
2010-05-25 08:07:07 -07:00
adt7411.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
adt7462.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
adt7470.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
adt7475.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
amc6821.c
hwmon: (amc6821) Double unlock bug
2010-01-25 15:00:49 +01:00
applesmc.c
hwmon: (applesmc) Add temperature sensor labels to sysfs interface
2010-05-27 19:58:54 +02:00
asb100.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
asc7621.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
asus_atk0110.c
hwmon: (asus_atk0110) Don't load if ACPI resources aren't enforced
2010-05-27 19:58:37 +02:00
atxp1.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
coretemp.c
drivers/hwmon/coretemp.c: get TjMax value from MSR
2010-05-25 08:07:07 -07:00
dme1737.c
hwmon: (dme1737) Add SCH5127 support
2010-05-27 19:59:01 +02:00
ds1621.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
emc1403.c
hwmon: EMC1403 thermal sensor support
2010-05-27 19:58:56 +02:00
f71805f.c
hwmon: Include <linux/io.h> instead of <asm/io.h>
2009-09-15 17:18:13 +02:00
f71882fg.c
hwmon: (f71882fg) Acquire I/O regions while we're working with them
2010-05-27 19:58:43 +02:00
f75375s.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
fschmd.c
drivers: Push down BKL into various drivers
2010-05-17 05:27:41 +02:00
g760a.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
gl518sm.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
gl520sm.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
hdaps.c
hwmon: Include <linux/io.h> instead of <asm/io.h>
2009-09-15 17:18:13 +02:00
hp_accel.c
hp_accel: fix race in device removal
2010-05-11 17:33:42 -07:00
hwmon-vid.c
hwmon.c
i5k_amb.c
hwmon: (i5k_amb) Fix sysfs attribute for lockdep
2010-06-20 09:22:31 +02:00
ibmaem.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
ibmpex.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
it87.c
hwmon: (it87) Invalidate cache on temperature sensor change
2010-04-14 16:14:10 +02:00
k8temp.c
hwmon: (k8temp) Bypass core swapping on single-core processors
2010-06-20 09:22:32 +02:00
k10temp.c
hwmon: (k10temp) Do not blacklist known working CPU models
2010-06-20 09:22:31 +02:00
Kconfig
hwmon: (lm75) Add support for the Texas Instruments TMP105
2010-05-27 19:59:03 +02:00
lis3lv02d.c
lis3: setup poll interval limits
2010-05-25 08:07:07 -07:00
lis3lv02d.h
lis3: interrupt handlers for 8bit wakeup and click events
2010-05-25 08:07:07 -07:00
lis3lv02d_i2c.c
hwmon: I2C bus support for lis3lv02d and variant accelerometer chips
2009-12-17 15:45:30 -08:00
lis3lv02d_spi.c
lis3lv02d_spi: module unload didn't remove sysfs entry
2009-10-08 07:36:40 -07:00
lm63.c
hwmon: (lm63) Add basic support for LM64
2010-05-27 19:58:38 +02:00
lm70.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
lm73.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
lm75.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
lm75.h
lm77.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
lm78.c
hwmon: (lm78) Request I/O ports individually for probing
2010-02-05 19:58:36 +01:00
lm80.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
lm83.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
lm85.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
lm87.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
lm90.c
hwmon: (lm90) Use programmed update rate
2010-05-27 19:58:44 +02:00
lm92.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
lm93.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
lm95241.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
ltc4215.c
ltc4215/ltc4245: Discard obsolete detect methods
2009-10-04 22:53:42 +02:00
ltc4245.c
hwmon: (ltc4245) Read only one GPIO pin
2010-05-27 19:59:02 +02:00
Makefile
hwmon: Driver for TI TMP102 temperature sensor
2010-05-27 19:58:56 +02:00
max1111.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
max1619.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
max6650.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
mc13783-adc.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
pc87360.c
hwmon: Include <linux/io.h> instead of <asm/io.h>
2009-09-15 17:18:13 +02:00
pc87427.c
hwmon: Use resource_size
2009-09-15 17:18:13 +02:00
pcf8591.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
s3c-hwmon.c
hwmon: (s3c-hwmon) Fix build error
2009-12-09 20:35:45 +01:00
sht15.c
hwmon: (sht15) Properly handle the case CONFIG_REGULATOR=n
2010-04-14 16:14:08 +02:00
sis5595.c
hwmon: Make PCI device ids constant
2010-01-10 20:52:35 +01:00
smsc47b397.c
hwmon: Include <linux/io.h> instead of <asm/io.h>
2009-09-15 17:18:13 +02:00
smsc47m1.c
hwmon: (smsc47m1) Fix section mismatch
2010-01-25 15:00:48 +01:00
smsc47m192.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
thmc50.c
i2c: Drop I2C_CLIENT_INSMOD_2 to 8
2009-12-14 21:17:27 +01:00
tmp102.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
tmp401.c
hwmon: (tmp401) Reorganize code to get rid of static forward declarations
2010-05-27 19:58:49 +02:00
tmp421.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
ultra45_env.c
of: Remove duplicate fields from of_platform_driver
2010-05-22 00:10:40 -06:00
via-cputemp.c
hwmon: Add driver for VIA CPU core temperature
2009-12-16 21:38:28 +01:00
via686a.c
hwmon: Make PCI device ids constant
2010-01-10 20:52:35 +01:00
vt1211.c
hwmon: Use resource_size
2009-09-15 17:18:13 +02:00
vt8231.c
drivers/hwmon/vt8231.c: fix continuation line formats
2010-03-06 11:26:45 -08:00
w83l785ts.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
w83l786ng.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
w83627ehf.c
hwmon: w83627ehf updates
2009-12-15 08:53:35 -08:00
w83627hf.c
hwmon: (w83627hf) Fix for "No such device"
2009-12-16 21:38:29 +01:00
w83781d.c
i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
2010-06-03 11:33:58 +02:00
w83791d.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
w83792d.c
i2c: Drop I2C_CLIENT_INSMOD_1
2009-12-14 21:17:26 +01:00
w83793.c
drivers: Push down BKL into various drivers
2010-05-17 05:27:41 +02:00
wm831x-hwmon.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
wm8350-hwmon.c
hwmon: Add WM835x PMIC hardware monitoring driver
2009-09-17 09:46:51 +02:00