summaryrefslogtreecommitdiff
path: root/drivers/dma
diff options
context:
space:
mode:
authorIuliana Prodan <iuliana.prodan@nxp.com>2020-03-13 16:35:51 +0200
committerIuliana Prodan <iuliana.prodan@nxp.com>2020-03-19 11:07:32 +0200
commit9d481aee7412a960c02d73531d4e6565ec3e0bdb (patch)
treec8574d6006a790c257086d0f946f6662af6ab9a2 /drivers/dma
parent4031641e56377cc34d34189429e0e29c575e9b12 (diff)
MLK-23620-2 dma: caam - update the check for the return code of caam_jr_enqueue function
In commit 4d370a103695 ("crypto: caam - change return code in caam_jr_enqueue function"), the return code of caam_jr_enqueue function was changed from 0 to -EINPROGRESS, in case of success, -ENOSPC in case the CAAM is busy (has no space left in job ring queue), -EIO if it cannot map the caller's descriptor. Update the case for break from the loop of caam_dma_prep_memcpy based on the new return code from caam_jr_enqueue function. Fixes: 4d370a103695 ("crypto: caam - change return code in caam_jr_enqueue function") Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/caam_dma.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/dma/caam_dma.c b/drivers/dma/caam_dma.c
index c95b9679694e..2cd47c9b3ec5 100644
--- a/drivers/dma/caam_dma.c
+++ b/drivers/dma/caam_dma.c
@@ -219,8 +219,9 @@ static void caam_dma_issue_pending(struct dma_chan *chan)
spin_lock_bh(&ctx->edesc_lock);
list_for_each_entry_safe(edesc, _edesc, &ctx->pending_q, node) {
- if (caam_jr_enqueue(ctx->jrdev, edesc->jd,
- caam_dma_done, edesc) < 0)
+ int ret = caam_jr_enqueue(ctx->jrdev, edesc->jd,
+ caam_dma_done, edesc);
+ if (ret != -EINPROGRESS)
break;
list_del(&edesc->node);
}