[PATCH v2 1/7] mmc: mxs-mmc: add mmc host driver for i.MX23/28
Shawn Guo
shawn.guo at freescale.com
Wed Feb 16 23:17:14 EST 2011
Hi Wolfram,
On Wed, Feb 16, 2011 at 04:33:32PM +0100, Wolfram Sang wrote:
> Hi Shawn,
>
> [CRC failures on MMC]
> > I guess you will also get the unknown partition table message if you
> > test this card on mx35 right now.
>
> No, I didn't see that message on MX35. (Doesn't matter much now).
>
> > I just tested 7 mmc cards in total. 6 cards work fine, and 1 card
> > (Transcend MMC plus 1GB) has the exactly same problem as yours. And
> > if I remove the 8 bit cap, this card also works fine. So I would
> > agree with Russell that it's unrelated to the driver.
>
> Ah, the 8_BIT_CAP was the right pointer. It works now and I can see the
> partitions \o/ But IMHO it is related to the driver because it cannot set that
> 8_BIT_DATA_CAP unconditionally? Probably something like 'flags' should be added
> to platform_data? One flag could then be 8_BIT_CAPABLE_SLOT or something.
>
If a platform is designed to support 8-bit mode (e.g. all 8 data
lines are routed), I do not think the 8-bit cap will be removed from
this platform just because one particular card has problem to work
in 8-bit mode.
But I would anyway let platform_data tell the 4 BIT_CAP and 8_BIT_CAP
just like what Freescale BSP is doing, as some platforms may design
this cap differently.
> > I tested the SDIO, but probably in different way from yours. I had
> > two card slots on my board, rootfs on mmc0 and SDIO card on mmc1.
> > It seems working fine in this way. However, when I use nfs and test
> > SDIO on mmc0, my systems hangs too. I will look into it.
>
> The latter scenario is the only one I can test, because I don't have an
> (active) second slot.
>
It's a board thing. I just rechecked the schematics of mx28evk
board, and found that the power supply of the two slots are
different. The mmc1 uses the external regulator REG_3V3 which can
supply up to 1.5 A current, while mmc0 uses mx28 internal regulator
VDDIO_3V3 which has very limited current capability. That's why my
SDIO WiFi card works on mmc1 slot while hangs system on mmc0. When
I reworked the board to supply mmc0 with REG_3V3, the card works on
mmc0 too.
So your board supplies mmc0 slot with VDDIO_3V3 as well?
--
Regards,
Shawn
More information about the linux-arm-kernel
mailing list