2016-04-16 20:20:45

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] thermal: tegra: mark PM functions __maybe_unused

After the PM support has been added to this driver, we get
a harmless warning when that support is disabled at compile
time:

drivers/thermal/tegra/soctherm.c:641:12: error: 'soctherm_resume' defined but not used [-Werror=unused-function]
static int soctherm_resume(struct device *dev)

This marks the two PM functions as __maybe_unused to shut up
the warning. This is preferred over adding an #ifdef around
them, as it is harder to get wrong, and provides better
compile-time coverage.

Signed-off-by: Arnd Bergmann <[email protected]>
Fixes: a134b4143b65 ("thermal: tegra: add PM support")
---
drivers/thermal/tegra/soctherm.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/thermal/tegra/soctherm.c b/drivers/thermal/tegra/soctherm.c
index 559c74279eb8..be829d6e131c 100644
--- a/drivers/thermal/tegra/soctherm.c
+++ b/drivers/thermal/tegra/soctherm.c
@@ -629,7 +629,7 @@ static int tegra_soctherm_remove(struct platform_device *pdev)
return 0;
}

-static int soctherm_suspend(struct device *dev)
+static int __maybe_unused soctherm_suspend(struct device *dev)
{
struct platform_device *pdev = to_platform_device(dev);

@@ -638,7 +638,7 @@ static int soctherm_suspend(struct device *dev)
return 0;
}

-static int soctherm_resume(struct device *dev)
+static int __maybe_unused soctherm_resume(struct device *dev)
{
struct platform_device *pdev = to_platform_device(dev);
struct tegra_soctherm *tegra = platform_get_drvdata(pdev);
--
2.7.0


2016-04-18 07:15:19

by Thierry Reding

[permalink] [raw]
Subject: Re: [PATCH] thermal: tegra: mark PM functions __maybe_unused

On Sat, Apr 16, 2016 at 10:19:33PM +0200, Arnd Bergmann wrote:
> After the PM support has been added to this driver, we get
> a harmless warning when that support is disabled at compile
> time:
>
> drivers/thermal/tegra/soctherm.c:641:12: error: 'soctherm_resume' defined but not used [-Werror=unused-function]
> static int soctherm_resume(struct device *dev)
>
> This marks the two PM functions as __maybe_unused to shut up
> the warning. This is preferred over adding an #ifdef around
> them, as it is harder to get wrong, and provides better
> compile-time coverage.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> Fixes: a134b4143b65 ("thermal: tegra: add PM support")
> ---
> drivers/thermal/tegra/soctherm.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)

The need for this should go away when Jon's generic power domain series
gets merged (hopefully very soon now) and enabled on 32-bit ARM. In the
meantime:

Acked-by: Thierry Reding <[email protected]>


Attachments:
(No filename) (984.00 B)
signature.asc (819.00 B)
Download all attachments

2016-04-19 02:34:51

by Wei Ni

[permalink] [raw]
Subject: Re: [PATCH] thermal: tegra: mark PM functions __maybe_unused



On 2016年04月18日 15:15, Thierry Reding wrote:
> * PGP Signed by an unknown key
>
> On Sat, Apr 16, 2016 at 10:19:33PM +0200, Arnd Bergmann wrote:
>> After the PM support has been added to this driver, we get
>> a harmless warning when that support is disabled at compile
>> time:
>>
>> drivers/thermal/tegra/soctherm.c:641:12: error: 'soctherm_resume' defined but not used [-Werror=unused-function]
>> static int soctherm_resume(struct device *dev)
>>
>> This marks the two PM functions as __maybe_unused to shut up
>> the warning. This is preferred over adding an #ifdef around
>> them, as it is harder to get wrong, and provides better
>> compile-time coverage.
>>
>> Signed-off-by: Arnd Bergmann <[email protected]>
>> Fixes: a134b4143b65 ("thermal: tegra: add PM support")
>> ---
>> drivers/thermal/tegra/soctherm.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> The need for this should go away when Jon's generic power domain series

Hi Thierry,
Could you please show me the Jon's generic power domain series, so that I can
verify it.

Thanks.

> gets merged (hopefully very soon now) and enabled on 32-bit ARM. In the
> meantime:
>
> Acked-by: Thierry Reding <[email protected]>
>
> * Unknown Key
> * 0x7F3EB3A1
>

2016-04-19 12:43:27

by Thierry Reding

[permalink] [raw]
Subject: Re: [PATCH] thermal: tegra: mark PM functions __maybe_unused

On Tue, Apr 19, 2016 at 10:35:55AM +0800, Wei Ni wrote:
>
>
> On 2016年04月18日 15:15, Thierry Reding wrote:
> > * PGP Signed by an unknown key
> >
> > On Sat, Apr 16, 2016 at 10:19:33PM +0200, Arnd Bergmann wrote:
> >> After the PM support has been added to this driver, we get
> >> a harmless warning when that support is disabled at compile
> >> time:
> >>
> >> drivers/thermal/tegra/soctherm.c:641:12: error: 'soctherm_resume' defined but not used [-Werror=unused-function]
> >> static int soctherm_resume(struct device *dev)
> >>
> >> This marks the two PM functions as __maybe_unused to shut up
> >> the warning. This is preferred over adding an #ifdef around
> >> them, as it is harder to get wrong, and provides better
> >> compile-time coverage.
> >>
> >> Signed-off-by: Arnd Bergmann <[email protected]>
> >> Fixes: a134b4143b65 ("thermal: tegra: add PM support")
> >> ---
> >> drivers/thermal/tegra/soctherm.c | 4 ++--
> >> 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > The need for this should go away when Jon's generic power domain series
>
> Hi Thierry,
> Could you please show me the Jon's generic power domain series, so that I can
> verify it.

Here are the remaining patches from Jon's series:

https://patchwork.ozlabs.org/patch/603285/
https://patchwork.ozlabs.org/patch/603287/
https://patchwork.ozlabs.org/patch/603284/

Thierry


Attachments:
(No filename) (1.34 kB)
signature.asc (819.00 B)
Download all attachments

2016-04-20 06:43:15

by Wei Ni

[permalink] [raw]
Subject: Re: [PATCH] thermal: tegra: mark PM functions __maybe_unused



On 2016年04月19日 20:43, Thierry Reding wrote:
> * PGP Signed by an unknown key
>
> On Tue, Apr 19, 2016 at 10:35:55AM +0800, Wei Ni wrote:
>>
>>
>> On 2016年04月18日 15:15, Thierry Reding wrote:
>>>> Old Signed by an unknown key
>>>
>>> On Sat, Apr 16, 2016 at 10:19:33PM +0200, Arnd Bergmann wrote:
>>>> After the PM support has been added to this driver, we get
>>>> a harmless warning when that support is disabled at compile
>>>> time:
>>>>
>>>> drivers/thermal/tegra/soctherm.c:641:12: error: 'soctherm_resume' defined but not used [-Werror=unused-function]
>>>> static int soctherm_resume(struct device *dev)
>>>>
>>>> This marks the two PM functions as __maybe_unused to shut up
>>>> the warning. This is preferred over adding an #ifdef around
>>>> them, as it is harder to get wrong, and provides better
>>>> compile-time coverage.
>>>>
>>>> Signed-off-by: Arnd Bergmann <[email protected]>
>>>> Fixes: a134b4143b65 ("thermal: tegra: add PM support")
>>>> ---
>>>> drivers/thermal/tegra/soctherm.c | 4 ++--
>>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> The need for this should go away when Jon's generic power domain series
>>
>> Hi Thierry,
>> Could you please show me the Jon's generic power domain series, so that I can
>> verify it.
>
> Here are the remaining patches from Jon's series:
>
> https://patchwork.ozlabs.org/patch/603285/
> https://patchwork.ozlabs.org/patch/603287/
> https://patchwork.ozlabs.org/patch/603284/

I checked this generic power domain series, it select PM and PM_GENERIC_DOMAINS
for Tegra SoC Family. But the soctherm_suspend/resume callbacks defined by
SIMPLE_DEV_PM_OPS are only used when the CONFIG_PM_SLEEP is enabled, so if the
CONFIG_PM_SLEEP is disabled, we still will get this warning.
So to avoid the warning, I think this patch is needed.

Wei.

>
> Thierry
>
> * Unknown Key
> * 0x7F3EB3A1
>