MMC: Card detection through pin CD/DAT3 issue

From: Wappler Marcel
Date: Tue Mar 18 2008 - 07:00:19 EST


Hi Pierre, hi MMC developers,

I am at porting the generic PCI controller driver mmc/host/sdhci.c to a special non PCI direct memory mapped host. The hardware
vendor decided to implement the card detection not through the mechanical card present switch but through detecting the card
internal pull up at pin 1 (CD/DAT3).

With this detection scheme I have some dificulties togehter with the internal working of the current MMC stack:

The controller cannot detect a newly inserted card if the card power is switched of. This is due to the fact that the SD card
applies the internal card detection pull up after it powered up. If there is no power -> no powering up -> no pull up. (besides the
fact that a pull up needs power to for doing its work :-) )

My questions are:

1. knows anyone a host controller which uses the same card detection mechanism?

2. How could the driver manage the problem that the MMC stack switches off the card power if removed and therefor no state change on
line CD/DAT3 occurs at re-insertion of that card?

3. In a short look through some MMC card specs I did not find any description of some card detection mechanism. So I suppose the
mechanical switch is the only possible solution to detect a newly inserted card. Am I right or is there nevertheless a chance to
detect a inserted MMC together with this host?

Please CC me personaly and thanks a lot,
Marcel
--
Marcel Wappler
Bridgeco AG
CH-8600 Dübendorf
Switzerland
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/