{"PM2XXX_IRQ_INT", pm2xxx_irq_int},
 };
 
-#ifdef CONFIG_PM
-
-#ifdef CONFIG_PM_SLEEP
-
-static int pm2xxx_wall_charger_resume(struct device *dev)
+static int __maybe_unused pm2xxx_wall_charger_resume(struct device *dev)
 {
        struct i2c_client *i2c_client = to_i2c_client(dev);
        struct pm2xxx_charger *pm2;
        return 0;
 }
 
-static int pm2xxx_wall_charger_suspend(struct device *dev)
+static int __maybe_unused pm2xxx_wall_charger_suspend(struct device *dev)
 {
        struct i2c_client *i2c_client = to_i2c_client(dev);
        struct pm2xxx_charger *pm2;
        return 0;
 }
 
-#endif
-
-static int  pm2xxx_runtime_suspend(struct device *dev)
+static int __maybe_unused pm2xxx_runtime_suspend(struct device *dev)
 {
        struct i2c_client *pm2xxx_i2c_client = to_i2c_client(dev);
        struct pm2xxx_charger *pm2;
        return 0;
 }
 
-static int  pm2xxx_runtime_resume(struct device *dev)
+static int __maybe_unused pm2xxx_runtime_resume(struct device *dev)
 {
        struct i2c_client *pm2xxx_i2c_client = to_i2c_client(dev);
        struct pm2xxx_charger *pm2;
        return 0;
 }
 
-static const struct dev_pm_ops pm2xxx_pm_ops = {
+static const struct dev_pm_ops pm2xxx_pm_ops __maybe_unused = {
        SET_SYSTEM_SLEEP_PM_OPS(pm2xxx_wall_charger_suspend,
                pm2xxx_wall_charger_resume)
        SET_RUNTIME_PM_OPS(pm2xxx_runtime_suspend, pm2xxx_runtime_resume, NULL)
 };
-#define  PM2XXX_PM_OPS (&pm2xxx_pm_ops)
-#else
-#define  PM2XXX_PM_OPS  NULL
-#endif
 
 static int pm2xxx_wall_charger_probe(struct i2c_client *i2c_client,
                const struct i2c_device_id *id)
        .remove = pm2xxx_wall_charger_remove,
        .driver = {
                .name = "pm2xxx-wall_charger",
-               .pm = PM2XXX_PM_OPS,
+               .pm = IS_ENABLED(CONFIG_PM) ? &pm2xxx_pm_ops : NULL,
        },
        .id_table = pm2xxx_id,
 };