summaryrefslogtreecommitdiff
path: root/drivers/base
diff options
context:
space:
mode:
authorLudovic Barre <ludovic.barre@st.com>2019-04-26 09:46:35 +0200
committerUlf Hansson <ulf.hansson@linaro.org>2019-05-06 12:33:03 +0200
commit8520ce1e17799b220ff421d4f39438c9c572ade3 (patch)
tree517d9523a778526dc1704836325566b6c5cd8cf7 /drivers/base
parent812513c7b18c7de825da3d4a7501329925b4ec1b (diff)
mmc: mmci: Prevent polling for busy detection in IRQ context
The IRQ handler, mmci_irq(), loops until all status bits have been cleared. However, the status bit signaling busy in variant->busy_detect_flag, may be set even if busy detection isn't monitored for the current request. This may be the case for the CMD11 when switching the I/O voltage, which leads to that mmci_irq() busy loops in IRQ context. Fix this problem, by clearing the status bit for busy, before continuing to validate the condition for the loop. This is safe, because the busy status detection has already been taken care of by mmci_cmd_irq(). Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/base')
0 files changed, 0 insertions, 0 deletions