@@ -1988,8 +1988,7 @@ static int mv_u3d_probe(struct platform_device *dev)
return retval;
}
-#ifdef CONFIG_PM_SLEEP
-static int mv_u3d_suspend(struct device *dev)
+static int __maybe_unused mv_u3d_suspend(struct device *dev)
{
struct mv_u3d *u3d = dev_get_drvdata(dev);
@@ -2012,7 +2011,7 @@ static int mv_u3d_suspend(struct device *dev)
return 0;
}
-static int mv_u3d_resume(struct device *dev)
+static int __maybe_unused mv_u3d_resume(struct device *dev)
{
struct mv_u3d *u3d = dev_get_drvdata(dev);
int retval;
@@ -2031,7 +2030,6 @@ static int mv_u3d_resume(struct device *dev)
return 0;
}
-#endif
static SIMPLE_DEV_PM_OPS(mv_u3d_pm_ops, mv_u3d_suspend, mv_u3d_resume);
@@ -2051,7 +2049,7 @@ static struct platform_driver mv_u3d_driver = {
.shutdown = mv_u3d_shutdown,
.driver = {
.name = "mv-u3d",
- .pm = &mv_u3d_pm_ops,
+ .pm = pm_ptr(&mv_u3d_pm_ops),
},
};
Use the newly introduced pm_ptr() macro, and mark the suspend/resume functions __maybe_unused. These functions can then be moved outside the CONFIG_PM_SUSPEND block, and the compiler can then process them and detect build failures independently of the config. If unused, they will simply be discarded by the compiler. Signed-off-by: Paul Cercueil <paul@crapouillou.net> --- drivers/usb/gadget/udc/mv_u3d_core.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-)