summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Robinson <pbrobinson@gmail.com>2018-12-24 01:34:10 +0000
committerPeter Robinson <pbrobinson@gmail.com>2018-12-24 01:34:10 +0000
commitc2a32ddd1244a5cb3652a3d674be9fbb8bdc79e2 (patch)
tree588f7e880fe19c86724d5198dca9e51639047f7d
parentfff7d88c324b46ef181a74ffa3facb39c5d9d256 (diff)
downloadkernel-c2a32ddd1244a5cb3652a3d674be9fbb8bdc79e2.tar.gz
kernel-c2a32ddd1244a5cb3652a3d674be9fbb8bdc79e2.tar.xz
kernel-c2a32ddd1244a5cb3652a3d674be9fbb8bdc79e2.zip
Another fix for issue affecting Raspberry Pi 3-series WiFi (rhbz 1652093)
-rw-r--r--bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch38
-rw-r--r--kernel.spec8
2 files changed, 45 insertions, 1 deletions
diff --git a/bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch b/bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch
new file mode 100644
index 000000000..1119f006c
--- /dev/null
+++ b/bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch
@@ -0,0 +1,38 @@
+From 2ffa450426683e05ff79aead017862311852818a Mon Sep 17 00:00:00 2001
+From: Peter Robinson <pbrobinson@gmail.com>
+Date: Mon, 24 Dec 2018 01:15:55 +0000
+Subject: [PATCH] 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>
+Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
+---
+ drivers/mmc/host/sdhci-iproc.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c
+index d0e83db42ae5..94eeed2a1b53 100644
+--- a/drivers/mmc/host/sdhci-iproc.c
++++ b/drivers/mmc/host/sdhci-iproc.c
+@@ -279,7 +279,10 @@ static int sdhci_iproc_probe(struct platform_device *pdev)
+
+ iproc_host->data = iproc_data;
+
+- mmc_of_parse(host->mmc);
++ ret = mmc_of_parse(host->mmc);
++ if (ret)
++ goto err;
++
+ sdhci_get_of_property(pdev);
+
+ host->mmc->caps |= iproc_host->data->mmc_caps;
+--
+2.20.1
+
diff --git a/kernel.spec b/kernel.spec
index c10c0396a..0c721ce8d 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -42,7 +42,7 @@ Summary: The Linux kernel
# For non-released -rc kernels, this will be appended after the rcX and
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
#
-%global baserelease 300
+%global baserelease 301
%global fedora_build %{baserelease}
# base_sublevel is the kernel version we're starting with and patching
@@ -598,6 +598,9 @@ Patch332: raspberrypi-Fix-firmware-calls-with-large-buffers.patch
# From 4.20, fix eth link/act lights on 3B+
Patch334: bcm2837-fix-eth-leds.patch
+# https://patchwork.kernel.org/patch/10741809/
+Patch335: bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch
+
# Patches enabling device specific brcm firmware nvram
# https://www.spinics.net/lists/linux-wireless/msg178827.html
Patch340: brcmfmac-Remove-firmware-loading-code-duplication.patch
@@ -1893,6 +1896,9 @@ fi
#
#
%changelog
+* Mon Dec 24 2018 Peter Robinson <pbrobinson@fedoraproject.org> 4.19.12-301
+- Another fix for issue affecting Raspberry Pi 3-series WiFi (rhbz 1652093)
+
* Sat Dec 22 2018 Peter Robinson <pbrobinson@fedoraproject.org> 4.19.12-300
- Linux v4.19.12