[PATCH 01/11] pwm: atmel-hlcdc: Use DEFINE_SIMPLE_DEV_PM_OPS for PM functions

Jonathan Cameron Jonathan.Cameron at Huawei.com
Wed Oct 11 04:19:44 PDT 2023


On Tue, 10 Oct 2023 09:51:02 +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-atmel-hlcdc.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/pwm/pwm-atmel-hlcdc.c b/drivers/pwm/pwm-atmel-hlcdc.c
> index e271d920151e..95a806c7f623 100644
> --- a/drivers/pwm/pwm-atmel-hlcdc.c
> +++ b/drivers/pwm/pwm-atmel-hlcdc.c
> @@ -181,7 +181,6 @@ static const struct atmel_hlcdc_pwm_errata atmel_hlcdc_pwm_sama5d3_errata = {
>  	.div1_clk_erratum = true,
>  };
>  
> -#ifdef CONFIG_PM_SLEEP
>  static int atmel_hlcdc_pwm_suspend(struct device *dev)
>  {
>  	struct atmel_hlcdc_pwm *atmel = dev_get_drvdata(dev);
> @@ -211,10 +210,9 @@ static int atmel_hlcdc_pwm_resume(struct device *dev)
>  	return atmel_hlcdc_pwm_apply(&atmel->chip, &atmel->chip.pwms[0],
>  				     &state);
>  }
> -#endif
>  
> -static SIMPLE_DEV_PM_OPS(atmel_hlcdc_pwm_pm_ops,
> -			 atmel_hlcdc_pwm_suspend, atmel_hlcdc_pwm_resume);
> +static DEFINE_SIMPLE_DEV_PM_OPS(atmel_hlcdc_pwm_pm_ops,
> +				atmel_hlcdc_pwm_suspend, atmel_hlcdc_pwm_resume);
>  
>  static const struct of_device_id atmel_hlcdc_dt_ids[] = {
>  	{
> @@ -298,7 +296,7 @@ static struct platform_driver atmel_hlcdc_pwm_driver = {
>  	.driver = {
>  		.name = "atmel-hlcdc-pwm",
>  		.of_match_table = atmel_hlcdc_pwm_dt_ids,
> -		.pm = &atmel_hlcdc_pwm_pm_ops,
> +		.pm = pm_ptr(&atmel_hlcdc_pwm_pm_ops),
>  	},
>  	.probe = atmel_hlcdc_pwm_probe,
>  	.remove_new = atmel_hlcdc_pwm_remove,




More information about the linux-arm-kernel mailing list