Message ID | 20230705204521.90050-4-paul@crapouillou.net |
---|---|
State | Superseded |
Headers | show |
Series | i2c: Use new PM macros | expand |
On Wed, 5 Jul 2023 22:45:20 +0200 Paul Cercueil <paul@crapouillou.net> wrote: > 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>
On 05-07-23, 22:45, Paul Cercueil wrote: > 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> > > --- > Cc: Conghui Chen <conghui.chen@intel.com> > Cc: Viresh Kumar <viresh.kumar@linaro.org> > Cc: virtualization@lists.linux-foundation.org > --- > drivers/i2c/busses/i2c-virtio.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-virtio.c b/drivers/i2c/busses/i2c-virtio.c > index 4b9536f50800..c60ae531ba57 100644 > --- a/drivers/i2c/busses/i2c-virtio.c > +++ b/drivers/i2c/busses/i2c-virtio.c > @@ -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); > Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
diff --git a/drivers/i2c/busses/i2c-virtio.c b/drivers/i2c/busses/i2c-virtio.c index 4b9536f50800..c60ae531ba57 100644 --- a/drivers/i2c/busses/i2c-virtio.c +++ b/drivers/i2c/busses/i2c-virtio.c @@ -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);
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> --- Cc: Conghui Chen <conghui.chen@intel.com> Cc: Viresh Kumar <viresh.kumar@linaro.org> Cc: virtualization@lists.linux-foundation.org --- drivers/i2c/busses/i2c-virtio.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-)