mmc: dw_mmc: rockchip: add support MMC_CAP_RUNTIME_RESUME capability
authoraddy ke <addy.ke@rock-chips.com>
Fri, 20 Feb 2015 02:37:40 +0000 (10:37 +0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 23 Mar 2015 13:13:28 +0000 (14:13 +0100)
commit6d53200b51a57f50bc5a98b36bfcdb47483ad61a
tree50aca26b6811f2bcad9a8f075189ebe1b8db6bf2
parent801131321a0c53052084c10144dc07a061229f3f
mmc: dw_mmc: rockchip: add support MMC_CAP_RUNTIME_RESUME capability

To support HS200 and UHS mode, mmc core will call init_card() to
execute tuning:
- sdio: init_card can be executed at runtime resume.
- sd and mmc: init_card can be executed at resume or runtime resume,
  which depends on MMC_CAP_RUNTIME_RESUME capability.

On rk3288 SoC, host will get DRTO interrupt when host send command
to read tuning data. This will spend more than 111ms:
drto_ms = drto_clks * 1000 / bus_hz = 111ms.

And the total tuning time will be more than 400ms.

So we should add MMC_CAP_RUNTIME_RESUME capability to execute tuning
at runtime resume. Only if we do so, can we pass resume test.

Reviewed-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/dw_mmc-rockchip.c