* [PATCH] iio: health/afe4403: mark suspend/resume functions __maybe_unused
@ 2016-02-15 9:02 Arnd Bergmann
2016-02-15 9:18 ` Daniel Baluta
0 siblings, 1 reply; 4+ messages in thread
From: Arnd Bergmann @ 2016-02-15 9:02 UTC (permalink / raw)
To: linux-arm-kernel
The newly added afe4403 driver implements suspend/resume using the
SIMPLE_DEV_PM_OPS() macro, which leaves out references to the actual
functions when CONFIG_PM is disabled, causing a harmless warning:
health/afe4403.c:509:12: error: 'afe4403_suspend' defined but not used
health/afe4403.c:530:12: error: 'afe4403_resume' defined but not used
This marks the functions as __maybe_unused so we don't get those
warnings.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: eec96d1e2d31 ("iio: health: Add driver for the TI AFE4403 heart monitor")
---
drivers/iio/health/afe4403.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/iio/health/afe4403.c b/drivers/iio/health/afe4403.c
index 91c046e40d2f..88e43f87b926 100644
--- a/drivers/iio/health/afe4403.c
+++ b/drivers/iio/health/afe4403.c
@@ -506,7 +506,7 @@ static const struct of_device_id afe4403_of_match[] = {
MODULE_DEVICE_TABLE(of, afe4403_of_match);
#endif
-static int afe4403_suspend(struct device *dev)
+static int __maybe_unused afe4403_suspend(struct device *dev)
{
struct iio_dev *indio_dev = dev_to_iio_dev(dev);
struct afe4403_data *afe = iio_priv(indio_dev);
@@ -527,7 +527,7 @@ static int afe4403_suspend(struct device *dev)
return 0;
}
-static int afe4403_resume(struct device *dev)
+static int __maybe_unused afe4403_resume(struct device *dev)
{
struct iio_dev *indio_dev = dev_to_iio_dev(dev);
struct afe4403_data *afe = iio_priv(indio_dev);
--
2.7.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH] iio: health/afe4403: mark suspend/resume functions __maybe_unused
2016-02-15 9:02 [PATCH] iio: health/afe4403: mark suspend/resume functions __maybe_unused Arnd Bergmann
@ 2016-02-15 9:18 ` Daniel Baluta
2016-02-15 9:20 ` Arnd Bergmann
0 siblings, 1 reply; 4+ messages in thread
From: Daniel Baluta @ 2016-02-15 9:18 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Feb 15, 2016 at 11:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> The newly added afe4403 driver implements suspend/resume using the
> SIMPLE_DEV_PM_OPS() macro, which leaves out references to the actual
> functions when CONFIG_PM is disabled, causing a harmless warning:
>
> health/afe4403.c:509:12: error: 'afe4403_suspend' defined but not used
> health/afe4403.c:530:12: error: 'afe4403_resume' defined but not used
>
> This marks the functions as __maybe_unused so we don't get those
> warnings.
>
Or we could put _suspend and _resume under CONFIG_PM_SLEEP.
We have:
:~/w/iio/drivers/iio$ ack-grep SIMPLE_DEV_PM_OPS | wc -l
31
and only 2 drivers using __maybe_unused.
:~/w/iio/drivers/iio$ ack-grep maybe_unused
gyro/itg3200_core.c
354:static int __maybe_unused itg3200_suspend(struct device *dev)
365:static int __maybe_unused itg3200_resume(struct device *dev)
adc/imx7d_adc.c
553:static int __maybe_unused imx7d_adc_suspend(struct device *dev)
566:static int __maybe_unused imx7d_adc_resume(struct device *dev)
For consistency, we should use CONFIG_PM_SLEEP and get rid of __maybe_unused.
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Fixes: eec96d1e2d31 ("iio: health: Add driver for the TI AFE4403 heart monitor")
> ---
> drivers/iio/health/afe4403.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iio/health/afe4403.c b/drivers/iio/health/afe4403.c
> index 91c046e40d2f..88e43f87b926 100644
> --- a/drivers/iio/health/afe4403.c
> +++ b/drivers/iio/health/afe4403.c
> @@ -506,7 +506,7 @@ static const struct of_device_id afe4403_of_match[] = {
> MODULE_DEVICE_TABLE(of, afe4403_of_match);
> #endif
>
> -static int afe4403_suspend(struct device *dev)
> +static int __maybe_unused afe4403_suspend(struct device *dev)
> {
> struct iio_dev *indio_dev = dev_to_iio_dev(dev);
> struct afe4403_data *afe = iio_priv(indio_dev);
> @@ -527,7 +527,7 @@ static int afe4403_suspend(struct device *dev)
> return 0;
> }
>
> -static int afe4403_resume(struct device *dev)
> +static int __maybe_unused afe4403_resume(struct device *dev)
> {
> struct iio_dev *indio_dev = dev_to_iio_dev(dev);
> struct afe4403_data *afe = iio_priv(indio_dev);
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] iio: health/afe4403: mark suspend/resume functions __maybe_unused
2016-02-15 9:18 ` Daniel Baluta
@ 2016-02-15 9:20 ` Arnd Bergmann
2016-02-17 19:35 ` Jonathan Cameron
0 siblings, 1 reply; 4+ messages in thread
From: Arnd Bergmann @ 2016-02-15 9:20 UTC (permalink / raw)
To: linux-arm-kernel
On Monday 15 February 2016 11:18:20 Daniel Baluta wrote:
> On Mon, Feb 15, 2016 at 11:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > The newly added afe4403 driver implements suspend/resume using the
> > SIMPLE_DEV_PM_OPS() macro, which leaves out references to the actual
> > functions when CONFIG_PM is disabled, causing a harmless warning:
> >
> > health/afe4403.c:509:12: error: 'afe4403_suspend' defined but not used
> > health/afe4403.c:530:12: error: 'afe4403_resume' defined but not used
> >
> > This marks the functions as __maybe_unused so we don't get those
> > warnings.
> >
> Or we could put _suspend and _resume under CONFIG_PM_SLEEP.
That never works reliably. I still have a backlog of ~50 patches
of drivers that got this wrong in the past.
> We have:
>
> :~/w/iio/drivers/iio$ ack-grep SIMPLE_DEV_PM_OPS | wc -l
> 31
>
> and only 2 drivers using __maybe_unused.
>
> :~/w/iio/drivers/iio$ ack-grep maybe_unused
> gyro/itg3200_core.c
> 354:static int __maybe_unused itg3200_suspend(struct device *dev)
> 365:static int __maybe_unused itg3200_resume(struct device *dev)
>
> adc/imx7d_adc.c
> 553:static int __maybe_unused imx7d_adc_suspend(struct device *dev)
> 566:static int __maybe_unused imx7d_adc_resume(struct device *dev)
>
> For consistency, we should use CONFIG_PM_SLEEP and get rid of __maybe_unused.
I hope to eventually kill off all the CONFIG_PM_SLEEP checks and then
make it work automatically by redefining SIMPLE_DEV_PM_OPS so it
leaves an unused reference to the functions.
Arnd
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] iio: health/afe4403: mark suspend/resume functions __maybe_unused
2016-02-15 9:20 ` Arnd Bergmann
@ 2016-02-17 19:35 ` Jonathan Cameron
0 siblings, 0 replies; 4+ messages in thread
From: Jonathan Cameron @ 2016-02-17 19:35 UTC (permalink / raw)
To: linux-arm-kernel
On 15/02/16 09:20, Arnd Bergmann wrote:
> On Monday 15 February 2016 11:18:20 Daniel Baluta wrote:
>> On Mon, Feb 15, 2016 at 11:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
>>> The newly added afe4403 driver implements suspend/resume using the
>>> SIMPLE_DEV_PM_OPS() macro, which leaves out references to the actual
>>> functions when CONFIG_PM is disabled, causing a harmless warning:
>>>
>>> health/afe4403.c:509:12: error: 'afe4403_suspend' defined but not used
>>> health/afe4403.c:530:12: error: 'afe4403_resume' defined but not used
>>>
>>> This marks the functions as __maybe_unused so we don't get those
>>> warnings.
>>>
>> Or we could put _suspend and _resume under CONFIG_PM_SLEEP.
>
> That never works reliably. I still have a backlog of ~50 patches
> of drivers that got this wrong in the past.
>
>> We have:
>>
>> :~/w/iio/drivers/iio$ ack-grep SIMPLE_DEV_PM_OPS | wc -l
>> 31
>>
>> and only 2 drivers using __maybe_unused.
>>
>> :~/w/iio/drivers/iio$ ack-grep maybe_unused
>> gyro/itg3200_core.c
>> 354:static int __maybe_unused itg3200_suspend(struct device *dev)
>> 365:static int __maybe_unused itg3200_resume(struct device *dev)
>>
>> adc/imx7d_adc.c
>> 553:static int __maybe_unused imx7d_adc_suspend(struct device *dev)
>> 566:static int __maybe_unused imx7d_adc_resume(struct device *dev)
>>
>> For consistency, we should use CONFIG_PM_SLEEP and get rid of __maybe_unused.
>
> I hope to eventually kill off all the CONFIG_PM_SLEEP checks and then
> make it work automatically by redefining SIMPLE_DEV_PM_OPS so it
> leaves an unused reference to the functions.
Applied to the togreg branch of iio.git
Thanks,
Jonathan
>
> Arnd
> --
> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-02-17 19:35 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-15 9:02 [PATCH] iio: health/afe4403: mark suspend/resume functions __maybe_unused Arnd Bergmann
2016-02-15 9:18 ` Daniel Baluta
2016-02-15 9:20 ` Arnd Bergmann
2016-02-17 19:35 ` Jonathan Cameron
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).