kernel-fxtec-pro1x/drivers/mmc/core
Daniel Drake 041beb1d53 mmc: core: add a short delay in mmc_power_off
Stress-testing the runtime power management of libertas_sdio
through a rmmod/insmod loop revealed that it is quite easy to
cause an ETIMEDOUT failure in mmc_sdio_power_restore() leading to:
   libertas_sdio: probe of mmc1:0001:1 failed with error -16

Experimentation shows that a very short delay (100us) is needed in
the power down path before the card can be successfully booted again.
We know that this setup is lacking poweroff clamps on the card's power
lines, but as only a short delay is needed, apply this unconditionally.
Also bump up to 1ms sleep for extra legroom.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
2011-10-26 15:43:42 -04:00
..
bus.c mmc: sd: report correct speed and capacity of uhs cards 2011-05-24 23:53:46 -04:00
bus.h mmc: rename dev_to_mmc_card() to mmc_dev_to_card() 2010-10-23 21:11:12 +08:00
core.c mmc: core: add a short delay in mmc_power_off 2011-10-26 15:43:42 -04:00
core.h mmc: core: add support for eMMC Dual Data Rate 2011-05-24 23:53:58 -04:00
debugfs.c mmc: core: add random fault injection 2011-10-26 15:43:34 -04:00
host.c mmc: enable runtime PM by default 2011-10-26 15:43:35 -04:00
host.h mmc: rename mmc_host_clk_{ungate|gate} to mmc_host_clk_{hold|release} 2011-08-31 16:24:54 -04:00
Kconfig mmc: Aggressive clock gating framework 2011-01-08 22:48:03 -05:00
Makefile mmc: add per device quirk placeholder 2011-03-15 13:48:33 -04:00
mmc.c mmc: core: Detect eMMC v4.5 ext_csd entries 2011-08-13 14:50:22 -04:00
mmc_ops.c mmc: fix integer assignments to pointer 2011-10-26 15:43:35 -04:00
mmc_ops.h mmc: core: Allow setting CMD timeout for CMD6 (SWITCH). 2011-05-24 21:01:13 -04:00
quirks.c mmc: quirks: Extends card quirks with MMC/SD quirks matching the CID. 2011-05-24 21:00:54 -04:00
sd.c mmc: sd: UHS-I bus speed should be set last in UHS initialization 2011-08-31 16:25:52 -04:00
sd.h mmc: sd: add support for driver type selection 2011-05-24 23:53:24 -04:00
sd_ops.c mmc: fix integer assignments to pointer 2011-10-26 15:43:35 -04:00
sd_ops.h mmc: add erase, secure erase, trim and secure trim operations 2010-08-12 08:43:30 -07:00
sdio.c mmc: sdio: reset card during power_restore 2011-06-25 18:52:44 -04:00
sdio_bus.c mmc: fix runtime PM with -ENOSYS suspend case 2011-07-21 10:35:09 -04:00
sdio_bus.h
sdio_cis.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
sdio_cis.h
sdio_io.c sdio: add new function for RAW (Read after Write) operation 2010-05-27 09:12:40 -07:00
sdio_irq.c mmc: sdio: optimized SDIO IRQ handling for single irq 2011-05-24 23:53:50 -04:00
sdio_ops.c mmc: fix integer assignments to pointer 2011-10-26 15:43:35 -04:00
sdio_ops.h sdio: recognize io card without powercycle 2010-03-12 15:52:28 -08:00