Commit d5623161 authored by Laxman Dewangan's avatar Laxman Dewangan Committed by Lee Jones

mfd: rk808: Use devm_mfd_add_devices() for mfd_device registration

Use devm_mfd_add_devices() for MFD devices registration and remove
the call of mfd_remove_devices() from .remove callback to remove
MFD child-devices. This is done by managed device framework.

CC: Chris Zhong <zyw@rock-chips.com>
Signed-off-by: default avatarLaxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
parent 7360544c
...@@ -213,9 +213,9 @@ static int rk808_probe(struct i2c_client *client, ...@@ -213,9 +213,9 @@ static int rk808_probe(struct i2c_client *client,
rk808->i2c = client; rk808->i2c = client;
i2c_set_clientdata(client, rk808); i2c_set_clientdata(client, rk808);
ret = mfd_add_devices(&client->dev, -1, ret = devm_mfd_add_devices(&client->dev, -1,
rk808s, ARRAY_SIZE(rk808s), rk808s, ARRAY_SIZE(rk808s), NULL, 0,
NULL, 0, regmap_irq_get_domain(rk808->irq_data)); regmap_irq_get_domain(rk808->irq_data));
if (ret) { if (ret) {
dev_err(&client->dev, "failed to add MFD devices %d\n", ret); dev_err(&client->dev, "failed to add MFD devices %d\n", ret);
goto err_irq; goto err_irq;
...@@ -240,7 +240,6 @@ static int rk808_remove(struct i2c_client *client) ...@@ -240,7 +240,6 @@ static int rk808_remove(struct i2c_client *client)
struct rk808 *rk808 = i2c_get_clientdata(client); struct rk808 *rk808 = i2c_get_clientdata(client);
regmap_del_irq_chip(client->irq, rk808->irq_data); regmap_del_irq_chip(client->irq, rk808->irq_data);
mfd_remove_devices(&client->dev);
pm_power_off = NULL; pm_power_off = NULL;
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment