Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

power: supply: max77693: Use devm_power_supply_register() helper

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/20240129190246.73067-3-afd@ti.com
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>

authored by

Andrew Davis and committed by
Sebastian Reichel
aed93a83 99ae0756

+3 -7
+3 -7
drivers/power/supply/max77693_charger.c
··· 709 709 goto err; 710 710 } 711 711 712 - chg->charger = power_supply_register(&pdev->dev, 713 - &max77693_charger_desc, 714 - &psy_cfg); 712 + chg->charger = devm_power_supply_register(&pdev->dev, 713 + &max77693_charger_desc, 714 + &psy_cfg); 715 715 if (IS_ERR(chg->charger)) { 716 716 dev_err(&pdev->dev, "failed: power supply register\n"); 717 717 ret = PTR_ERR(chg->charger); ··· 730 730 731 731 static void max77693_charger_remove(struct platform_device *pdev) 732 732 { 733 - struct max77693_charger *chg = platform_get_drvdata(pdev); 734 - 735 733 device_remove_file(&pdev->dev, &dev_attr_top_off_timer); 736 734 device_remove_file(&pdev->dev, &dev_attr_top_off_threshold_current); 737 735 device_remove_file(&pdev->dev, &dev_attr_fast_charge_timer); 738 - 739 - power_supply_unregister(chg->charger); 740 736 } 741 737 742 738 static const struct platform_device_id max77693_charger_id[] = {