scsi: ufs: ufshcd-pltfrm: Fix deferred probing
authorSergey Shtylyov <s.shtylyov@omprussia.ru>
Mon, 29 Mar 2021 20:50:58 +0000 (23:50 +0300)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 13 Apr 2021 04:14:34 +0000 (00:14 -0400)
The driver overrides the error codes returned by platform_get_irq() to
-ENODEV, so if it returns -EPROBE_DEFER, the driver would fail the probe
permanently instead of the deferred probing.  Propagate the error code
upstream as it should have been done from the start...

Link: https://lore.kernel.org/r/420364ca-614a-45e3-4e35-0e0653c7bc53@omprussia.ru
Fixes: 2953f850c3b8 ("[SCSI] ufs: use devres functions for ufshcd")
Signed-off-by: Sergey Shtylyov <s.shtylyov@omprussia.ru>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufshcd-pltfrm.c

index fedb7de..298e22e 100644 (file)
@@ -375,7 +375,7 @@ int ufshcd_pltfrm_init(struct platform_device *pdev,
 
        irq = platform_get_irq(pdev, 0);
        if (irq < 0) {
-               err = -ENODEV;
+               err = irq;
                goto out;
        }