]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: rtsx: Revert "mmc: rtsx: add support for pre_req and post_req"
authorMicky Ching <micky_ching@realsil.com.cn>
Tue, 29 Apr 2014 01:54:54 +0000 (09:54 +0800)
committerLee Jones <lee.jones@linaro.org>
Thu, 8 May 2014 07:44:50 +0000 (08:44 +0100)
commit00917f43f4735b1e81e46cabf9f872e2f5035645
treee6a8a40298933d61b485a1969f1dc3a837238c17
parent2c817f63c13b0fd655bd0f4977eb236726cc7dec
mmc: rtsx: Revert "mmc: rtsx: add support for pre_req and post_req"

This reverts commit 931db98b603a67840e10cc7892f4a32caadd60c2.

commit <mmc: rtsx: add support for pre_req and post_req> did use
mutex_unlock() in tasklet, but mutex_unlock() can't be used in
tasklet(atomic context). The driver needs to use mutex to avoid
concurrency, so we can't use tasklet here, the patch need to be
removed.

The spinlock host->lock and pcr->lock may deadlock, one way to solve
the deadlock is remove host->lock in sd_isr_done_transfer(), but if
using workqueue the we can avoid using the spinlock and also avoid
the problem.

Signed-off-by: Micky Ching <micky_ching@realsil.com.cn>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/rtsx_pcr.c
drivers/mmc/host/rtsx_pci_sdmmc.c
include/linux/mfd/rtsx_common.h
include/linux/mfd/rtsx_pci.h