power: supply: ab8500: Fix error handling in ab8500_charger_init()
authorYuan Can <yuancan@huawei.com>
Thu, 24 Nov 2022 03:19:32 +0000 (03:19 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:45 +0000 (13:32 +0100)
commitb866e8a0b7dc28d7f1b1c4f7d1329b6f0ff5c77d
tree28527eed5019677d588f9c9cb31e71dded8ae2a4
parent42d976bd9766a74ba87f5a8d0dcadda31378b7c7
power: supply: ab8500: Fix error handling in ab8500_charger_init()

[ Upstream commit c4d33381b134da188ccd1084aef21e2b8c3c422e ]

The ab8500_charger_init() returns the platform_driver_register() directly
without checking its return value, if platform_driver_register() failed,
all ab8500_charger_component_drivers are not unregistered.

Fix by unregister ab8500_charger_component_drivers when
platform_driver_register() failed.

Fixes: 1c1f13a006ed ("power: supply: ab8500: Move to componentized binding")
Signed-off-by: Yuan Can <yuancan@huawei.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/power/supply/ab8500_charger.c