Message ID | 20221107175256.360839-12-paul@crapouillou.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm: Get rid of #ifdef CONFIG_PM* guards | expand |
Hi, On 11/7/22 18:52, Paul Cercueil wrote: > Use the pm_sleep_ptr() macro to handle the .suspend / .resume callbacks. > > This macro allows 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. > > Signed-off-by: Paul Cercueil <paul@crapouillou.net> > --- > Cc: Hans de Goede <hdegoede@redhat.com> Thanks, patch looks good to me: Reviewed-by: Hans de Goede <hdegoede@redhat.com> Regards, Hans > --- > drivers/gpu/drm/vboxvideo/vbox_drv.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/vboxvideo/vbox_drv.c b/drivers/gpu/drm/vboxvideo/vbox_drv.c > index f4f2bd79a7cb..79318441ed7e 100644 > --- a/drivers/gpu/drm/vboxvideo/vbox_drv.c > +++ b/drivers/gpu/drm/vboxvideo/vbox_drv.c > @@ -102,7 +102,6 @@ static void vbox_pci_remove(struct pci_dev *pdev) > vbox_hw_fini(vbox); > } > > -#ifdef CONFIG_PM_SLEEP > static int vbox_pm_suspend(struct device *dev) > { > struct vbox_private *vbox = dev_get_drvdata(dev); > @@ -160,16 +159,13 @@ static const struct dev_pm_ops vbox_pm_ops = { > .poweroff = vbox_pm_poweroff, > .restore = vbox_pm_resume, > }; > -#endif > > static struct pci_driver vbox_pci_driver = { > .name = DRIVER_NAME, > .id_table = pciidlist, > .probe = vbox_pci_probe, > .remove = vbox_pci_remove, > -#ifdef CONFIG_PM_SLEEP > - .driver.pm = &vbox_pm_ops, > -#endif > + .driver.pm = pm_sleep_ptr(&vbox_pm_ops), > }; > > DEFINE_DRM_GEM_FOPS(vbox_fops);
diff --git a/drivers/gpu/drm/vboxvideo/vbox_drv.c b/drivers/gpu/drm/vboxvideo/vbox_drv.c index f4f2bd79a7cb..79318441ed7e 100644 --- a/drivers/gpu/drm/vboxvideo/vbox_drv.c +++ b/drivers/gpu/drm/vboxvideo/vbox_drv.c @@ -102,7 +102,6 @@ static void vbox_pci_remove(struct pci_dev *pdev) vbox_hw_fini(vbox); } -#ifdef CONFIG_PM_SLEEP static int vbox_pm_suspend(struct device *dev) { struct vbox_private *vbox = dev_get_drvdata(dev); @@ -160,16 +159,13 @@ static const struct dev_pm_ops vbox_pm_ops = { .poweroff = vbox_pm_poweroff, .restore = vbox_pm_resume, }; -#endif static struct pci_driver vbox_pci_driver = { .name = DRIVER_NAME, .id_table = pciidlist, .probe = vbox_pci_probe, .remove = vbox_pci_remove, -#ifdef CONFIG_PM_SLEEP - .driver.pm = &vbox_pm_ops, -#endif + .driver.pm = pm_sleep_ptr(&vbox_pm_ops), }; DEFINE_DRM_GEM_FOPS(vbox_fops);
Use the pm_sleep_ptr() macro to handle the .suspend / .resume callbacks. This macro allows 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. Signed-off-by: Paul Cercueil <paul@crapouillou.net> --- Cc: Hans de Goede <hdegoede@redhat.com> --- drivers/gpu/drm/vboxvideo/vbox_drv.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-)