提交 16d75239 编写于 作者: R Rene Herman 提交者: Len Brown

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: NRene Herman <rene.herman@gmail.com>
Acked-by: NMark M. Hoffman <mhoffman@lightlink.com>
Signed-off-by: NLen Brown <len.brown@intel.com>
上级 543cf4cb
...@@ -312,3 +312,12 @@ When: 2.6.26 ...@@ -312,3 +312,12 @@ When: 2.6.26
Why: Implementation became generic; users should now include Why: Implementation became generic; users should now include
linux/semaphore.h instead. linux/semaphore.h instead.
Who: Matthew Wilcox <willy@linux.intel.com> 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 ...@@ -12,3 +12,12 @@ menuconfig THERMAL
cooling devices. cooling devices.
All platforms with ACPI thermal support can use this driver. All platforms with ACPI thermal support can use this driver.
If you want this support, you should say Y or M here. 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, ...@@ -295,8 +295,8 @@ thermal_cooling_device_trip_point_show(struct device *dev,
/* Device management */ /* Device management */
#if defined(CONFIG_HWMON) || \ #if defined(CONFIG_THERMAL_HWMON)
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
/* hwmon sys I/F */ /* hwmon sys I/F */
#include <linux/hwmon.h> #include <linux/hwmon.h>
static LIST_HEAD(thermal_hwmon_list); static LIST_HEAD(thermal_hwmon_list);
......
...@@ -66,8 +66,7 @@ struct thermal_cooling_device { ...@@ -66,8 +66,7 @@ struct thermal_cooling_device {
((long)t-2732+5)/10 : ((long)t-2732-5)/10) ((long)t-2732+5)/10 : ((long)t-2732-5)/10)
#define CELSIUS_TO_KELVIN(t) ((t)*10+2732) #define CELSIUS_TO_KELVIN(t) ((t)*10+2732)
#if defined(CONFIG_HWMON) || \ #if defined(CONFIG_THERMAL_HWMON)
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
/* thermal zone devices with the same type share one hwmon device */ /* thermal zone devices with the same type share one hwmon device */
struct thermal_hwmon_device { struct thermal_hwmon_device {
char type[THERMAL_NAME_LENGTH]; char type[THERMAL_NAME_LENGTH];
...@@ -94,8 +93,7 @@ struct thermal_zone_device { ...@@ -94,8 +93,7 @@ struct thermal_zone_device {
struct idr idr; struct idr idr;
struct mutex lock; /* protect cooling devices list */ struct mutex lock; /* protect cooling devices list */
struct list_head node; struct list_head node;
#if defined(CONFIG_HWMON) || \ #if defined(CONFIG_THERMAL_HWMON)
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
struct list_head hwmon_node; struct list_head hwmon_node;
struct thermal_hwmon_device *hwmon; struct thermal_hwmon_device *hwmon;
struct thermal_hwmon_attr temp_input; /* hwmon sys attr */ struct thermal_hwmon_attr temp_input; /* hwmon sys attr */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册