From: Christophe JAILLET Date: Tue, 28 Dec 2021 20:43:22 +0000 (+0100) Subject: power: supply: ab8500: Fix the error handling path of ab8500_charger_probe() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=be2c0d5418b1f44b01154a71e4501de139d0a7c9;p=linux.git power: supply: ab8500: Fix the error handling path of ab8500_charger_probe() Since the commit below, ab8500_bm_of_remove() needs to be called after a successful ab8500_bm_of_probe() call. This commit has only updated the remove function. Fix the error handling path of the probe the same way. Fixes: 6252c706cdb0 ("power: supply: ab8500: Standardize operating temperature") Signed-off-by: Christophe JAILLET Reviewed-by: Linus Walleij Signed-off-by: Sebastian Reichel --- diff --git a/drivers/power/supply/ab8500_charger.c b/drivers/power/supply/ab8500_charger.c index db7457064a179..ce074c018dcb6 100644 --- a/drivers/power/supply/ab8500_charger.c +++ b/drivers/power/supply/ab8500_charger.c @@ -3665,11 +3665,13 @@ static int ab8500_charger_probe(struct platform_device *pdev) } if (!match) { dev_err(dev, "no matching components\n"); - return -ENODEV; + ret = -ENODEV; + goto remove_ab8500_bm; } if (IS_ERR(match)) { dev_err(dev, "could not create component match\n"); - return PTR_ERR(match); + ret = PTR_ERR(match); + goto remove_ab8500_bm; } /* Notifier for external charger enabling */ @@ -3710,6 +3712,8 @@ out_charger_notifier: if (!di->ac_chg.enabled) blocking_notifier_chain_unregister( &charger_notifier_list, &charger_nb); +remove_ab8500_bm: + ab8500_bm_of_remove(di->usb_chg.psy, di->bm); return ret; }