On Saturday 09 February 2008 03:31, Ingo Molnar wrote:
> 
> * Ingo Molnar <[EMAIL PROTECTED]> wrote:
> 
> > 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 <[EMAIL PROTECTED]>
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 <[EMAIL PROTECTED]>
---
 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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to