[1/1] thermal: Exynos: Add missing dependency

Message ID CAK44p22wzbTE-u5QcasJhzYa9Ht7e9sNrJ63V2QX2+ZEp=vhSg@mail.gmail.com
State New
Headers show

Commit Message

Amit Daniel Kachhap Nov. 15, 2012, 6:24 a.m.
On 15 November 2012 05:41, Zhang Rui <rui.zhang@intel.com> wrote:
> Hi, Sachin,
>
> thanks for catching the problem.
>
> On Wed, 2012-11-14 at 12:18 +0530, Sachin Kamat wrote:
>> CPU_FREQ_TABLE depends on CPU_FREQ. Selecting CPU_FREQ_TABLE without checking
>> for dependencies gives the following compilation warnings:
>> warning: (ARCH_TEGRA_2x_SOC && ARCH_TEGRA_3x_SOC && UX500_SOC_DB8500 &&
>> CPU_THERMAL && EXYNOS_THERMAL) selects CPU_FREQ_TABLE which has unmet
>> direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ)
>>
> Amit,
>
> how is exynos driver supposed to work?
> do you want the exynos driver still be loaded without CPU_THERMAL?
> If yes, EXYNOS_THERMAL should not select CPU_FREQ_TABLE.
> If no, EXYNOS_THERMAL should depends on CPU_THERMAL instead of THERMAL.
> and CPU_THERMAL will select CPU_FREQ_TABLE instead.
>
> IMO, either of the above solution will be more proper to fix this
> warning.

Yes Rui, Currently exynos driver has dependency on CPU_THERMAL. There
is some code-refactoring work needed to remove this dependency.
As of now to fix the warning following changes may be sufficient.

Thanks,
Amit Daniel

>
> thanks,
> rui
>
>> Cc: Amit Daniel Kachhap <amit.kachhap@linaro.org>
>> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
>> ---
>> Build tested using exynos4_defconfig on linux-next tree of 20121114.
>> ---
>>  drivers/thermal/Kconfig |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
>> index 266c15e..197b7db 100644
>> --- a/drivers/thermal/Kconfig
>> +++ b/drivers/thermal/Kconfig
>> @@ -50,7 +50,7 @@ config RCAR_THERMAL
>>
>>  config EXYNOS_THERMAL
>>       tristate "Temperature sensor on Samsung EXYNOS"
>> -     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
>> +     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL && CPU_FREQ
>>       select CPU_FREQ_TABLE
>>       help
>>         If you say yes here you get support for TMU (Thermal Managment
>
>

Comments

Sachin Kamat Nov. 15, 2012, 6:39 a.m. | #1
On 15 November 2012 11:54, Amit Kachhap <amit.kachhap@linaro.org> wrote:
> On 15 November 2012 05:41, Zhang Rui <rui.zhang@intel.com> wrote:
>> Hi, Sachin,
>>
>> thanks for catching the problem.
>>
>> On Wed, 2012-11-14 at 12:18 +0530, Sachin Kamat wrote:
>>> CPU_FREQ_TABLE depends on CPU_FREQ. Selecting CPU_FREQ_TABLE without checking
>>> for dependencies gives the following compilation warnings:
>>> warning: (ARCH_TEGRA_2x_SOC && ARCH_TEGRA_3x_SOC && UX500_SOC_DB8500 &&
>>> CPU_THERMAL && EXYNOS_THERMAL) selects CPU_FREQ_TABLE which has unmet
>>> direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ)
>>>
>> Amit,
>>
>> how is exynos driver supposed to work?
>> do you want the exynos driver still be loaded without CPU_THERMAL?
>> If yes, EXYNOS_THERMAL should not select CPU_FREQ_TABLE.
>> If no, EXYNOS_THERMAL should depends on CPU_THERMAL instead of THERMAL.
>> and CPU_THERMAL will select CPU_FREQ_TABLE instead.
>>
>> IMO, either of the above solution will be more proper to fix this
>> warning.
>
> Yes Rui, Currently exynos driver has dependency on CPU_THERMAL. There
> is some code-refactoring work needed to remove this dependency.
> As of now to fix the warning following changes may be sufficient.
> --- a/drivers/thermal/Kconfig
> +++ b/drivers/thermal/Kconfig
> @@ -50,7 +50,8 @@ config RCAR_THERMAL
>
>  config EXYNOS_THERMAL
>         tristate "Temperature sensor on Samsung EXYNOS"
> -       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
> +       depends on THERMAL

This is not needed as CPU_THERMAL depends on THERMAL.

> +       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && CPU_THERMAL


>         select CPU_FREQ_TABLE
This can also be removed as CPU_THERMAL selects it.

I will resend my patch with the above changes.
>         help
>           If you say yes here you get support for TMU (Thermal Managment
>
> Thanks,
> Amit Daniel
>
>>
>> thanks,
>> rui
>>
>>> Cc: Amit Daniel Kachhap <amit.kachhap@linaro.org>
>>> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
>>> ---
>>> Build tested using exynos4_defconfig on linux-next tree of 20121114.
>>> ---
>>>  drivers/thermal/Kconfig |    2 +-
>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
>>> index 266c15e..197b7db 100644
>>> --- a/drivers/thermal/Kconfig
>>> +++ b/drivers/thermal/Kconfig
>>> @@ -50,7 +50,7 @@ config RCAR_THERMAL
>>>
>>>  config EXYNOS_THERMAL
>>>       tristate "Temperature sensor on Samsung EXYNOS"
>>> -     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
>>> +     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL && CPU_FREQ
>>>       select CPU_FREQ_TABLE
>>>       help
>>>         If you say yes here you get support for TMU (Thermal Managment
>>
>>
Zhang Rui Nov. 15, 2012, 6:45 a.m. | #2
> -----Original Message-----
> From: linux-pm-owner@vger.kernel.org [mailto:linux-pm-
> owner@vger.kernel.org] On Behalf Of Sachin Kamat
> Sent: Thursday, November 15, 2012 2:39 PM
> To: Amit Kachhap
> Cc: linux-pm@vger.kernel.org; R, Durgadoss; patches@linaro.org;
> akpm@linux-foundation.org
> Subject: Re: [PATCH 1/1] thermal: Exynos: Add missing dependency
> 
> On 15 November 2012 11:54, Amit Kachhap <amit.kachhap@linaro.org> wrote:
> > On 15 November 2012 05:41, Zhang Rui <rui.zhang@intel.com> wrote:
> >> Hi, Sachin,
> >>
> >> thanks for catching the problem.
> >>
> >> On Wed, 2012-11-14 at 12:18 +0530, Sachin Kamat wrote:
> >>> CPU_FREQ_TABLE depends on CPU_FREQ. Selecting CPU_FREQ_TABLE
> without
> >>> checking for dependencies gives the following compilation warnings:
> >>> warning: (ARCH_TEGRA_2x_SOC && ARCH_TEGRA_3x_SOC &&
> UX500_SOC_DB8500
> >>> && CPU_THERMAL && EXYNOS_THERMAL) selects CPU_FREQ_TABLE which has
> >>> unmet direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ)
> >>>
> >> Amit,
> >>
> >> how is exynos driver supposed to work?
> >> do you want the exynos driver still be loaded without CPU_THERMAL?
> >> If yes, EXYNOS_THERMAL should not select CPU_FREQ_TABLE.
> >> If no, EXYNOS_THERMAL should depends on CPU_THERMAL instead of
> THERMAL.
> >> and CPU_THERMAL will select CPU_FREQ_TABLE instead.
> >>
> >> IMO, either of the above solution will be more proper to fix this
> >> warning.
> >
> > Yes Rui, Currently exynos driver has dependency on CPU_THERMAL. There
> > is some code-refactoring work needed to remove this dependency.
> > As of now to fix the warning following changes may be sufficient.
> > --- a/drivers/thermal/Kconfig
> > +++ b/drivers/thermal/Kconfig
> > @@ -50,7 +50,8 @@ config RCAR_THERMAL
> >
> >  config EXYNOS_THERMAL
> >         tristate "Temperature sensor on Samsung EXYNOS"
> > -       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
> > +       depends on THERMAL
> 
> This is not needed as CPU_THERMAL depends on THERMAL.
> 
Agreed.
> > +       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && CPU_THERMAL
> 
> 
> >         select CPU_FREQ_TABLE
> This can also be removed as CPU_THERMAL selects it.
> 
Agreed.

> I will resend my patch with the above changes.

No, you don't need to.
I'm refactoring drivers/thermal/Kconfig, and I'll send a patch based on this idea.
Will send out the patch soon.

Thanks,
rui

> >         help
> >           If you say yes here you get support for TMU (Thermal
> > Managment
> >
> > Thanks,
> > Amit Daniel
> >
> >>
> >> thanks,
> >> rui
> >>
> >>> Cc: Amit Daniel Kachhap <amit.kachhap@linaro.org>
> >>> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
> >>> ---
> >>> Build tested using exynos4_defconfig on linux-next tree of 20121114.
> >>> ---
> >>>  drivers/thermal/Kconfig |    2 +-
> >>>  1 files changed, 1 insertions(+), 1 deletions(-)
> >>>
> >>> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
> index
> >>> 266c15e..197b7db 100644
> >>> --- a/drivers/thermal/Kconfig
> >>> +++ b/drivers/thermal/Kconfig
> >>> @@ -50,7 +50,7 @@ config RCAR_THERMAL
> >>>
> >>>  config EXYNOS_THERMAL
> >>>       tristate "Temperature sensor on Samsung EXYNOS"
> >>> -     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
> >>> +     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL &&
> >>> + CPU_FREQ
> >>>       select CPU_FREQ_TABLE
> >>>       help
> >>>         If you say yes here you get support for TMU (Thermal
> >>> Managment
> >>
> >>
> 
> 
> 
> --
> With warm regards,
> Sachin
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pm" in
> the body of a message to majordomo@vger.kernel.org More majordomo info
> at  http://vger.kernel.org/majordomo-info.html
Sachin Kamat Nov. 15, 2012, 6:46 a.m. | #3
On 15 November 2012 12:15, Zhang, Rui <rui.zhang@intel.com> wrote:
>
>
>> -----Original Message-----
>> From: linux-pm-owner@vger.kernel.org [mailto:linux-pm-
>> owner@vger.kernel.org] On Behalf Of Sachin Kamat
>> Sent: Thursday, November 15, 2012 2:39 PM
>> To: Amit Kachhap
>> Cc: linux-pm@vger.kernel.org; R, Durgadoss; patches@linaro.org;
>> akpm@linux-foundation.org
>> Subject: Re: [PATCH 1/1] thermal: Exynos: Add missing dependency
>>
>> On 15 November 2012 11:54, Amit Kachhap <amit.kachhap@linaro.org> wrote:
>> > On 15 November 2012 05:41, Zhang Rui <rui.zhang@intel.com> wrote:
>> >> Hi, Sachin,
>> >>
>> >> thanks for catching the problem.
>> >>
>> >> On Wed, 2012-11-14 at 12:18 +0530, Sachin Kamat wrote:
>> >>> CPU_FREQ_TABLE depends on CPU_FREQ. Selecting CPU_FREQ_TABLE
>> without
>> >>> checking for dependencies gives the following compilation warnings:
>> >>> warning: (ARCH_TEGRA_2x_SOC && ARCH_TEGRA_3x_SOC &&
>> UX500_SOC_DB8500
>> >>> && CPU_THERMAL && EXYNOS_THERMAL) selects CPU_FREQ_TABLE which has
>> >>> unmet direct dependencies (ARCH_HAS_CPUFREQ && CPU_FREQ)
>> >>>
>> >> Amit,
>> >>
>> >> how is exynos driver supposed to work?
>> >> do you want the exynos driver still be loaded without CPU_THERMAL?
>> >> If yes, EXYNOS_THERMAL should not select CPU_FREQ_TABLE.
>> >> If no, EXYNOS_THERMAL should depends on CPU_THERMAL instead of
>> THERMAL.
>> >> and CPU_THERMAL will select CPU_FREQ_TABLE instead.
>> >>
>> >> IMO, either of the above solution will be more proper to fix this
>> >> warning.
>> >
>> > Yes Rui, Currently exynos driver has dependency on CPU_THERMAL. There
>> > is some code-refactoring work needed to remove this dependency.
>> > As of now to fix the warning following changes may be sufficient.
>> > --- a/drivers/thermal/Kconfig
>> > +++ b/drivers/thermal/Kconfig
>> > @@ -50,7 +50,8 @@ config RCAR_THERMAL
>> >
>> >  config EXYNOS_THERMAL
>> >         tristate "Temperature sensor on Samsung EXYNOS"
>> > -       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
>> > +       depends on THERMAL
>>
>> This is not needed as CPU_THERMAL depends on THERMAL.
>>
> Agreed.
>> > +       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && CPU_THERMAL
>>
>>
>> >         select CPU_FREQ_TABLE
>> This can also be removed as CPU_THERMAL selects it.
>>
> Agreed.
>
>> I will resend my patch with the above changes.
>
> No, you don't need to.
> I'm refactoring drivers/thermal/Kconfig, and I'll send a patch based on this idea.
> Will send out the patch soon.

Oops.. sorry just sent it out..

>
> Thanks,
> rui
>
>> >         help
>> >           If you say yes here you get support for TMU (Thermal
>> > Managment
>> >
>> > Thanks,
>> > Amit Daniel
>> >
>> >>
>> >> thanks,
>> >> rui
>> >>
>> >>> Cc: Amit Daniel Kachhap <amit.kachhap@linaro.org>
>> >>> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
>> >>> ---
>> >>> Build tested using exynos4_defconfig on linux-next tree of 20121114.
>> >>> ---
>> >>>  drivers/thermal/Kconfig |    2 +-
>> >>>  1 files changed, 1 insertions(+), 1 deletions(-)
>> >>>
>> >>> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
>> index
>> >>> 266c15e..197b7db 100644
>> >>> --- a/drivers/thermal/Kconfig
>> >>> +++ b/drivers/thermal/Kconfig
>> >>> @@ -50,7 +50,7 @@ config RCAR_THERMAL
>> >>>
>> >>>  config EXYNOS_THERMAL
>> >>>       tristate "Temperature sensor on Samsung EXYNOS"
>> >>> -     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
>> >>> +     depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL &&
>> >>> + CPU_FREQ
>> >>>       select CPU_FREQ_TABLE
>> >>>       help
>> >>>         If you say yes here you get support for TMU (Thermal
>> >>> Managment
>> >>
>> >>
>>
>>
>>
>> --
>> With warm regards,
>> Sachin
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-pm" in
>> the body of a message to majordomo@vger.kernel.org More majordomo info
>> at  http://vger.kernel.org/majordomo-info.html

Patch

--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -50,7 +50,8 @@  config RCAR_THERMAL

 config EXYNOS_THERMAL
        tristate "Temperature sensor on Samsung EXYNOS"
-       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && THERMAL
+       depends on THERMAL
+       depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && CPU_THERMAL
        select CPU_FREQ_TABLE
        help
          If you say yes here you get support for TMU (Thermal Managment