mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-05 22:28:00 +00:00
mmc: msm_sdcc: Fix issue where we might not end a sucessfull request
Signed-off-by: San Mehat <san@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
This commit is contained in:
parent
f4748499d3
commit
b3b0ca84cf
1 changed files with 4 additions and 3 deletions
|
@ -208,6 +208,7 @@ msmsdcc_dma_complete_func(struct msm_dmov_cmd *cmd,
|
||||||
|
|
||||||
mrq = host->curr.mrq;
|
mrq = host->curr.mrq;
|
||||||
BUG_ON(!mrq);
|
BUG_ON(!mrq);
|
||||||
|
WARN_ON(!mrq->data);
|
||||||
|
|
||||||
if (!(result & DMOV_RSLT_VALID)) {
|
if (!(result & DMOV_RSLT_VALID)) {
|
||||||
pr_err("msmsdcc: Invalid DataMover result\n");
|
pr_err("msmsdcc: Invalid DataMover result\n");
|
||||||
|
@ -719,14 +720,13 @@ static void
|
||||||
msmsdcc_handle_irq_data(struct msmsdcc_host *host, u32 status,
|
msmsdcc_handle_irq_data(struct msmsdcc_host *host, u32 status,
|
||||||
void __iomem *base)
|
void __iomem *base)
|
||||||
{
|
{
|
||||||
struct mmc_data *data;
|
struct mmc_data *data = host->curr.data;
|
||||||
|
|
||||||
if (status & (MCI_CMDSENT | MCI_CMDRESPEND | MCI_CMDCRCFAIL |
|
if (status & (MCI_CMDSENT | MCI_CMDRESPEND | MCI_CMDCRCFAIL |
|
||||||
MCI_CMDTIMEOUT) && host->curr.cmd) {
|
MCI_CMDTIMEOUT) && host->curr.cmd) {
|
||||||
msmsdcc_do_cmdirq(host, status);
|
msmsdcc_do_cmdirq(host, status);
|
||||||
}
|
}
|
||||||
|
|
||||||
data = host->curr.data;
|
|
||||||
if (!data)
|
if (!data)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -739,6 +739,7 @@ msmsdcc_handle_irq_data(struct msmsdcc_host *host, u32 status,
|
||||||
msm_dmov_stop_cmd(host->dma.channel,
|
msm_dmov_stop_cmd(host->dma.channel,
|
||||||
&host->dma.hdr, 0);
|
&host->dma.hdr, 0);
|
||||||
else {
|
else {
|
||||||
|
if (host->curr.data)
|
||||||
msmsdcc_stop_data(host);
|
msmsdcc_stop_data(host);
|
||||||
if (!data->stop)
|
if (!data->stop)
|
||||||
msmsdcc_request_end(host, data->mrq);
|
msmsdcc_request_end(host, data->mrq);
|
||||||
|
|
Loading…
Add table
Reference in a new issue