Build the generic thermal driver as module "thermal_sys".
Make ACPI thermal, video, processor and fan SELECT the generic
thermal driver, as these drivers rely on it to build the sysfs I/F.
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Len Brown <len.brown@intel.com>
        tristate "Video"
        depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
        depends on INPUT
+       select THERMAL
        help
          This driver implement the ACPI Extensions For Display Adapters
          for integrated graphics devices on motherboard, as specified in
 
 config ACPI_FAN
        tristate "Fan"
+       select THERMAL
        default y
        help
          This driver adds support for ACPI fan devices, allowing user-mode 
 
 config ACPI_PROCESSOR
        tristate "Processor"
+       select THERMAL
        default y
        help
          This driver installs ACPI as the idle handler for Linux, and uses
 
 config INTEL_MENLOW
        tristate "Thermal Management driver for Intel menlow platform"
        depends on ACPI_THERMAL
+       select THERMAL
        depends on X86
        ---help---
          ACPI thermal management enhancement driver on
 
 #
 
 menuconfig THERMAL
-       bool "Generic Thermal sysfs driver"
+       tristate "Generic Thermal sysfs driver"
        help
          Generic Thermal Sysfs driver offers a generic mechanism for
          thermal management. Usually it's made up of one or more thermal
          Each thermal zone contains its own temperature, trip points,
          cooling devices.
          All platforms with ACPI thermal support can use this driver.
-         If you want this support, you should say Y here.
+         If you want this support, you should say Y or M here.
 
 # Makefile for sensor chip drivers.
 #
 
-obj-$(CONFIG_THERMAL)          += thermal.o
+thermal_sys-objs       += thermal.o
+obj-$(CONFIG_THERMAL)          += thermal_sys.o
 
 #include <linux/thermal.h>
 #include <linux/spinlock.h>
 
-MODULE_AUTHOR("Zhang Rui")
+MODULE_AUTHOR("Zhang Rui");
 MODULE_DESCRIPTION("Generic thermal management sysfs support");
 MODULE_LICENSE("GPL");
 
 
                                     struct thermal_cooling_device *);
 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
                                                               *);
 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__ */