mirror of
https://github.com/torvalds/linux.git
synced 2024-12-12 06:02:38 +00:00
power: supply: ab8500: Cleanup probe in reverse order
It is logical to cleanup in probe's error path in reverse order to previous actions. It also makes easier to add additional goto labels within this error path. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
This commit is contained in:
parent
1a18f7e26a
commit
ccc023a581
@ -1121,13 +1121,13 @@ static int ab8500_btemp_probe(struct platform_device *pdev)
|
||||
return ret;
|
||||
|
||||
free_irq:
|
||||
power_supply_unregister(di->btemp_psy);
|
||||
|
||||
/* We also have to free all successfully registered irqs */
|
||||
for (i = i - 1; i >= 0; i--) {
|
||||
irq = platform_get_irq_byname(pdev, ab8500_btemp_irq[i].name);
|
||||
free_irq(irq, di);
|
||||
}
|
||||
|
||||
power_supply_unregister(di->btemp_psy);
|
||||
free_btemp_wq:
|
||||
destroy_workqueue(di->btemp_wq);
|
||||
return ret;
|
||||
|
@ -3219,15 +3219,15 @@ static int ab8500_fg_probe(struct platform_device *pdev)
|
||||
return ret;
|
||||
|
||||
free_irq:
|
||||
power_supply_unregister(di->fg_psy);
|
||||
|
||||
/* We also have to free all registered irqs */
|
||||
irq = platform_get_irq_byname(pdev, ab8500_fg_irq_bh[0].name);
|
||||
free_irq(irq, di);
|
||||
for (i = 0; i < ARRAY_SIZE(ab8500_fg_irq_th); i++) {
|
||||
irq = platform_get_irq_byname(pdev, ab8500_fg_irq_th[i].name);
|
||||
free_irq(irq, di);
|
||||
}
|
||||
irq = platform_get_irq_byname(pdev, ab8500_fg_irq_bh[0].name);
|
||||
free_irq(irq, di);
|
||||
|
||||
power_supply_unregister(di->fg_psy);
|
||||
free_inst_curr_wq:
|
||||
destroy_workqueue(di->fg_wq);
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user