diff options
Diffstat (limited to 'general-meson-gx-mmc-fix-deferred-probing.patch')
-rw-r--r-- | general-meson-gx-mmc-fix-deferred-probing.patch | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/general-meson-gx-mmc-fix-deferred-probing.patch b/general-meson-gx-mmc-fix-deferred-probing.patch new file mode 100644 index 000000000000..77e98a3257b5 --- /dev/null +++ b/general-meson-gx-mmc-fix-deferred-probing.patch @@ -0,0 +1,35 @@ +From b83c8168c58ccb96f92a4b6ecf1b8b7483fcced3 Mon Sep 17 00:00:00 2001 +From: Sergey Shtylyov <s.shtylyov@omp.ru> +Date: Fri, 24 Dec 2021 06:09:57 +0000 +Subject: [PATCH 38/90] FROMLIST(v1): mmc: meson-gx: fix deferred probing + +The driver overrides the error codes and IRQ0 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. IRQ0 is no longer returned by platform_get_irq(), so we now +can safely ignore it... + +Fixes: cbcaac6d7dd2 ("mmc: meson-gx-mmc: Fix platform_get_irq's error checking") +Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru> +--- + drivers/mmc/host/meson-gx-mmc.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c +index 58ab9d90bc8b..1a11a4bf4d4f 100644 +--- a/drivers/mmc/host/meson-gx-mmc.c ++++ b/drivers/mmc/host/meson-gx-mmc.c +@@ -1183,8 +1183,8 @@ static int meson_mmc_probe(struct platform_device *pdev) + } + + host->irq = platform_get_irq(pdev, 0); +- if (host->irq <= 0) { +- ret = -EINVAL; ++ if (host->irq < 0) { ++ ret = host->irq; + goto free_host; + } + +-- +2.35.1 + |