summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDipen Dudhat <dipen.dudhat@freescale.com>2009-10-07 15:47:46 -0400
committerJustin Waters <justin.waters@timesys.com>2009-10-07 15:47:46 -0400
commit1939b5816adf70a2dcc2e7eb41a816587a8e3c3b (patch)
tree63a6e12891acc7dfee5328d8517f62acc5a05d56
parent3f1a2e1c0750c20a13bb99f7dc86e8060f520c16 (diff)
u-boot-2009.03-p2020rdb-eSDHC-PIO-mode-last-3-bytes-corre
Removed Bug from PIO mode Support in eSDHC Driver. Earlier it was skipping last 3 bytes in read operation. Signed-off-by: Dipen Dudhat <dipen.dudhat@freescale.com>
-rw-r--r--drivers/mmc/fsl_esdhc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
index b0eb8a2d97..6c17b7f10d 100644
--- a/drivers/mmc/fsl_esdhc.c
+++ b/drivers/mmc/fsl_esdhc.c
@@ -157,7 +157,7 @@ esdhc_pio_read_write(struct mmc *mmc, struct mmc_data *data)
size = data->blocksize;
irqstat = in_be32(&regs->irqstat);
while(!(in_be32(&regs->prsstat) & PRSSTAT_BREN));
- while(size && (!(irqstat & IRQSTAT_TC))) {
+ do {
if(chunk_remain == 0) {
udelay(1000);
irqstat = in_be32(&regs->irqstat);
@@ -169,7 +169,7 @@ esdhc_pio_read_write(struct mmc *mmc, struct mmc_data *data)
databuf >>= 8;
size--;
chunk_remain--;
- }
+ } while(size);
blocks--;
}
} else {