Use the device lifecycle managed register function. This helps prevent
mistakes like unregistering out of order in cleanup functions and
forgetting to unregister on error paths.
Signed-off-by: Andrew Davis <afd@ti.com>
Link: https://lore.kernel.org/r/20240123163653.384385-3-afd@ti.com
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
                }
        }
 
-       bat->psy = power_supply_register(&pdev->dev, &psy_desc, &psy_cfg);
+       bat->psy = devm_power_supply_register(&pdev->dev, &psy_desc, &psy_cfg);
        if (IS_ERR(bat->psy)) {
                ret = PTR_ERR(bat->psy);
                goto err;
 
        for (i = 0; i < ARRAY_SIZE(da9052_bat_irqs); i++)
                da9052_free_irq(bat->da9052, da9052_bat_irq_bits[i], bat);
-
-       power_supply_unregister(bat->psy);
 }
 
 static struct platform_driver da9052_bat_driver = {