]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: sh_mmcif: fix I/O errors
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Wed, 12 Dec 2012 14:38:17 +0000 (15:38 +0100)
committerChris Ball <cjb@laptop.org>
Mon, 11 Feb 2013 18:28:38 +0000 (13:28 -0500)
commit0d6590e1edc1a2080614fb7b754f43963e7f38d4
tree4edc707d40597d431acfe8dd99ae1f9d62a78574
parent0c980801bbcb190a91c7c7a6b8735a1c84ef01cd
mmc: sh_mmcif: fix I/O errors

The INT_BUFWEN IRQ often arrives with other bits set too. If they are not
cleared, an additional IRQ can be triggered, sometimes also after the MMC
request has already been completed. This leads to block I/O errors. Earlier
Teppei Kamijou also observed these additional interrupts and proposed to
explicitly wait for them. This patch chooses an alternative approach of
clearing all active bits immediately, when processing the main interrupt.

Reported-by: Teppei Kamijou <teppei.kamijou.yb@renesas.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/sh_mmcif.c