aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch
diff options
context:
space:
mode:
authorZoltan Herpai <wigyori@uid0.hu>2014-03-06 00:09:30 +0000
committerZoltan Herpai <wigyori@uid0.hu>2014-03-06 00:09:30 +0000
commitac4b9dbb3c9b056008e00ee3d02fe3dad65641b7 (patch)
treeef1ef8907c63a75c4ac441f8c95325a6d5abb9ec /target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch
parent2c771cc71f3b6aceda5fe81f44a79b724e0941d0 (diff)
downloadupstream-ac4b9dbb3c9b056008e00ee3d02fe3dad65641b7.tar.gz
upstream-ac4b9dbb3c9b056008e00ee3d02fe3dad65641b7.tar.bz2
upstream-ac4b9dbb3c9b056008e00ee3d02fe3dad65641b7.zip
sunxi: driver refresh for 3.13 - update gmac / mmc / usb / ahci drivers to follow mainline dev trees - add driver for spi - update clock support - update a31 support - move to new DT compats where appropriate - re-order patchqueue where needed - verified working a20 smp - move most DTSes off files/ - update defconfig
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> SVN-Revision: 39782
Diffstat (limited to 'target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch')
-rw-r--r--target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch b/target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch
new file mode 100644
index 0000000000..90727f3e0b
--- /dev/null
+++ b/target/linux/sunxi/patches-3.13/170-9-mmc-fixup-revert-sdio.patch
@@ -0,0 +1,44 @@
+From 0483aa124d32bdcafc84623a31141a49e71cc72d Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Sun, 16 Feb 2014 08:54:20 +0100
+Subject: [PATCH] sunxi-mmc: fixup: revert "add host initialization for when
+ the sdio irq is enabled"
+
+This is not necessary since when the host is not initialized at this point
+yet the irq line from the mmc controller is not enabled, so writing the
+host controller interrupt mask cannot cause interrupts at this point.
+
+More over doing this is wrong, as it leads to unbalanced calling of
+clk_prepare_enable and regulator_power_on.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ drivers/mmc/host/sunxi-mmc.c | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+diff --git a/drivers/mmc/host/sunxi-mmc.c b/drivers/mmc/host/sunxi-mmc.c
+index 2dc446c..f33bc30 100644
+--- a/drivers/mmc/host/sunxi-mmc.c
++++ b/drivers/mmc/host/sunxi-mmc.c
+@@ -593,18 +593,9 @@ static void sunxi_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable)
+ {
+ struct sunxi_mmc_host *smc_host = mmc_priv(mmc);
+ unsigned long flags;
+- int ret;
+ u32 imask;
+
+ spin_lock_irqsave(&smc_host->lock, flags);
+-
+- /* Make sure the controller is in a sane state before enabling irqs */
+- ret = sunxi_mmc_init_host(host->mmc);
+- if (ret) {
+- spin_unlock_irqrestore(&smc_host->lock, flags);
+- return ret;
+- }
+-
+ imask = mci_readl(smc_host, REG_IMASK);
+ if (enable) {
+ smc_host->sdio_imask = SDXC_SDIO_INTERRUPT;
+--
+1.8.5.5
+