i2c: virtio: Remove #ifdef guards for PM related functions
authorPaul Cercueil <paul@crapouillou.net>
Sat, 22 Jul 2023 11:53:09 +0000 (13:53 +0200)
committerAndi Shyti <andi.shyti@kernel.org>
Tue, 8 Aug 2023 13:36:53 +0000 (15:36 +0200)
Use the new PM macros for the suspend and resume functions to be
automatically dropped by the compiler when CONFIG_PM or
CONFIG_PM_SLEEP are 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.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://lore.kernel.org/r/20230722115310.27681-5-paul@crapouillou.net
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
drivers/i2c/busses/i2c-virtio.c

index 4b9536f508006dce032e752f0dccaae9b8919182..c60ae531ba57c7f0a5f830267e0d0bbb044da2b7 100644 (file)
@@ -243,7 +243,6 @@ static struct virtio_device_id id_table[] = {
 };
 MODULE_DEVICE_TABLE(virtio, id_table);
 
-#ifdef CONFIG_PM_SLEEP
 static int virtio_i2c_freeze(struct virtio_device *vdev)
 {
        virtio_i2c_del_vqs(vdev);
@@ -254,7 +253,6 @@ static int virtio_i2c_restore(struct virtio_device *vdev)
 {
        return virtio_i2c_setup_vqs(vdev->priv);
 }
-#endif
 
 static const unsigned int features[] = {
        VIRTIO_I2C_F_ZERO_LENGTH_REQUEST,
@@ -269,10 +267,8 @@ static struct virtio_driver virtio_i2c_driver = {
        .driver                 = {
                .name   = "i2c_virtio",
        },
-#ifdef CONFIG_PM_SLEEP
-       .freeze = virtio_i2c_freeze,
-       .restore = virtio_i2c_restore,
-#endif
+       .freeze                 = pm_sleep_ptr(virtio_i2c_freeze),
+       .restore                = pm_sleep_ptr(virtio_i2c_restore),
 };
 module_virtio_driver(virtio_i2c_driver);