thermal: Create CONFIG_THERMAL_HWMON=n
A bug in libsensors <= 2.10.6 is exposed when this new hwmon I/F is enabled. Create CONFIG_THERMAL_HWMON=n until some time after libsensors 2.10.7 ships so those users can run the latest kernel. libsensors 3.x is already fixed -- those users can use CONFIG_THERMAL_HWMON=y now. Signed-off-by: Rene Herman <rene.herman@gmail.com> Acked-by: Mark M. Hoffman <mhoffman@lightlink.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
543cf4cb3f
commit
16d7523973
4 changed files with 22 additions and 6 deletions
|
@ -312,3 +312,12 @@ When: 2.6.26
|
|||
Why: Implementation became generic; users should now include
|
||||
linux/semaphore.h instead.
|
||||
Who: Matthew Wilcox <willy@linux.intel.com>
|
||||
|
||||
---------------------------
|
||||
|
||||
What: CONFIG_THERMAL_HWMON
|
||||
When: January 2009
|
||||
Why: This option was introduced just to allow older lm-sensors userspace
|
||||
to keep working over the upgrade to 2.6.26. At the scheduled time of
|
||||
removal fixed lm-sensors (2.x or 3.x) should be readily available.
|
||||
Who: Rene Herman <rene.herman@gmail.com>
|
||||
|
|
|
@ -12,3 +12,12 @@ menuconfig THERMAL
|
|||
cooling devices.
|
||||
All platforms with ACPI thermal support can use this driver.
|
||||
If you want this support, you should say Y or M here.
|
||||
|
||||
config THERMAL_HWMON
|
||||
bool "Hardware monitoring support"
|
||||
depends on HWMON=y || HWMON=THERMAL
|
||||
help
|
||||
The generic thermal sysfs driver's hardware monitoring support
|
||||
requires a 2.10.7/3.0.2 or later lm-sensors userspace.
|
||||
|
||||
Say Y if your user-space is new enough.
|
||||
|
|
|
@ -295,8 +295,8 @@ thermal_cooling_device_trip_point_show(struct device *dev,
|
|||
|
||||
/* Device management */
|
||||
|
||||
#if defined(CONFIG_HWMON) || \
|
||||
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
|
||||
#if defined(CONFIG_THERMAL_HWMON)
|
||||
|
||||
/* hwmon sys I/F */
|
||||
#include <linux/hwmon.h>
|
||||
static LIST_HEAD(thermal_hwmon_list);
|
||||
|
|
|
@ -66,8 +66,7 @@ struct thermal_cooling_device {
|
|||
((long)t-2732+5)/10 : ((long)t-2732-5)/10)
|
||||
#define CELSIUS_TO_KELVIN(t) ((t)*10+2732)
|
||||
|
||||
#if defined(CONFIG_HWMON) || \
|
||||
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
|
||||
#if defined(CONFIG_THERMAL_HWMON)
|
||||
/* thermal zone devices with the same type share one hwmon device */
|
||||
struct thermal_hwmon_device {
|
||||
char type[THERMAL_NAME_LENGTH];
|
||||
|
@ -94,8 +93,7 @@ struct thermal_zone_device {
|
|||
struct idr idr;
|
||||
struct mutex lock; /* protect cooling devices list */
|
||||
struct list_head node;
|
||||
#if defined(CONFIG_HWMON) || \
|
||||
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
|
||||
#if defined(CONFIG_THERMAL_HWMON)
|
||||
struct list_head hwmon_node;
|
||||
struct thermal_hwmon_device *hwmon;
|
||||
struct thermal_hwmon_attr temp_input; /* hwmon sys attr */
|
||||
|
|
Loading…
Reference in a new issue