All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] thermal: cpu cooling: allow module builds
@ 2012-11-14 15:23 Eduardo Valentin
  2012-11-14 16:21 ` [linux-pm] " R, Durgadoss
  2012-11-21  9:01 ` Zhang, Rui
  0 siblings, 2 replies; 3+ messages in thread
From: Eduardo Valentin @ 2012-11-14 15:23 UTC (permalink / raw)
  To: amit.kachhap; +Cc: rui.zhang, linux-acpi, linux-pm, eballetbo, Eduardo Valentin

As thermal drivers can be built as modules and also
the thermal framework itself, building cpu cooling
only as built-in can cause linking errors. For instance:
* Generic Thermal sysfs driver
*
Generic Thermal sysfs driver (THERMAL) [M/n/y/?] m
  generic cpu cooling support (CPU_THERMAL) [N/y/?] (NEW) y

with the following drive:
CONFIG_OMAP_BANDGAP=m

generates:
ERROR: "cpufreq_cooling_unregister" [drivers/staging/omap-thermal/omap-thermal.ko] undefined!
ERROR: "cpufreq_cooling_register" [drivers/staging/omap-thermal/omap-thermal.ko] undefined!

This patch changes cpu cooling driver to allow it
to be built as module.

Reported-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com>
---
 drivers/thermal/Kconfig     |    2 +-
 include/linux/cpu_cooling.h |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
index e1cb6bd..3b03c8b 100644
--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -20,7 +20,7 @@ config THERMAL_HWMON
 	default y
 
 config CPU_THERMAL
-	bool "generic cpu cooling support"
+	tristate "generic cpu cooling support"
 	depends on THERMAL && CPU_FREQ
 	select CPU_FREQ_TABLE
 	help
diff --git a/include/linux/cpu_cooling.h b/include/linux/cpu_cooling.h
index b30cc79c..40b4ef5 100644
--- a/include/linux/cpu_cooling.h
+++ b/include/linux/cpu_cooling.h
@@ -29,7 +29,7 @@
 #define CPUFREQ_COOLING_START		0
 #define CPUFREQ_COOLING_STOP		1
 
-#ifdef CONFIG_CPU_THERMAL
+#if defined(CONFIG_CPU_THERMAL) || defined(CONFIG_CPU_THERMAL_MODULE)
 /**
  * cpufreq_cooling_register - function to create cpufreq cooling device.
  * @clip_cpus: cpumask of cpus where the frequency constraints will happen
-- 
1.7.7.1.488.ge8e1c


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* RE: [linux-pm] [PATCH 1/1] thermal: cpu cooling: allow module builds
  2012-11-14 15:23 [PATCH 1/1] thermal: cpu cooling: allow module builds Eduardo Valentin
@ 2012-11-14 16:21 ` R, Durgadoss
  2012-11-21  9:01 ` Zhang, Rui
  1 sibling, 0 replies; 3+ messages in thread
From: R, Durgadoss @ 2012-11-14 16:21 UTC (permalink / raw)
  To: Eduardo Valentin, amit.kachhap
  Cc: eballetbo, linux-acpi, linux-pm, Zhang, Rui,
	Linux PM list (linux-pm@vger.kernel.org)


> -----Original Message-----
> From: linux-pm-bounces@lists.linux-foundation.org [mailto:linux-pm-
> bounces@lists.linux-foundation.org] On Behalf Of Eduardo Valentin
> Sent: Wednesday, November 14, 2012 8:54 PM
> To: amit.kachhap@linaro.org
> Cc: eballetbo@gmail.com; linux-acpi@vger.kernel.org; linux-pm@lists.linux-
> foundation.org
> Subject: [linux-pm] [PATCH 1/1] thermal: cpu cooling: allow module builds
> 
> As thermal drivers can be built as modules and also
> the thermal framework itself, building cpu cooling
> only as built-in can cause linking errors. For instance:
> * Generic Thermal sysfs driver
> *
> Generic Thermal sysfs driver (THERMAL) [M/n/y/?] m
>   generic cpu cooling support (CPU_THERMAL) [N/y/?] (NEW) y
> 
> with the following drive:
> CONFIG_OMAP_BANDGAP=m

Nice catch Eduardo :-)

Reviewed-by: Durgadoss R <durgadoss.r@intel.com>

Also, Ccing Rui to this e-mail and adding linux-pm.

Thanks,
Durga
> 
> generates:
> ERROR: "cpufreq_cooling_unregister" [drivers/staging/omap-thermal/omap-
> thermal.ko] undefined!
> ERROR: "cpufreq_cooling_register" [drivers/staging/omap-thermal/omap-
> thermal.ko] undefined!
> 
> This patch changes cpu cooling driver to allow it
> to be built as module.
> 
> Reported-by: Enric Balletbo i Serra <eballetbo@gmail.com>
> Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com>
> ---
>  drivers/thermal/Kconfig     |    2 +-
>  include/linux/cpu_cooling.h |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
> index e1cb6bd..3b03c8b 100644
> --- a/drivers/thermal/Kconfig
> +++ b/drivers/thermal/Kconfig
> @@ -20,7 +20,7 @@ config THERMAL_HWMON
>  	default y
> 
>  config CPU_THERMAL
> -	bool "generic cpu cooling support"
> +	tristate "generic cpu cooling support"
>  	depends on THERMAL && CPU_FREQ
>  	select CPU_FREQ_TABLE
>  	help
> diff --git a/include/linux/cpu_cooling.h b/include/linux/cpu_cooling.h
> index b30cc79c..40b4ef5 100644
> --- a/include/linux/cpu_cooling.h
> +++ b/include/linux/cpu_cooling.h
> @@ -29,7 +29,7 @@
>  #define CPUFREQ_COOLING_START		0
>  #define CPUFREQ_COOLING_STOP		1
> 
> -#ifdef CONFIG_CPU_THERMAL
> +#if defined(CONFIG_CPU_THERMAL) ||
> defined(CONFIG_CPU_THERMAL_MODULE)
>  /**
>   * cpufreq_cooling_register - function to create cpufreq cooling device.
>   * @clip_cpus: cpumask of cpus where the frequency constraints will happen
> --
> 1.7.7.1.488.ge8e1c


^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: [PATCH 1/1] thermal: cpu cooling: allow module builds
  2012-11-14 15:23 [PATCH 1/1] thermal: cpu cooling: allow module builds Eduardo Valentin
  2012-11-14 16:21 ` [linux-pm] " R, Durgadoss
@ 2012-11-21  9:01 ` Zhang, Rui
  1 sibling, 0 replies; 3+ messages in thread
From: Zhang, Rui @ 2012-11-21  9:01 UTC (permalink / raw)
  To: Eduardo Valentin, amit.kachhap; +Cc: linux-acpi, linux-pm, eballetbo

Applied.

Thanks,
rui

> -----Original Message-----
> From: Eduardo Valentin [mailto:eduardo.valentin@ti.com]
> Sent: Wednesday, November 14, 2012 11:24 PM
> To: amit.kachhap@linaro.org
> Cc: Zhang, Rui; linux-acpi@vger.kernel.org; linux-pm@lists.linux-
> foundation.org; eballetbo@gmail.com; Eduardo Valentin
> Subject: [PATCH 1/1] thermal: cpu cooling: allow module builds
> Importance: High
> 
> As thermal drivers can be built as modules and also the thermal
> framework itself, building cpu cooling only as built-in can cause
> linking errors. For instance:
> * Generic Thermal sysfs driver
> *
> Generic Thermal sysfs driver (THERMAL) [M/n/y/?] m
>   generic cpu cooling support (CPU_THERMAL) [N/y/?] (NEW) y
> 
> with the following drive:
> CONFIG_OMAP_BANDGAP=m
> 
> generates:
> ERROR: "cpufreq_cooling_unregister" [drivers/staging/omap-thermal/omap-
> thermal.ko] undefined!
> ERROR: "cpufreq_cooling_register" [drivers/staging/omap-thermal/omap-
> thermal.ko] undefined!
> 
> This patch changes cpu cooling driver to allow it to be built as module.
> 
> Reported-by: Enric Balletbo i Serra <eballetbo@gmail.com>
> Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com>
> ---
>  drivers/thermal/Kconfig     |    2 +-
>  include/linux/cpu_cooling.h |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig index
> e1cb6bd..3b03c8b 100644
> --- a/drivers/thermal/Kconfig
> +++ b/drivers/thermal/Kconfig
> @@ -20,7 +20,7 @@ config THERMAL_HWMON
>  	default y
> 
>  config CPU_THERMAL
> -	bool "generic cpu cooling support"
> +	tristate "generic cpu cooling support"
>  	depends on THERMAL && CPU_FREQ
>  	select CPU_FREQ_TABLE
>  	help
> diff --git a/include/linux/cpu_cooling.h b/include/linux/cpu_cooling.h
> index b30cc79c..40b4ef5 100644
> --- a/include/linux/cpu_cooling.h
> +++ b/include/linux/cpu_cooling.h
> @@ -29,7 +29,7 @@
>  #define CPUFREQ_COOLING_START		0
>  #define CPUFREQ_COOLING_STOP		1
> 
> -#ifdef CONFIG_CPU_THERMAL
> +#if defined(CONFIG_CPU_THERMAL) || defined(CONFIG_CPU_THERMAL_MODULE)
>  /**
>   * cpufreq_cooling_register - function to create cpufreq cooling
> device.
>   * @clip_cpus: cpumask of cpus where the frequency constraints will
> happen
> --
> 1.7.7.1.488.ge8e1c


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-11-21  9:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-14 15:23 [PATCH 1/1] thermal: cpu cooling: allow module builds Eduardo Valentin
2012-11-14 16:21 ` [linux-pm] " R, Durgadoss
2012-11-21  9:01 ` Zhang, Rui

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.