Эх сурвалжийг харах

Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  dock: bay: Don't call acpi_walk_namespace() when ACPI is disabled.
  ACPI: don't walk tables if ACPI was disabled
  thermal: Create CONFIG_THERMAL_HWMON=n
Linus Torvalds 17 жил өмнө
parent
commit
0acbbee440

+ 9 - 0
Documentation/feature-removal-schedule.txt

@@ -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>

+ 3 - 0
drivers/acpi/bay.c

@@ -377,6 +377,9 @@ static int __init bay_init(void)
 
 
 	INIT_LIST_HEAD(&drive_bays);
 	INIT_LIST_HEAD(&drive_bays);
 
 
+	if (acpi_disabled)
+		return -ENODEV;
+
 	/* look for dockable drive bays */
 	/* look for dockable drive bays */
 	acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
 	acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
 		ACPI_UINT32_MAX, find_bay, &bays, NULL);
 		ACPI_UINT32_MAX, find_bay, &bays, NULL);

+ 3 - 0
drivers/acpi/dock.c

@@ -917,6 +917,9 @@ static int __init dock_init(void)
 
 
 	dock_station = NULL;
 	dock_station = NULL;
 
 
+	if (acpi_disabled)
+		return 0;
+
 	/* look for a dock station */
 	/* look for a dock station */
 	acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
 	acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
 			    ACPI_UINT32_MAX, find_dock, &num, NULL);
 			    ACPI_UINT32_MAX, find_dock, &num, NULL);

+ 3 - 0
drivers/acpi/glue.c

@@ -333,6 +333,9 @@ static int __init acpi_rtc_init(void)
 {
 {
 	struct device *dev = get_rtc_dev();
 	struct device *dev = get_rtc_dev();
 
 
+	if (acpi_disabled)
+		return 0;
+
 	if (dev) {
 	if (dev) {
 		rtc_wake_setup();
 		rtc_wake_setup();
 		rtc_info.wake_on = rtc_wake_on;
 		rtc_info.wake_on = rtc_wake_on;

+ 9 - 0
drivers/thermal/Kconfig

@@ -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.

+ 2 - 2
drivers/thermal/thermal_sys.c

@@ -295,8 +295,8 @@ thermal_cooling_device_trip_point_show(struct device *dev,
 
 
 /* Device management */
 /* Device management */
 
 
-#if defined(CONFIG_HWMON) ||	\
-	(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
+#if defined(CONFIG_THERMAL_HWMON)
+
 /* 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);

+ 2 - 4
include/linux/thermal.h

@@ -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) ||	\
-	(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
+#if defined(CONFIG_THERMAL_HWMON)
 /* 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 {
 	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) ||	\
-	(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
+#if defined(CONFIG_THERMAL_HWMON)
 	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 */