Generally, during card suspend we call mmc_power_off and disable controller clocks. Now consider below sequence of events : suspend -> resume -> suspend. 1) During first platform suspend, mmc_power_off will be called and clocks would be disabled. 2) As a part of platform resume, we enable controller clocks and defer card resume when MMC_BUSRESUME_NEEDS_RESUME flag is set. 3) During next suspend we check if card is already suspended (i.e MMC_BUSRESUME_NEEDS_RESUME is set) and return without doing actual suspend (where we call mmc_power_off and disable controller clocks). So in this scenario, controller clocks will remain ON even though card state is SUSPENDED. Fix this by disabling controller clocks during suspend if controller clock was ON. CRs-Fixed: 1088893 Change-Id: Id54a15d7f6a7131dab609eec1db158c64ada83ce Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org> |
||
---|---|---|
.. | ||
card | ||
core | ||
host | ||
Kconfig | ||
Makefile |