Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

watchdog: twl4030: Remove #ifdef guards for PM related functions

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>
Link: https://lore.kernel.org/r/20221020185047.1001522-3-paul@crapouillou.net
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>

authored by

Paul Cercueil and committed by
Wim Van Sebroeck
d36eda79 b49e2a3c

+2 -7
+2 -7
drivers/watchdog/twl4030_wdt.c
··· 81 81 return devm_watchdog_register_device(dev, wdt); 82 82 } 83 83 84 - #ifdef CONFIG_PM 85 84 static int twl4030_wdt_suspend(struct platform_device *pdev, pm_message_t state) 86 85 { 87 86 struct watchdog_device *wdt = platform_get_drvdata(pdev); ··· 98 99 99 100 return 0; 100 101 } 101 - #else 102 - #define twl4030_wdt_suspend NULL 103 - #define twl4030_wdt_resume NULL 104 - #endif 105 102 106 103 static const struct of_device_id twl_wdt_of_match[] = { 107 104 { .compatible = "ti,twl4030-wdt", }, ··· 107 112 108 113 static struct platform_driver twl4030_wdt_driver = { 109 114 .probe = twl4030_wdt_probe, 110 - .suspend = twl4030_wdt_suspend, 111 - .resume = twl4030_wdt_resume, 115 + .suspend = pm_ptr(twl4030_wdt_suspend), 116 + .resume = pm_ptr(twl4030_wdt_resume), 112 117 .driver = { 113 118 .name = "twl4030_wdt", 114 119 .of_match_table = twl_wdt_of_match,