These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / crypto / qce / sha.c
index 5c5df1d..0c9973e 100644 (file)
@@ -51,9 +51,8 @@ static void qce_ahash_done(void *data)
        if (error)
                dev_dbg(qce->dev, "ahash dma termination error (%d)\n", error);
 
-       qce_unmapsg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE,
-                   rctx->src_chained);
-       qce_unmapsg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE, 0);
+       dma_unmap_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE);
+       dma_unmap_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE);
 
        memcpy(rctx->digest, result->auth_iv, digestsize);
        if (req->result)
@@ -92,16 +91,14 @@ static int qce_ahash_async_req_handle(struct crypto_async_request *async_req)
                rctx->authklen = AES_KEYSIZE_128;
        }
 
-       rctx->src_nents = qce_countsg(req->src, req->nbytes,
-                                     &rctx->src_chained);
-       ret = qce_mapsg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE,
-                       rctx->src_chained);
+       rctx->src_nents = sg_nents_for_len(req->src, req->nbytes);
+       ret = dma_map_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE);
        if (ret < 0)
                return ret;
 
        sg_init_one(&rctx->result_sg, qce->dma.result_buf, QCE_RESULT_BUF_SZ);
 
-       ret = qce_mapsg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE, 0);
+       ret = dma_map_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE);
        if (ret < 0)
                goto error_unmap_src;
 
@@ -121,10 +118,9 @@ static int qce_ahash_async_req_handle(struct crypto_async_request *async_req)
 error_terminate:
        qce_dma_terminate_all(&qce->dma);
 error_unmap_dst:
-       qce_unmapsg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE, 0);
+       dma_unmap_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE);
 error_unmap_src:
-       qce_unmapsg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE,
-                   rctx->src_chained);
+       dma_unmap_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE);
        return ret;
 }
 
@@ -296,7 +292,7 @@ static int qce_ahash_update(struct ahash_request *req)
        if (rctx->buflen) {
                sg_init_table(rctx->sg, 2);
                sg_set_buf(rctx->sg, rctx->tmpbuf, rctx->buflen);
-               scatterwalk_sg_chain(rctx->sg, 2, req->src);
+               sg_chain(rctx->sg, 2, req->src);
                req->src = rctx->sg;
        }