From: Jonathan Cameron Date: Sun, 30 Jan 2022 19:31:17 +0000 (+0000) Subject: iio:light:isl29018: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() X-Git-Tag: v6.1-rc5~1693^2~55^2~104 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b020281dda5e4798cfbdd7a321e10964f8b0a87f;p=platform%2Fkernel%2Flinux-starfive.git iio:light:isl29018: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() Letting the compiler remove these functions when the kernel is built without CONFIG_PM_SLEEP support is simpler and less error prone than the use of #ifdef based config guards. Removing instances of this approach from IIO also stops them being copied into new drivers. Signed-off-by: Jonathan Cameron Cc: Anson Huang Cc: Brian Masney Reviewed-by: Paul Cercueil Link: https://lore.kernel.org/r/20220130193147.279148-21-jic23@kernel.org --- diff --git a/drivers/iio/light/isl29018.c b/drivers/iio/light/isl29018.c index 2689867..b36f8b7 100644 --- a/drivers/iio/light/isl29018.c +++ b/drivers/iio/light/isl29018.c @@ -784,7 +784,6 @@ static int isl29018_probe(struct i2c_client *client, return devm_iio_device_register(&client->dev, indio_dev); } -#ifdef CONFIG_PM_SLEEP static int isl29018_suspend(struct device *dev) { struct isl29018_chip *chip = iio_priv(dev_get_drvdata(dev)); @@ -830,11 +829,8 @@ static int isl29018_resume(struct device *dev) return err; } -static SIMPLE_DEV_PM_OPS(isl29018_pm_ops, isl29018_suspend, isl29018_resume); -#define ISL29018_PM_OPS (&isl29018_pm_ops) -#else -#define ISL29018_PM_OPS NULL -#endif +static DEFINE_SIMPLE_DEV_PM_OPS(isl29018_pm_ops, isl29018_suspend, + isl29018_resume); #ifdef CONFIG_ACPI static const struct acpi_device_id isl29018_acpi_match[] = { @@ -866,7 +862,7 @@ static struct i2c_driver isl29018_driver = { .driver = { .name = "isl29018", .acpi_match_table = ACPI_PTR(isl29018_acpi_match), - .pm = ISL29018_PM_OPS, + .pm = pm_sleep_ptr(&isl29018_pm_ops), .of_match_table = isl29018_of_match, }, .probe = isl29018_probe,