summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorAndrew Bresticker <abrestic@chromium.org>2015-11-10 14:11:46 -0800
committerAmit Pundir <amit.pundir@linaro.org>2016-04-07 16:49:56 +0530
commit467971a1a728971f22d8642266bf6a8cb0ec6cb4 (patch)
treeec1e049b18a6c44b5e48661d5ef24900be749cb8 /drivers
parent13712cceef9b7f1a585ab83564e86b115dd41134 (diff)
ANDROID: mmc: sdio: Disable retuning in sdio_reset_comm()
Since sdio_reset_comm() re-initializes the SDIO card, disable retuning before idling and shutting down the card. Tuning will be re-enabled (if necessary) in mmc_sdio_init_card(). BUG=chrome-os-partner:46444 TEST=With CL:311815, toggle WiFi on/off on Smaug and observe that the WiFi card comes back up and is able to tune successfully. Change-Id: Ib4a5cfd4d75fc9e3ed7bb3f1e2ffd30de16c5d28 Signed-off-by: Andrew Bresticker <abrestic@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/311797 Reviewed-by: Derek Basehore <dbasehore@chromium.org> [briannorris: brought from Chromium kernel in 3.18 -> 4.4 rebase] Signed-off-by: Brian Norris <briannorris@google.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/core/sdio.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c
index 09e100ba22b0..b47957122fd7 100644
--- a/drivers/mmc/core/sdio.c
+++ b/drivers/mmc/core/sdio.c
@@ -22,6 +22,7 @@
#include "core.h"
#include "bus.h"
+#include "host.h"
#include "sd.h"
#include "sdio_bus.h"
#include "mmc_ops.h"
@@ -1228,6 +1229,8 @@ int sdio_reset_comm(struct mmc_card *card)
printk("%s():\n", __func__);
mmc_claim_host(host);
+ mmc_retune_disable(host);
+
mmc_go_idle(host);
mmc_set_clock(host, host->f_min);