summaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorFuqian Huang <huangfq.daxian@gmail.com>2019-07-08 20:32:59 +0800
committerSebastian Reichel <sebastian.reichel@collabora.com>2019-09-02 21:09:12 +0200
commit204205836f4d9a44c3e8825a9c14704fc5b2cdfd (patch)
tree262eb9c9b0640682c58e02c046bcca200c62243b /drivers/power
parent08614b407d8dffd9136c79ce6fd579be42173cc3 (diff)
downloadlinux-204205836f4d9a44c3e8825a9c14704fc5b2cdfd.tar.bz2
power: supply: sc27xx: Replace devm_add_action() followed by failure action with devm_add_action_or_reset()
devm_add_action_or_reset() is introduced as a helper function which internally calls devm_add_action(). If devm_add_action() fails then it will execute the action mentioned and return the error code. This reduce source code size (avoid writing the action twice) and reduce the likelyhood of bugs. Signed-off-by: Fuqian Huang <huangfq.daxian@gmail.com> Reviewed-by: Baolin Wang <baolin.wang@linaro.org> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/supply/sc27xx_fuel_gauge.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/power/supply/sc27xx_fuel_gauge.c b/drivers/power/supply/sc27xx_fuel_gauge.c
index 9c184d80088b..58b2970cd359 100644
--- a/drivers/power/supply/sc27xx_fuel_gauge.c
+++ b/drivers/power/supply/sc27xx_fuel_gauge.c
@@ -1023,9 +1023,8 @@ static int sc27xx_fgu_probe(struct platform_device *pdev)
return ret;
}
- ret = devm_add_action(dev, sc27xx_fgu_disable, data);
+ ret = devm_add_action_or_reset(dev, sc27xx_fgu_disable, data);
if (ret) {
- sc27xx_fgu_disable(data);
dev_err(dev, "failed to add fgu disable action\n");
return ret;
}