]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
soc: qcom: ice: Return -ENODEV if the ICE platform device is not found
authorManivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Mon, 18 May 2026 13:52:18 +0000 (19:22 +0530)
committerBjorn Andersson <andersson@kernel.org>
Mon, 18 May 2026 14:43:25 +0000 (09:43 -0500)
By the time the consumer driver calls devm_of_qcom_ice_get(), all the
platform devices for ICE nodes would've been created by
of_platform_default_populate().

So for the absence of any platform device, -ENODEV should not returned, not
-EPROBE_DEFER.

Fixes: 2afbf43a4aec ("soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicated driver")
Tested-by: Sumit Garg <sumit.garg@oss.qualcomm.com> # OP-TEE as TZ
Acked-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260518-qcom-ice-fix-v7-2-2a595382185b@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
drivers/soc/qcom/ice.c

index 91991864b4a3c3e0d8c4a3dcb6168fa8cf693c38..85deb9ea4a68d61a2db355e8beae9903f18ca27f 100644 (file)
@@ -650,7 +650,7 @@ static struct qcom_ice *of_qcom_ice_get(struct device *dev)
        pdev = of_find_device_by_node(node);
        if (!pdev) {
                dev_err(dev, "Cannot find device node %s\n", node->name);
-               return ERR_PTR(-EPROBE_DEFER);
+               return ERR_PTR(-ENODEV);
        }
 
        ice = xa_load(&ice_handles, pdev->dev.of_node->phandle);