summaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/imxmmc.c
diff options
context:
space:
mode:
authorEthan Du <ethan.too@gmail.com>2010-09-09 16:37:49 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-09-09 18:57:23 -0700
commite7cb756fc3c7c32040283963572258381b342dff (patch)
tree59d4353875093251f4ed0bd9f01ba18086ea49b7 /drivers/mmc/host/imxmmc.c
parent23ef309a6e070490da0a37b9b6383819f8170ea3 (diff)
omap hsmmc: fix a racing case between kmmcd and omap_hsmmc_suspend
If suspend called when kmmcd is doing host->ops->disable, as kmmcd already increased host->en_dis_recurs to 1, the mmc_host_enable in suspend function will return directly without increase the nesting_cnt, which will cause the followed register access carried out to the disabled host. mmc_suspend_host will enable host itself. No need to enable host before it. Also works on kmmcd will get flushed in mmc_suspend_host, enable host after it will be safe. So make the mmc_host_enable after it. [cjb: rebase against current Linus] Signed-off-by: Ethan <ethan.too@gmail.com> Signed-off-by: Chris Ball <cjb@laptop.org> Acked-by: Adrian Hunter <adrian.hunter@nokia.com> Acked-by: Madhusudhan Chikkature <madhu.cr@ti.com> Cc: <linux-mmc@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/mmc/host/imxmmc.c')
0 files changed, 0 insertions, 0 deletions