mmc: mtk-sd: fix deferred probing
authorSergey Shtylyov <s.shtylyov@omp.ru>
Sat, 17 Jun 2023 20:36:13 +0000 (23:36 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 28 Jun 2023 09:12:30 +0000 (11:12 +0200)
[ Upstream commit 0c4dc0f054891a2cbde0426b0c0fdf232d89f47f ]

The driver overrides the error codes returned by platform_get_irq() to
-EINVAL, so if it returns -EPROBE_DEFER, the driver will fail the probe
permanently instead of the deferred probing. Switch to propagating the
error codes upstream.

Fixes: 208489032bdd ("mmc: mediatek: Add Mediatek MMC driver")
Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Link: https://lore.kernel.org/r/20230617203622.6812-4-s.shtylyov@omp.ru
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mmc/host/mtk-sd.c

index 26bc59b..425efb3 100644 (file)
@@ -2658,7 +2658,7 @@ static int msdc_drv_probe(struct platform_device *pdev)
 
        host->irq = platform_get_irq(pdev, 0);
        if (host->irq < 0) {
-               ret = -EINVAL;
+               ret = host->irq;
                goto host_free;
        }