Hi Alan,

I do not known which git tree to base and generate this patch (seems
not this one
git://git.kernel.org/pub/scm/linux/kernel/git/alan/linux-2.6-mid-ref.git),
so I just give a diff and manually wrote the header.

BTW, I just reproduced and verified on Oaktrail, on -mrst can
reproduce too, I assume my fix will work since these code are common,
but anyway will verify and let you know.

From: "Yin, Kangkai" <kangkai....@intel.com>

We should not go out when iosclock == 0, if we do this, we will miss the
chance to do host controller registers (e.g.: CONTROL, POWER, SIGNAL_ENABLE
etc.) settings and also breaks other variables status (e.g. host->pwr). This
is known to break the mmc power off path.

For example:
https://bugs.meego.com/show_bug.cgi?id=19251

Signed-off-by: "Yin, Kangkai" <kangkai....@intel.com>
--- a/drivers/mmc/host/sdhci.c.old      2011-06-30 10:24:01.776426401 -0700
+++ b/drivers/mmc/host/sdhci.c  2011-06-30 10:24:21.557030243 -0700
@@ -1184,9 +1184,6 @@
                pm_runtime_put_autosuspend(host->mmc->parent);
                spin_lock_irqsave(&host->lock, flags);
        }
-       /* no need to configure the rest.. */
-       if (host->iosclock == 0)
-               goto out;
 
        /*
         * Reset the chip on each power off.

_______________________________________________
MeeGo-kernel mailing list
MeeGo-kernel@lists.meego.com
http://lists.meego.com/listinfo/meego-kernel

Reply via email to