struct regulator        *vcc;
        struct mutex            mutex;
        u8                      raw[M62332_CHANNELS];
-#ifdef CONFIG_PM_SLEEP
        u8                      save[M62332_CHANNELS];
-#endif
 };
 
 static int m62332_set_value(struct iio_dev *indio_dev, u8 val, int channel)
        return -EINVAL;
 }
 
-#ifdef CONFIG_PM_SLEEP
 static int m62332_suspend(struct device *dev)
 {
        struct i2c_client *client = to_i2c_client(dev);
        return m62332_set_value(indio_dev, data->save[1], 1);
 }
 
-static SIMPLE_DEV_PM_OPS(m62332_pm_ops, m62332_suspend, m62332_resume);
-#define M62332_PM_OPS (&m62332_pm_ops)
-#else
-#define M62332_PM_OPS NULL
-#endif
+static DEFINE_SIMPLE_DEV_PM_OPS(m62332_pm_ops, m62332_suspend, m62332_resume);
 
 static const struct iio_info m62332_info = {
        .read_raw = m62332_read_raw,
 static struct i2c_driver m62332_driver = {
        .driver = {
                .name   = "m62332",
-               .pm     = M62332_PM_OPS,
+               .pm     = pm_sleep_ptr(&m62332_pm_ops),
        },
        .probe          = m62332_probe,
        .remove         = m62332_remove,