]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
power: supply: max14577: Handle NULL pdata when CONFIG_OF is not set
authorCharles Han <hanchunchao@inspur.com>
Mon, 19 May 2025 06:16:01 +0000 (14:16 +0800)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Sun, 22 Jun 2025 17:29:23 +0000 (19:29 +0200)
When the kernel is not configured  CONFIG_OF, the max14577_charger_dt_init
function returns NULL. Fix the max14577_charger_probe functionby returning
-ENODATA instead of potentially passing a NULL pointer to PTR_ERR.

This fixes the below smatch warning:
max14577_charger_probe() warn: passing zero to 'PTR_ERR'

Fixes: e30110e9c96f ("charger: max14577: Configure battery-dependent settings from DTS and sysfs")
Signed-off-by: Charles Han <hanchunchao@inspur.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20250519061601.8755-1-hanchunchao@inspur.com
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/max14577_charger.c

index 1cef2f860b5fccbe572389269870fad2486c7f54..63077d38ea30a781d1b443fb0d05c549dfce6552 100644 (file)
@@ -501,7 +501,7 @@ static struct max14577_charger_platform_data *max14577_charger_dt_init(
 static struct max14577_charger_platform_data *max14577_charger_dt_init(
                struct platform_device *pdev)
 {
-       return NULL;
+       return ERR_PTR(-ENODATA);
 }
 #endif /* CONFIG_OF */
 
@@ -572,7 +572,7 @@ static int max14577_charger_probe(struct platform_device *pdev)
        chg->max14577 = max14577;
 
        chg->pdata = max14577_charger_dt_init(pdev);
-       if (IS_ERR_OR_NULL(chg->pdata))
+       if (IS_ERR(chg->pdata))
                return PTR_ERR(chg->pdata);
 
        ret = max14577_charger_reg_init(chg);