rproc_free(rproc);
 }
 
-static int __maybe_unused stm32_rproc_suspend(struct device *dev)
+static int stm32_rproc_suspend(struct device *dev)
 {
        struct rproc *rproc = dev_get_drvdata(dev);
        struct stm32_rproc *ddata = rproc->priv;
        return 0;
 }
 
-static int __maybe_unused stm32_rproc_resume(struct device *dev)
+static int stm32_rproc_resume(struct device *dev)
 {
        struct rproc *rproc = dev_get_drvdata(dev);
        struct stm32_rproc *ddata = rproc->priv;
        return 0;
 }
 
-static SIMPLE_DEV_PM_OPS(stm32_rproc_pm_ops,
-                        stm32_rproc_suspend, stm32_rproc_resume);
+static DEFINE_SIMPLE_DEV_PM_OPS(stm32_rproc_pm_ops,
+                               stm32_rproc_suspend, stm32_rproc_resume);
 
 static struct platform_driver stm32_rproc_driver = {
        .probe = stm32_rproc_probe,
        .remove_new = stm32_rproc_remove,
        .driver = {
                .name = "stm32-rproc",
-               .pm = &stm32_rproc_pm_ops,
-               .of_match_table = of_match_ptr(stm32_rproc_match),
+               .pm = pm_ptr(&stm32_rproc_pm_ops),
+               .of_match_table = stm32_rproc_match,
        },
 };
 module_platform_driver(stm32_rproc_driver);