Message ID | 20221020185047.1001522-4-paul@crapouillou.net |
---|---|
State | New |
Headers | show |
Series | watchdog: Remove #ifdef guards for PM functions | expand |
On Thu, Oct 20, 2022 at 07:50:46PM +0100, Paul Cercueil wrote: > Use the pm_ptr() macro to handle the .suspend/.resume callbacks. > > This macro allows the suspend and resume functions to be automatically > dropped by the compiler when CONFIG_SUSPEND is disabled, without having > to use #ifdef guards. Not using #ifdef guards means that the code is > always compiled independently of any Kconfig option, and thanks to that > bugs and regressions are easier to catch. > > Signed-off-by: Paul Cercueil <paul@crapouillou.net> Acked-by: Aaro Koskinen <aaro.koskinen@iki.fi> > --- > drivers/watchdog/omap_wdt.c | 11 ++--------- > 1 file changed, 2 insertions(+), 9 deletions(-) > > diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c > index 74d785b2b478..e75aa86f63cb 100644 > --- a/drivers/watchdog/omap_wdt.c > +++ b/drivers/watchdog/omap_wdt.c > @@ -316,8 +316,6 @@ static int omap_wdt_remove(struct platform_device *pdev) > return 0; > } > > -#ifdef CONFIG_PM > - > /* REVISIT ... not clear this is the best way to handle system suspend; and > * it's very inappropriate for selective device suspend (e.g. suspending this > * through sysfs rather than by stopping the watchdog daemon). Also, this > @@ -353,11 +351,6 @@ static int omap_wdt_resume(struct platform_device *pdev) > return 0; > } > > -#else > -#define omap_wdt_suspend NULL > -#define omap_wdt_resume NULL > -#endif > - > static const struct of_device_id omap_wdt_of_match[] = { > { .compatible = "ti,omap3-wdt", }, > {}, > @@ -368,8 +361,8 @@ static struct platform_driver omap_wdt_driver = { > .probe = omap_wdt_probe, > .remove = omap_wdt_remove, > .shutdown = omap_wdt_shutdown, > - .suspend = omap_wdt_suspend, > - .resume = omap_wdt_resume, > + .suspend = pm_ptr(omap_wdt_suspend), > + .resume = pm_ptr(omap_wdt_resume), > .driver = { > .name = "omap_wdt", > .of_match_table = omap_wdt_of_match, > -- > 2.35.1 >
On Thu, Oct 20, 2022 at 07:50:46PM +0100, Paul Cercueil wrote: > Use the pm_ptr() macro to handle the .suspend/.resume callbacks. > > This macro allows the suspend and resume functions to be automatically > dropped by the compiler when CONFIG_SUSPEND is disabled, without having > to use #ifdef guards. Not using #ifdef guards means that the code is > always compiled independently of any Kconfig option, and thanks to that > bugs and regressions are easier to catch. > > Signed-off-by: Paul Cercueil <paul@crapouillou.net> Reviewed-by: Guenter Roeck <linux@roeck-us.net> > --- > drivers/watchdog/omap_wdt.c | 11 ++--------- > 1 file changed, 2 insertions(+), 9 deletions(-) > > diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c > index 74d785b2b478..e75aa86f63cb 100644 > --- a/drivers/watchdog/omap_wdt.c > +++ b/drivers/watchdog/omap_wdt.c > @@ -316,8 +316,6 @@ static int omap_wdt_remove(struct platform_device *pdev) > return 0; > } > > -#ifdef CONFIG_PM > - > /* REVISIT ... not clear this is the best way to handle system suspend; and > * it's very inappropriate for selective device suspend (e.g. suspending this > * through sysfs rather than by stopping the watchdog daemon). Also, this > @@ -353,11 +351,6 @@ static int omap_wdt_resume(struct platform_device *pdev) > return 0; > } > > -#else > -#define omap_wdt_suspend NULL > -#define omap_wdt_resume NULL > -#endif > - > static const struct of_device_id omap_wdt_of_match[] = { > { .compatible = "ti,omap3-wdt", }, > {}, > @@ -368,8 +361,8 @@ static struct platform_driver omap_wdt_driver = { > .probe = omap_wdt_probe, > .remove = omap_wdt_remove, > .shutdown = omap_wdt_shutdown, > - .suspend = omap_wdt_suspend, > - .resume = omap_wdt_resume, > + .suspend = pm_ptr(omap_wdt_suspend), > + .resume = pm_ptr(omap_wdt_resume), > .driver = { > .name = "omap_wdt", > .of_match_table = omap_wdt_of_match, > -- > 2.35.1 >
diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c index 74d785b2b478..e75aa86f63cb 100644 --- a/drivers/watchdog/omap_wdt.c +++ b/drivers/watchdog/omap_wdt.c @@ -316,8 +316,6 @@ static int omap_wdt_remove(struct platform_device *pdev) return 0; } -#ifdef CONFIG_PM - /* REVISIT ... not clear this is the best way to handle system suspend; and * it's very inappropriate for selective device suspend (e.g. suspending this * through sysfs rather than by stopping the watchdog daemon). Also, this @@ -353,11 +351,6 @@ static int omap_wdt_resume(struct platform_device *pdev) return 0; } -#else -#define omap_wdt_suspend NULL -#define omap_wdt_resume NULL -#endif - static const struct of_device_id omap_wdt_of_match[] = { { .compatible = "ti,omap3-wdt", }, {}, @@ -368,8 +361,8 @@ static struct platform_driver omap_wdt_driver = { .probe = omap_wdt_probe, .remove = omap_wdt_remove, .shutdown = omap_wdt_shutdown, - .suspend = omap_wdt_suspend, - .resume = omap_wdt_resume, + .suspend = pm_ptr(omap_wdt_suspend), + .resume = pm_ptr(omap_wdt_resume), .driver = { .name = "omap_wdt", .of_match_table = omap_wdt_of_match,
Use the pm_ptr() macro to handle the .suspend/.resume callbacks. This macro allows the suspend and resume functions to be automatically dropped by the compiler when CONFIG_SUSPEND is disabled, without having to use #ifdef guards. Not using #ifdef guards means that the code is always compiled independently of any Kconfig option, and thanks to that bugs and regressions are easier to catch. Signed-off-by: Paul Cercueil <paul@crapouillou.net> --- drivers/watchdog/omap_wdt.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-)