On 05/24/2012 06:27 AM, Arnd Bergmann wrote:
On Thursday 24 May 2012, John Stultz wrote:
On 05/23/2012 05:05 PM, John Stultz wrote:
Hey Arnd,
     So it looks like something has gone awry in the 3.5 pull with
Panda's mmc functionality.  Trying to boot the current 3.5-rc tree,
the boot fails after not finding the root device.  Looking at the boot
log I'm seeing:

omap_hsmmc: probe of omap_hsmmc.0 failed with error -22

With the same config on 3.4 it boots up fine.  I also tried w/ the
omap2plus_defconfig and see the same behavior.

Before I start bisecting down, I just wanted to raise the issue here
in case there's a known fix.
I went ahead and tried to bisect this down, and it was pretty painful as
there's a omap-usb-host build bug somewhere near the issue that keeps me
from being able to totally isolate it.

Anyway, the bisection finally pointed to this merge:

commit 8dca6010d44cc722a94dc6da96560f9083dac782
Merge: 9bc747b 74c4375
Author: Linus Torvalds<torva...@linux-foundation.org>
Date:   Tue May 22 09:27:39 2012 -0700
Hmm, so the fixes branch by itself is fine and so is the commit
before merging it.

The only commit that I see that can actually imact this seems
to be 1ee47b0. Can you try reverting that?
Yep. Good call, that's the one!  Reverting it works for me.
Thanks for catching that. After a few hours of bisecting I had gone a bit braindead. :)

Playing around with the patch, it looks like its the irq assignment thats causing problems (twl6030_mmc_card_detect_config() is returning 368). I can work around it with the hack below.

Balaji: Any thoughts on a proper fix here?

thanks
-john

diff --git a/arch/arm/mach-omap2/omap4-common.c 
b/arch/arm/mach-omap2/omap4-common.c
index a8161e5..9bd23a2 100644
--- a/arch/arm/mach-omap2/omap4-common.c
+++ b/arch/arm/mach-omap2/omap4-common.c
@@ -226,7 +226,7 @@ static int omap4_twl6030_hsmmc_late_init(struct device *dev)
                                __func__, irq);
                        return irq;
                }
-               pdata->slots[0].card_detect_irq = irq;
+//             pdata->slots[0].card_detect_irq = irq;
                pdata->slots[0].card_detect = twl6030_mmc_card_detect;
        }
        return 0;




_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to