drv->core.driver.probe = hda_codec_driver_probe;
        drv->core.driver.remove = hda_codec_driver_remove;
        drv->core.driver.shutdown = hda_codec_driver_shutdown;
-       drv->core.driver.pm = &hda_codec_driver_pm;
+       drv->core.driver.pm = pm_ptr(&hda_codec_driver_pm);
        drv->core.type = HDA_DEV_LEGACY;
        drv->core.match = hda_codec_match;
        drv->core.unsol_event = hda_codec_unsol_event;
 
        .thaw = pm_sleep_ptr(hda_codec_pm_thaw),
        .poweroff = pm_sleep_ptr(hda_codec_pm_suspend),
        .restore = pm_sleep_ptr(hda_codec_pm_restore),
-       .runtime_suspend = pm_ptr(hda_codec_runtime_suspend),
-       .runtime_resume = pm_ptr(hda_codec_runtime_resume),
+       RUNTIME_PM_OPS(hda_codec_runtime_suspend, hda_codec_runtime_resume, NULL)
 };
 
 /* suspend the codec at shutdown; called from driver's shutdown callback */