Thread (1 message) 1 message, 1 author, 2008-02-09

Re: [GIT PATCH] ACPI patches for 2.6.25-rc0

From: Len Brown <lenb@kernel.org>
Date: 2008-02-09 09:04:32
Subsystem: the rest, thermal · Maintainers: Linus Torvalds, Rafael J. Wysocki, Daniel Lezcano

Possibly related (same subject, not in this thread)

On Saturday 09 February 2008 03:31, Ingo Molnar wrote:
* Ingo Molnar [off-list ref] wrote:
quoted
that fixed the build failure on 32-bit, but there's another one i just 
hit on 64-bit x86:

drivers/built-in.o: In function `acpi_video_bus_put_devices':
video.c:(.text+0x5540d): undefined reference to `thermal_cooling_device_unregister'
drivers/built-in.o: In function `acpi_video_bus_add':
video.c:(.text+0x56994): undefined reference to `thermal_cooling_device_register'

which is due to:

  commit 702ed512de9c8a67a69a981c73b7337c2131f198
  Date:   Thu Jan 17 15:51:22 2008 +0800

      ACPI: register ACPI Video LCD as generic thermal cooling device

the commit couldnt be reverted cleanly, i've done a manual fixup of 
the revert (find the patch below).
(config for that build breakage attached, in case you were wondering 
about how to trigger it.)
From a0dd25b2c83de4623487ca4de9c1d962b552ca0f Mon Sep 17 00:00:00 2001
From: Len Brown <redacted>
Date: Sat, 9 Feb 2008 04:01:48 -0500
Subject: [PATCH] ACPI: thermal: buildfix for CONFIG_THERMAL=n
Organization: Intel Open Source Technology Center

This fixes the build, but acpi_fan_add() still needs
to be updated to handle thermal_cooling_device_register()
returning NULL as a non-fatal condition.

Signed-off-by: Len Brown <redacted>
---
 include/linux/thermal.h |   23 ++++++++++++++++++++---
 1 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/include/linux/thermal.h b/include/linux/thermal.h
index bba7712..818ca1c 100644
--- a/include/linux/thermal.h
+++ b/include/linux/thermal.h
@@ -79,7 +79,9 @@ struct thermal_zone_device {
 };
 
 struct thermal_zone_device *thermal_zone_device_register(char *, int, void *,
-					struct thermal_zone_device_ops *);
+							 struct
+							 thermal_zone_device_ops
+							 *);
 void thermal_zone_device_unregister(struct thermal_zone_device *);
 
 int thermal_zone_bind_cooling_device(struct thermal_zone_device *, int,
@@ -87,8 +89,23 @@ int thermal_zone_bind_cooling_device(struct thermal_zone_device *, int,
 int thermal_zone_unbind_cooling_device(struct thermal_zone_device *, int,
 				       struct thermal_cooling_device *);
 
+#ifdef	CONFIG_THERMAL
 struct thermal_cooling_device *thermal_cooling_device_register(char *, void *,
-					struct thermal_cooling_device_ops *);
+							       struct
+							       thermal_cooling_device_ops
+							       *);
 void thermal_cooling_device_unregister(struct thermal_cooling_device *);
+#else
+static inline struct thermal_cooling_device
+*thermal_cooling_device_register(char *c, void *v,
+				 struct thermal_cooling_device_ops *t)
+{
+	return NULL;
+}
+static inline
+    void thermal_cooling_device_unregister(struct thermal_cooling_device *t)
+{
+};
+#endif
 
-#endif				/* __THERMAL_H__ */
+#endif /* __THERMAL_H__ */
-- 
1.5.4.34.g053d9
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help