power: supply: mt6360: add a check of devm_work_autocancel in mt6360_charger_probe
authorKang Chen <void0red@gmail.com>
Mon, 27 Feb 2023 03:14:10 +0000 (11:14 +0800)
committerSebastian Reichel <sre@kernel.org>
Mon, 15 May 2023 22:46:53 +0000 (00:46 +0200)
devm_work_autocancel may fail, add a check and return early.

Fixes: 0402e8ebb8b86 ("power: supply: mt6360_charger: add MT6360 charger support")
Signed-off-by: Kang Chen <void0red@gmail.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/mt6360_charger.c

index 92e48e3a485364dd154e8489398488494215874c..1305cba61edd4b957313d7d86fb05158975b3086 100644 (file)
@@ -796,7 +796,9 @@ static int mt6360_charger_probe(struct platform_device *pdev)
        mci->vinovp = 6500000;
        mutex_init(&mci->chgdet_lock);
        platform_set_drvdata(pdev, mci);
-       devm_work_autocancel(&pdev->dev, &mci->chrdet_work, mt6360_chrdet_work);
+       ret = devm_work_autocancel(&pdev->dev, &mci->chrdet_work, mt6360_chrdet_work);
+       if (ret)
+               return dev_err_probe(&pdev->dev, ret, "Failed to set delayed work\n");
 
        ret = device_property_read_u32(&pdev->dev, "richtek,vinovp-microvolt", &mci->vinovp);
        if (ret)