2014-02-01 22:50:16

by Rob Herring

[permalink] [raw]
Subject: [PATCH] cpufreq: cpu0: make THERMAL_CPU support optional

From: Rob Herring <[email protected]>

The addition of THERMAL and THERMAL_CPU selections causes a kconfig
warning on highbank platforms:

warning: (ARM_HIGHBANK_CPUFREQ) selects GENERIC_CPUFREQ_CPU0 which has
unmet direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ && HAVE_CLK &&
REGULATOR && OF && THERMAL && CPU_THERMAL)

The cpufreq-cpu0 driver does not require thermal zone support, and it
should be selectable independently. Add a new kconfig option to enable
this feature.

Reported-by: Olof Johansson <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: Viresh Kumar <[email protected]>
Cc: [email protected]
Signed-off-by: Rob Herring <[email protected]>
---
drivers/cpufreq/Kconfig | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
index 4b029c0..a197a04a 100644
--- a/drivers/cpufreq/Kconfig
+++ b/drivers/cpufreq/Kconfig
@@ -185,7 +185,7 @@ config CPU_FREQ_GOV_CONSERVATIVE

config GENERIC_CPUFREQ_CPU0
tristate "Generic CPU0 cpufreq driver"
- depends on HAVE_CLK && REGULATOR && OF && THERMAL && CPU_THERMAL
+ depends on HAVE_CLK && REGULATOR && OF
select PM_OPP
help
This adds a generic cpufreq driver for CPU0 frequency management.
@@ -194,6 +194,14 @@ config GENERIC_CPUFREQ_CPU0

If in doubt, say N.

+config GENERIC_CPUFREQ_CPU0_THERMAL
+ bool "Thermal zone support for Generic CPU0 cpufreq"
+ depends on GENERIC_CPUFREQ_CPU0
+ select THERMAL
+ select THERMAL_CPU
+ help
+ This adds thermal support to the generic cpufreq driver for CPU0.
+
menu "x86 CPU frequency scaling drivers"
depends on X86
source "drivers/cpufreq/Kconfig.x86"
--
1.8.3.2


2014-02-03 06:06:02

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH] cpufreq: cpu0: make THERMAL_CPU support optional

Cc'ing the guy who introduced this bug..

On 2 February 2014 04:20, Rob Herring <[email protected]> wrote:
> From: Rob Herring <[email protected]>
>
> The addition of THERMAL and THERMAL_CPU selections causes a kconfig
> warning on highbank platforms:
>
> warning: (ARM_HIGHBANK_CPUFREQ) selects GENERIC_CPUFREQ_CPU0 which has
> unmet direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ && HAVE_CLK &&
> REGULATOR && OF && THERMAL && CPU_THERMAL)
>
> The cpufreq-cpu0 driver does not require thermal zone support, and it
> should be selectable independently. Add a new kconfig option to enable
> this feature.
>
> Reported-by: Olof Johansson <[email protected]>
> Cc: "Rafael J. Wysocki" <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: [email protected]
> Signed-off-by: Rob Herring <[email protected]>
> ---
> drivers/cpufreq/Kconfig | 10 +++++++++-
> 1 file changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
> index 4b029c0..a197a04a 100644
> --- a/drivers/cpufreq/Kconfig
> +++ b/drivers/cpufreq/Kconfig
> @@ -185,7 +185,7 @@ config CPU_FREQ_GOV_CONSERVATIVE
>
> config GENERIC_CPUFREQ_CPU0
> tristate "Generic CPU0 cpufreq driver"
> - depends on HAVE_CLK && REGULATOR && OF && THERMAL && CPU_THERMAL
> + depends on HAVE_CLK && REGULATOR && OF

That's fine as code would still compile due to dummy routines..

> select PM_OPP
> help
> This adds a generic cpufreq driver for CPU0 frequency management.
> @@ -194,6 +194,14 @@ config GENERIC_CPUFREQ_CPU0
>
> If in doubt, say N.
>
> +config GENERIC_CPUFREQ_CPU0_THERMAL
> + bool "Thermal zone support for Generic CPU0 cpufreq"
> + depends on GENERIC_CPUFREQ_CPU0
> + select THERMAL
> + select THERMAL_CPU
> + help
> + This adds thermal support to the generic cpufreq driver for CPU0.

But do we really need this? Let the platform enable THERMAL
and THERMAL_CPU themselves, as this was the case currently.

2014-02-03 16:14:43

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH] cpufreq: cpu0: make THERMAL_CPU support optional

On Mon, Feb 3, 2014 at 12:05 AM, Viresh Kumar <[email protected]> wrote:
> Cc'ing the guy who introduced this bug..
>
> On 2 February 2014 04:20, Rob Herring <[email protected]> wrote:
>> From: Rob Herring <[email protected]>
>>
>> The addition of THERMAL and THERMAL_CPU selections causes a kconfig
>> warning on highbank platforms:
>>
>> warning: (ARM_HIGHBANK_CPUFREQ) selects GENERIC_CPUFREQ_CPU0 which has
>> unmet direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ && HAVE_CLK &&
>> REGULATOR && OF && THERMAL && CPU_THERMAL)
>>
>> The cpufreq-cpu0 driver does not require thermal zone support, and it
>> should be selectable independently. Add a new kconfig option to enable
>> this feature.
>>
>> Reported-by: Olof Johansson <[email protected]>
>> Cc: "Rafael J. Wysocki" <[email protected]>
>> Cc: Viresh Kumar <[email protected]>
>> Cc: [email protected]
>> Signed-off-by: Rob Herring <[email protected]>
>> ---
>> drivers/cpufreq/Kconfig | 10 +++++++++-
>> 1 file changed, 9 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
>> index 4b029c0..a197a04a 100644
>> --- a/drivers/cpufreq/Kconfig
>> +++ b/drivers/cpufreq/Kconfig
>> @@ -185,7 +185,7 @@ config CPU_FREQ_GOV_CONSERVATIVE
>>
>> config GENERIC_CPUFREQ_CPU0
>> tristate "Generic CPU0 cpufreq driver"
>> - depends on HAVE_CLK && REGULATOR && OF && THERMAL && CPU_THERMAL
>> + depends on HAVE_CLK && REGULATOR && OF
>
> That's fine as code would still compile due to dummy routines..
>
>> select PM_OPP
>> help
>> This adds a generic cpufreq driver for CPU0 frequency management.
>> @@ -194,6 +194,14 @@ config GENERIC_CPUFREQ_CPU0
>>
>> If in doubt, say N.
>>
>> +config GENERIC_CPUFREQ_CPU0_THERMAL
>> + bool "Thermal zone support for Generic CPU0 cpufreq"
>> + depends on GENERIC_CPUFREQ_CPU0
>> + select THERMAL
>> + select THERMAL_CPU
>> + help
>> + This adds thermal support to the generic cpufreq driver for CPU0.
>
> But do we really need this? Let the platform enable THERMAL
> and THERMAL_CPU themselves, as this was the case currently.

That's certainly fine by me, but I don't know which platforms those are.

BTW, REGULATOR could probably be dropped as well. It certainly works
w/o a regulator as highbank does not define one.

Rob

2014-02-04 05:14:33

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH] cpufreq: cpu0: make THERMAL_CPU support optional

On 3 February 2014 21:44, Rob Herring <[email protected]> wrote:
> That's certainly fine by me, but I don't know which platforms those are.

Probably OMAP as the author came from TI and has tested it on OMAPs

https://lkml.org/lkml/2013/9/26/787

> BTW, REGULATOR could probably be dropped as well. It certainly works
> w/o a regulator as highbank does not define one.

Sure. Get that out as well in the same patch.