]> 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, 28 Jan 2013 11:51:33 +0000 (06:51 -0500)
commit6ea4155797b1e829049c6b817ed93d13e9d7e687
tree5e7d74a1795bbcba2b7b3e4a4e254d53e47f9ad3
parentacc2037a6df2ae32c1b5b64af5177bbbfefc60fe
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