return mc3230_set_opcon(iio_priv(indio_dev), MC3230_MODE_OPCON_STANDBY);
 }
 
-#ifdef CONFIG_PM_SLEEP
 static int mc3230_suspend(struct device *dev)
 {
        struct mc3230_data *data;
 
        return mc3230_set_opcon(data, MC3230_MODE_OPCON_WAKE);
 }
-#endif
 
-static SIMPLE_DEV_PM_OPS(mc3230_pm_ops, mc3230_suspend, mc3230_resume);
+static DEFINE_SIMPLE_DEV_PM_OPS(mc3230_pm_ops, mc3230_suspend, mc3230_resume);
 
 static const struct i2c_device_id mc3230_i2c_id[] = {
        {"mc3230", 0},
 static struct i2c_driver mc3230_driver = {
        .driver = {
                .name = "mc3230",
-               .pm = &mc3230_pm_ops,
+               .pm = pm_sleep_ptr(&mc3230_pm_ops),
        },
        .probe          = mc3230_probe,
        .remove         = mc3230_remove,