Johan Rudholm 0797e5f145 mmc: core: Fixup signal voltage switch
When switching SD and SDIO cards from 3.3V to 1.8V signal levels, the
clock should be gated for 5 ms during the step. After enabling the
clock, the host should wait for at least 1 ms before checking for
failure. Failure by the card to switch is indicated by dat[0:3] being
pulled low. The host should check for this condition and power-cycle
the card if failure is indicated.

Add a retry mechanism for the SDIO case.

If the voltage switch fails repeatedly, give up and continue the
initialization using the original voltage.

This patch places a couple of requirements on the host driver:

 1) mmc_set_ios with ios.clock = 0 must gate the clock
 2) mmc_power_off must actually cut the power to the card
 3) The card_busy host_ops member must be implemented

if these requirements are not fulfilled, the 1.8V signal voltage switch
will still be attempted but may not be successful.

Signed-off-by: Johan Rudholm <johan.rudholm@stericsson.com>
Signed-off-by: Kevin Liu <kliu5@marvell.com>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Wei WANG <wei_wang@realsil.com.cn>
Signed-off-by: Chris Ball <cjb@laptop.org>
2013-02-24 14:37:08 -05:00
..
2013-01-23 20:30:52 -08:00
2013-01-30 11:38:25 +01:00
2013-01-14 09:08:38 -08:00
2012-12-11 14:08:47 -08:00
2012-12-18 15:19:06 +10:30
2013-01-28 00:18:04 -05:00
2013-01-22 16:36:23 -08:00
2012-12-12 11:45:16 -08:00
2013-01-08 18:53:56 -08:00
2012-12-19 08:19:07 -08:00
2012-12-11 13:13:55 -08:00
2013-01-16 15:57:54 +01:00
2013-01-18 14:05:25 -08:00
2012-12-12 12:05:15 -08:00
2013-01-15 10:45:26 -07:00
2013-01-18 12:02:52 -08:00
2012-11-16 08:14:18 -08:00
2012-11-16 08:14:18 -08:00