power: supply: ab8500: Fix error handling in ab8500_charger_init()
[platform/kernel/linux-rpi.git] / drivers / power / supply / ab8500_charger.c
index 15eadaf..a4f766f 100644 (file)
@@ -3726,7 +3726,14 @@ static int __init ab8500_charger_init(void)
        if (ret)
                return ret;
 
-       return platform_driver_register(&ab8500_charger_driver);
+       ret = platform_driver_register(&ab8500_charger_driver);
+       if (ret) {
+               platform_unregister_drivers(ab8500_charger_component_drivers,
+                               ARRAY_SIZE(ab8500_charger_component_drivers));
+               return ret;
+       }
+
+       return 0;
 }
 
 static void __exit ab8500_charger_exit(void)