mfd: da9063: Replace mfd_add_devices with devm counterpart
authorMarek Vasut <marek.vasut@gmail.com>
Mon, 11 Jun 2018 11:58:39 +0000 (13:58 +0200)
committerLee Jones <lee.jones@linaro.org>
Wed, 4 Jul 2018 06:15:39 +0000 (07:15 +0100)
Use devm_mfd_add_devices() instead of plain mfd_add_devices(), which
removes the need for da9063_device_exit() altogether and also for the
.remove callback in da9063-i2c.c .

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/da9063-core.c
drivers/mfd/da9063-i2c.c
include/linux/mfd/da9063/core.h

index 2647bb3..76258e5 100644 (file)
@@ -226,20 +226,15 @@ int da9063_device_init(struct da9063 *da9063, unsigned int irq)
 
        da9063->irq_base = regmap_irq_chip_get_base(da9063->regmap_irq);
 
-       ret = mfd_add_devices(da9063->dev, -1, da9063_devs,
-                             ARRAY_SIZE(da9063_devs), NULL, da9063->irq_base,
-                             NULL);
+       ret = devm_mfd_add_devices(da9063->dev, -1, da9063_devs,
+                                  ARRAY_SIZE(da9063_devs), NULL,
+                                  da9063->irq_base, NULL);
        if (ret)
                dev_err(da9063->dev, "Cannot add MFD cells\n");
 
        return ret;
 }
 
-void da9063_device_exit(struct da9063 *da9063)
-{
-       mfd_remove_devices(da9063->dev);
-}
-
 MODULE_DESCRIPTION("PMIC driver for Dialog DA9063");
 MODULE_AUTHOR("Krystian Garbaciak");
 MODULE_AUTHOR("Michal Hajduk");
index 981805a..29456e8 100644 (file)
@@ -270,15 +270,6 @@ static int da9063_i2c_probe(struct i2c_client *i2c,
        return da9063_device_init(da9063, i2c->irq);
 }
 
-static int da9063_i2c_remove(struct i2c_client *i2c)
-{
-       struct da9063 *da9063 = i2c_get_clientdata(i2c);
-
-       da9063_device_exit(da9063);
-
-       return 0;
-}
-
 static const struct i2c_device_id da9063_i2c_id[] = {
        {"da9063", PMIC_DA9063},
        {},
@@ -291,7 +282,6 @@ static struct i2c_driver da9063_i2c_driver = {
                .of_match_table = of_match_ptr(da9063_dt_ids),
        },
        .probe    = da9063_i2c_probe,
-       .remove   = da9063_i2c_remove,
        .id_table = da9063_i2c_id,
 };
 
index 9ab7049..8e6684d 100644 (file)
@@ -94,6 +94,4 @@ struct da9063 {
 int da9063_device_init(struct da9063 *da9063, unsigned int irq);
 int da9063_irq_init(struct da9063 *da9063);
 
-void da9063_device_exit(struct da9063 *da9063);
-
 #endif /* __MFD_DA9063_CORE_H__ */