summaryrefslogtreecommitdiffstats
path: root/drivers/mmc
diff options
context:
space:
mode:
authorPierre Ossman <drzeus@drzeus.cx>2005-12-05 11:00:50 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-12-05 11:00:50 +0100
commite781de44153885d5f772731726b4c0c16f8af021 (patch)
treef250d18bb4a912945dc9c1fb7208e75010546987 /drivers/mmc
parent[PATCH] V4L/DVB (3087) fix analog NTSC for pcHDTV 3000 (diff)
downloadlinux-e781de44153885d5f772731726b4c0c16f8af021.tar.xz
linux-e781de44153885d5f772731726b4c0c16f8af021.zip
[MMC] Proper check of SCR error code
The routine reading the SCR wasn't paying proper attention to the error codes returned from the driver. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/mmc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index d336a1d65dc7..b586a83a9b4c 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -932,8 +932,9 @@ static void mmc_read_scrs(struct mmc_host *host)
sg_init_one(&sg, (u8*)card->raw_scr, 8);
- err = mmc_wait_for_req(host, &mrq);
- if (err != MMC_ERR_NONE) {
+ mmc_wait_for_req(host, &mrq);
+
+ if (cmd.error != MMC_ERR_NONE || data.error != MMC_ERR_NONE) {
mmc_card_set_dead(card);
continue;
}