
* Stephen Warren wrote:
On 11/21/2011 01:35 AM, Thierry Reding wrote:
This commit drops the interface check for card-detection and leaves it up to the board whether or not a card-detect GPIO is connected. Also, the version field of struct mmc is only valid after the slot has been probed successfully, so depending on that information sort of defeats the purpose of card-detection.
Signed-off-by: Thierry Reding thierry.reding@avionic-design.de
Acked-by: Stephen Warren swarren@nvidia.com
BTW, in your earlier patch where you added a call to board_mmc_getcd() to mmc_init(), do you also need to modify drivers/mmc/fsl_esdhc.c's esdhc_init(), since the cd function has already been called?
fsl_esdhc.c contains some fallback code if board_mmc_getcd() isn't implemented, and I'm not at all familiar with the code so I didn't want to touch it before getting any comments by the corresponding maintainer. My best guess, though, is that the code can remain as is, because if the CD check is done before the ->init() callback and the card isn't inserted, then the code in question won't be executed anyway. If the card is inserted, however, then board_mmc_getcd() will be called twice, which shouldn't harm either.
However, it seems like board_mmc_getcd() is used differently by fsl_esdhc in that it uses the cd parameter as "card absent" (inverted logic). That will of course have to be adjusted.
Perhaps I should've tagged the patch RFC because it really shouldn't be applied as-is.
BTW, you need to CC the MMC maintainers on these patches, or they probably won't see them and they won't get applied. See http://www.denx.de/wiki/U-Boot/Custodians.
Actually I had put Andy Fleming on Cc, but apparently the list stripped that again. I'll try Cc'ing Andy again, perhaps it'll work this time.
Thierry