mmc: mediatek: fix SDIO irq issue
authoryong mao <yong.mao@mediatek.com>
Fri, 27 Mar 2020 08:51:37 +0000 (16:51 +0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Fri, 27 Mar 2020 12:21:30 +0000 (13:21 +0100)
commit9e2582e57407e390a94de7848a809540694bef35
treee39393572c85170eaa3d3b5920c6a8c2386fc418
parentd4a384cb563e555ce00255f5f496b503e6cc6358
mmc: mediatek: fix SDIO irq issue

SDIO irq is not triggered by low level, but by falling edge in our
previous IC. This mechanism only have one chance to catch the SDIO irq
if a SDIO irq comes within the multiple block transmission. This SDIO
irq may be easily lost, because falling edge appears only once within 2
clock after data transmission is completed.

SDIO irq recheck mechanism will make sure all irqs can be
processed correctly.

Signed-off-by: Yong Mao <yong.mao@mediatek.com>
Link: https://lore.kernel.org/r/1585299097-6897-2-git-send-email-yong.mao@mediatek.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/mtk-sd.c