kernel_optimize_test/drivers/hwmon
Fenghua Yu cb84b19474 x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver
This patch adds a hwmon driver for package level thermal control. The driver
dumps package level thermal information through sysfs interface so that upper
level application (e.g. lm_sensor) can retrive the information.

Instead of having the package level hwmon code in coretemp, I write a seperate
driver pkgtemp because:

First, package level thermal sensors include not only sensors for each core,
but also sensors for uncore, memory controller or other components in the
package. Logically it will be clear to have a seperate hwmon driver for package
level hwmon to monitor wider range of sensors in a package. Merging package
thermal driver into core thermal driver doesn't make sense and may mislead.

Secondly, merging the two drivers together may cause coding mess. It's easier
to include various package level sensors info if more sensor information is
implemented. Coretemp code needs to consider a lot of legacy machine cases.
Pkgtemp code only considers platform starting from Sandy Bridge.

On a 1Sx4Cx2T Sandy Bridge platform, lm-sensors dumps the pkgtemp and coretemp:

pkgtemp-isa-0000
Adapter: ISA adapter
physical id 0: +33.0°C  (high = +79.0°C, crit = +99.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Core 0:      +32.0°C  (high = +79.0°C, crit = +99.0°C)

coretemp-isa-0001
Adapter: ISA adapter
Core 1:      +32.0°C  (high = +79.0°C, crit = +99.0°C)

coretemp-isa-0002
Adapter: ISA adapter
Core 2:      +32.0°C  (high = +79.0°C, crit = +99.0°C)

coretemp-isa-0003
Adapter: ISA adapter
Core 3:      +32.0°C  (high = +79.0°C, crit = +99.0°C)

[ hpa: folded v3 patch removing improper global variable "SHOW" ]

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
LKML-Reference: <1280448826-12004-3-git-send-email-fenghua.yu@intel.com>
Reviewed-by: Len Brown <len.brown@intel.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2010-08-03 15:58:07 -07:00
..
ams
abituguru3.c
abituguru.c
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
adm1025.c
adm1026.c
adm1029.c
adm1031.c hwmon: (adm1031) Allow setting update rate 2010-05-27 19:58:46 +02:00
adm9240.c
ads7828.c
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
amc6821.c
applesmc.c hwmon: (applesmc) Add temperature sensor labels to sysfs interface 2010-05-27 19:58:54 +02:00
asb100.c
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 hwmon: (coretemp) Properly label the sensors 2010-07-09 16:22:51 +02:00
dme1737.c hwmon: (dme1737) Add SCH5127 support 2010-05-27 19:59:01 +02:00
ds1621.c
emc1403.c hwmon: EMC1403 thermal sensor support 2010-05-27 19:58:56 +02:00
f71805f.c
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
gl520sm.c
hdaps.c
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) Fix in7 on IT8720F 2010-07-09 16:22:48 +02:00
k8temp.c hwmon: (k8temp) Fix temperature reporting for ASB1 processor revisions 2010-07-09 16:22:47 +02:00
k10temp.c hwmon: (k10temp) Do not blacklist known working CPU models 2010-06-20 09:22:31 +02:00
Kconfig x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver 2010-08-03 15:58:07 -07:00
lis3lv02d_i2c.c
lis3lv02d_spi.c
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
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
lm78.c
lm80.c
lm83.c
lm85.c
lm87.c
lm90.c hwmon: (lm90) Use programmed update rate 2010-05-27 19:58:44 +02:00
lm92.c
lm93.c
lm95241.c i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
ltc4215.c
ltc4245.c hwmon: (ltc4245) Read only one GPIO pin 2010-05-27 19:59:02 +02:00
Makefile x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver 2010-08-03 15:58:07 -07: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
max6650.c
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
pc87427.c
pcf8591.c
pkgtemp.c x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver 2010-08-03 15:58:07 -07:00
s3c-hwmon.c
sht15.c hwmon: (sht15) Properly handle the case CONFIG_REGULATOR=n 2010-04-14 16:14:08 +02:00
sis5595.c
smsc47b397.c
smsc47m1.c
smsc47m192.c
thmc50.c
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
via686a.c
via-cputemp.c
vt1211.c
vt8231.c drivers/hwmon/vt8231.c: fix continuation line formats 2010-03-06 11:26:45 -08:00
w83l785ts.c
w83l786ng.c
w83627ehf.c
w83627hf.c
w83781d.c i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
w83791d.c
w83792d.c
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