[PATCH 07/11] pwm: samsung: Use DEFINE_SIMPLE_DEV_PM_OPS for PM functions

Jonathan Cameron Jonathan.Cameron at Huawei.com
Wed Oct 11 04:22:50 PDT 2023


On Tue, 10 Oct 2023 09:51:08 +0200
Uwe Kleine-König <u.kleine-koenig at 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 at pengutronix.de>

Reviewed-by: Jonathan Cameron <Jonathan.Cameron at 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,




More information about the linux-arm-kernel mailing list