Use devm_mfd_add_devices() for MFD devices registration and get
rid of .remove callback to remove MFD child-devices. This is done
by managed device framework.

Signed-off-by: Laxman Dewangan <ldewan...@nvidia.com>
CC: Guennadi Liakhovetski <g.liakhovet...@gmx.de>

---
Changes from V1:
- Convert mfd to MFD.
- Run checkpatch with --strict option and fix warning.

 drivers/mfd/as3711.c | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/drivers/mfd/as3711.c b/drivers/mfd/as3711.c
index 09e1483..67b1241 100644
--- a/drivers/mfd/as3711.c
+++ b/drivers/mfd/as3711.c
@@ -189,22 +189,14 @@ static int as3711_i2c_probe(struct i2c_client *client,
                as3711_subdevs[AS3711_BACKLIGHT].pdata_size = 0;
        }
 
-       ret = mfd_add_devices(as3711->dev, -1, as3711_subdevs,
-                             ARRAY_SIZE(as3711_subdevs), NULL, 0, NULL);
+       ret = devm_mfd_add_devices(as3711->dev, -1, as3711_subdevs,
+                                  ARRAY_SIZE(as3711_subdevs), NULL, 0, NULL);
        if (ret < 0)
                dev_err(&client->dev, "add mfd devices failed: %d\n", ret);
 
        return ret;
 }
 
-static int as3711_i2c_remove(struct i2c_client *client)
-{
-       struct as3711 *as3711 = i2c_get_clientdata(client);
-
-       mfd_remove_devices(as3711->dev);
-       return 0;
-}
-
 static const struct i2c_device_id as3711_i2c_id[] = {
        {.name = "as3711", .driver_data = 0},
        {}
@@ -218,7 +210,6 @@ static struct i2c_driver as3711_i2c_driver = {
                   .of_match_table = of_match_ptr(as3711_of_match),
        },
        .probe = as3711_i2c_probe,
-       .remove = as3711_i2c_remove,
        .id_table = as3711_i2c_id,
 };
 
-- 
2.1.4

Reply via email to