Message ID | 20231010075112.755178-8-u.kleine-koenig@pengutronix.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | pwm: Use DEFINE_SIMPLE_DEV_PM_OPS for PM functions | expand |
On Tue, 10 Oct 2023 09:51:08 +0200 Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote: > This macro has the advantage over SIMPLE_DEV_PM_OPS that we don't have to > care about when the functions are actually used, so the corresponding > #ifdef can be dropped. > > Also make use of pm_ptr() to discard all PM related stuff if CONFIG_PM > isn't enabled. > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > --- > drivers/pwm/pwm-samsung.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/pwm/pwm-samsung.c b/drivers/pwm/pwm-samsung.c > index e8828f57ab15..041e2f9476ff 100644 > --- a/drivers/pwm/pwm-samsung.c > +++ b/drivers/pwm/pwm-samsung.c > @@ -630,7 +630,6 @@ static void pwm_samsung_remove(struct platform_device *pdev) > clk_disable_unprepare(chip->base_clk); > } > > -#ifdef CONFIG_PM_SLEEP > static int pwm_samsung_resume(struct device *dev) > { > struct samsung_pwm_chip *our_chip = dev_get_drvdata(dev); > @@ -663,14 +662,13 @@ static int pwm_samsung_resume(struct device *dev) > > return 0; > } > -#endif > > -static SIMPLE_DEV_PM_OPS(pwm_samsung_pm_ops, NULL, pwm_samsung_resume); > +static DEFINE_SIMPLE_DEV_PM_OPS(pwm_samsung_pm_ops, NULL, pwm_samsung_resume); > > static struct platform_driver pwm_samsung_driver = { > .driver = { > .name = "samsung-pwm", > - .pm = &pwm_samsung_pm_ops, > + .pm = pm_ptr(&pwm_samsung_pm_ops), > .of_match_table = of_match_ptr(samsung_pwm_matches), > }, > .probe = pwm_samsung_probe,
diff --git a/drivers/pwm/pwm-samsung.c b/drivers/pwm/pwm-samsung.c index e8828f57ab15..041e2f9476ff 100644 --- a/drivers/pwm/pwm-samsung.c +++ b/drivers/pwm/pwm-samsung.c @@ -630,7 +630,6 @@ static void pwm_samsung_remove(struct platform_device *pdev) clk_disable_unprepare(chip->base_clk); } -#ifdef CONFIG_PM_SLEEP static int pwm_samsung_resume(struct device *dev) { struct samsung_pwm_chip *our_chip = dev_get_drvdata(dev); @@ -663,14 +662,13 @@ static int pwm_samsung_resume(struct device *dev) return 0; } -#endif -static SIMPLE_DEV_PM_OPS(pwm_samsung_pm_ops, NULL, pwm_samsung_resume); +static DEFINE_SIMPLE_DEV_PM_OPS(pwm_samsung_pm_ops, NULL, pwm_samsung_resume); static struct platform_driver pwm_samsung_driver = { .driver = { .name = "samsung-pwm", - .pm = &pwm_samsung_pm_ops, + .pm = pm_ptr(&pwm_samsung_pm_ops), .of_match_table = of_match_ptr(samsung_pwm_matches), }, .probe = pwm_samsung_probe,
This macro has the advantage over SIMPLE_DEV_PM_OPS that we don't have to care about when the functions are actually used, so the corresponding #ifdef can be dropped. Also make use of pm_ptr() to discard all PM related stuff if CONFIG_PM isn't enabled. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> --- drivers/pwm/pwm-samsung.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)