diff options
author | Mayuresh Kulkarni <mkulkarni@nvidia.com> | 2011-12-20 16:46:48 +0530 |
---|---|---|
committer | Varun Wadekar <vwadekar@nvidia.com> | 2011-12-21 01:27:35 -0800 |
commit | fd804ee58d3f9ce10cb2fe16aa76ae0407912d32 (patch) | |
tree | 286a629255393d395b6d3723a556ae9f57a30507 /drivers/mmc/core | |
parent | 580b837ae37abf702f9e30e5e8a2817c4449e6a1 (diff) |
mmc: core: Retry if data commands fail with error
If the data commands fail due to some error, retry the transfer.
Add 3 retries for data commands.
for bug 914934
Change-Id: I53245ddd159abdbade09f841d9490d2f106e7c88
Signed-off-by: Mayuresh Kulkarni <mkulkarni@nvidia.com>
Signed-off-by: Pavan Kunapuli <pkunapuli@nvidia.com>
Reviewed-on: http://git-master/r/71181
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
Diffstat (limited to 'drivers/mmc/core')
-rw-r--r-- | drivers/mmc/core/core.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 279b8769ffb8..344d2414f05c 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -108,6 +108,11 @@ void mmc_request_done(struct mmc_host *host, struct mmc_request *mrq) cmd->retries--; cmd->error = 0; + if (mrq->data) { + mrq->data->error = 0; + if (mrq->stop) + mrq->stop->error = 0; + } host->ops->request(host, mrq); } else { led_trigger_event(host->led, LED_OFF); |