OSDN Git Service

mmc: dw_mmc: fix error handling in PIO mode
authorSeungwon Jeon <tgih.jun@samsung.com>
Wed, 1 Aug 2012 00:30:46 +0000 (09:30 +0900)
committerChris Ball <cjb@laptop.org>
Tue, 4 Sep 2012 17:58:09 +0000 (13:58 -0400)
commite74f3a9c993a088f0a067e13941075e4acb7300a
tree451f7589d217d85607c5e6eb8567fa77a40ec329
parent9b2026a12511439d906a5d8d302ae285ebe7378a
mmc: dw_mmc: fix error handling in PIO mode

Data transfer will be continued until all the bytes are transmitted,
even if data crc error occurs during a multiple-block data transfer.
This means RXDR/TXDR interrupts will occurs until data transfer is
terminated. Early setting of host->sg to NULL prevents going into
xxx_data_pio functions, hence permanent unhandled RXDR/TXDR interrupts
occurs. And checking error interrupt status in the xxx_data_pio functions
is no need because dw_mci_interrupt does do the same. This patch also
removes it.

Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com>
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
Acked-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/dw_mmc.c