diff options
author | Stefan Wahren <stefan.wahren@i2se.com> | 2018-12-23 15:59:17 -0500 |
---|---|---|
committer | Ulf Hansson <ulf.hansson@linaro.org> | 2019-01-14 08:14:27 -0500 |
commit | 2bd44dadd5bfb4135162322fd0b45a174d4ad5bf (patch) | |
tree | 1fb87183f683a679a9303faa074d151631788250 | |
parent | bb364890323cca6e43f13e86d190ebf34a7d8cea (diff) |
mmc: sdhci-iproc: handle mmc_of_parse() errors during probe
We need to handle mmc_of_parse() errors during probe.
This finally fixes the wifi regression on Raspberry Pi 3 series.
In error case the wifi chip was permanently in reset because of
the power sequence depending on the deferred probe of the GPIO expander.
Fixes: b580c52d58d9 ("mmc: sdhci-iproc: add IPROC SDHCI driver")
Cc: stable@vger.kernel.org
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
-rw-r--r-- | drivers/mmc/host/sdhci-iproc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c index 0db99057c44f..9d12c06c7fd6 100644 --- a/drivers/mmc/host/sdhci-iproc.c +++ b/drivers/mmc/host/sdhci-iproc.c | |||
@@ -296,7 +296,10 @@ static int sdhci_iproc_probe(struct platform_device *pdev) | |||
296 | 296 | ||
297 | iproc_host->data = iproc_data; | 297 | iproc_host->data = iproc_data; |
298 | 298 | ||
299 | mmc_of_parse(host->mmc); | 299 | ret = mmc_of_parse(host->mmc); |
300 | if (ret) | ||
301 | goto err; | ||
302 | |||
300 | sdhci_get_property(pdev); | 303 | sdhci_get_property(pdev); |
301 | 304 | ||
302 | host->mmc->caps |= iproc_host->data->mmc_caps; | 305 | host->mmc->caps |= iproc_host->data->mmc_caps; |