On Fri, Apr 1, 2011 at 12:22 PM, Luciano Coelho <coelho@xxxxxx> wrote: > The order in which the MMC cards are defined in the the 4430sdp board > file seems to have been mistakenly reorderded as part of an unrelated > patch. In commit 0005ae73cfe44ee42d0be12a12cc82bf982f518e, where only > the dev_name was supposed to be changed, the mmc order was changed as > well. This caused the external SD card reader not to be recognized, > at least on Blaze. Both OMAP4 SDP & Blaze boards have internal eMMC as storage. Just think of some scenario as below with FS in eMMC [with external card recognized as mmcblk0 and eMMC as mmcblk1]: Booting with both external card on MMC1 and eMMC on MMC2 and having bootargs set to root=/dev/mmcblk1px [x= parition number]. Removing the external card from slot makes eMMC recognized as mmcblk0 and in this case kernel can't pick the file system as passed above in the bootargs. So, making the permanent storage on the boards registered as first block device gets rid of the problem. Regards, Kishore > > This patch reverts this change so that the external SD card is > recognized again. > > Cc: Kishore Kadiyala <kishore.kadiyala@xxxxxx> > Cc: Benoit Cousson <b-cousson@xxxxxx> > Signed-off-by: Luciano Coelho <coelho@xxxxxx> > --- > > I have started investigating the cause for this problem, because it > seems to me that the value in the mmc element is what should matter, > but it doesn't seem to be the case. I believe there is a bug > elsewhere, that causes the order of the array to matter, but I'm not > very familiar with hsmmc and I don't have much time right now to delve > into the problem, so I leave this to the omap people. ;) I can always > help testing if necessary. > > The change indeed seems to have been a mistake, because it was > introduced silently in v6: > https://patchwork.kernel.org/patch/595861/ > > In v5, the change was not there: > https://patchwork.kernel.org/patch/590441/ > > arch/arm/mach-omap2/board-4430sdp.c | 10 +++++----- > 1 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c > index 56702c5..8991d56 100644 > --- a/arch/arm/mach-omap2/board-4430sdp.c > +++ b/arch/arm/mach-omap2/board-4430sdp.c > @@ -351,6 +351,11 @@ static struct twl4030_usb_data omap4_usbphy_data = { > > static struct omap2_hsmmc_info mmc[] = { > { > + .mmc = 1, > + .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA, > + .gpio_wp = -EINVAL, > + }, > + { > .mmc = 2, > .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA, > .gpio_cd = -EINVAL, > @@ -358,11 +363,6 @@ static struct omap2_hsmmc_info mmc[] = { > .nonremovable = true, > .ocr_mask = MMC_VDD_29_30, > }, > - { > - .mmc = 1, > - .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA, > - .gpio_wp = -EINVAL, > - }, > {} /* Terminator */ > }; > > -- > 1.7.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-omap" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html