Re: [PATCH v2 12/30] mfd: intel_soc_pmic: Remove #ifdef guards for PM related functions

From: Andy Shevchenko
Date: Tue Aug 23 2022 - 12:56:33 EST


On Mon, Aug 08, 2022 at 07:40:49PM +0200, Paul Cercueil wrote:
> Use the new DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() macros
> to handle the .suspend/.resume callbacks.
>
> These macros allow the suspend and resume functions to be automatically
> dropped by the compiler when CONFIG_SUSPEND is disabled, without having
> to use #ifdef guards.
>
> This has the advantage of always compiling these functions in,
> independently of any Kconfig option. Thanks to that, bugs and other
> regressions are subsequently easier to catch.

Acked-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

But it needs to be rebased.

> Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx>
> ---
> Cc: Andy Shevchenko <andy@xxxxxxxxxx>
>
> drivers/mfd/intel_soc_pmic_core.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/mfd/intel_soc_pmic_core.c b/drivers/mfd/intel_soc_pmic_core.c
> index 5e8c94e008ed..96303aa87bc1 100644
> --- a/drivers/mfd/intel_soc_pmic_core.c
> +++ b/drivers/mfd/intel_soc_pmic_core.c
> @@ -104,7 +104,6 @@ static void intel_soc_pmic_shutdown(struct i2c_client *i2c)
> return;
> }
>
> -#if defined(CONFIG_PM_SLEEP)
> static int intel_soc_pmic_suspend(struct device *dev)
> {
> struct intel_soc_pmic *pmic = dev_get_drvdata(dev);
> @@ -122,10 +121,9 @@ static int intel_soc_pmic_resume(struct device *dev)
>
> return 0;
> }
> -#endif
>
> -static SIMPLE_DEV_PM_OPS(intel_soc_pmic_pm_ops, intel_soc_pmic_suspend,
> - intel_soc_pmic_resume);
> +static DEFINE_SIMPLE_DEV_PM_OPS(intel_soc_pmic_pm_ops, intel_soc_pmic_suspend,
> + intel_soc_pmic_resume);
>
> static const struct i2c_device_id intel_soc_pmic_i2c_id[] = {
> { }
> @@ -143,7 +141,7 @@ MODULE_DEVICE_TABLE(acpi, intel_soc_pmic_acpi_match);
> static struct i2c_driver intel_soc_pmic_i2c_driver = {
> .driver = {
> .name = "intel_soc_pmic_i2c",
> - .pm = &intel_soc_pmic_pm_ops,
> + .pm = pm_sleep_ptr(&intel_soc_pmic_pm_ops),
> .acpi_match_table = ACPI_PTR(intel_soc_pmic_acpi_match),
> },
> .probe = intel_soc_pmic_i2c_probe,
> --
> 2.35.1
>

--
With Best Regards,
Andy Shevchenko