Lines Matching refs:sreq
234 struct safexcel_ahash_req *sreq = ahash_request_ctx_dma(areq); in safexcel_handle_req_result() local
251 if (sreq->nents) { in safexcel_handle_req_result()
252 dma_unmap_sg(priv->dev, areq->src, sreq->nents, DMA_TO_DEVICE); in safexcel_handle_req_result()
253 sreq->nents = 0; in safexcel_handle_req_result()
256 if (sreq->result_dma) { in safexcel_handle_req_result()
257 dma_unmap_single(priv->dev, sreq->result_dma, sreq->digest_sz, in safexcel_handle_req_result()
259 sreq->result_dma = 0; in safexcel_handle_req_result()
262 if (sreq->cache_dma) { in safexcel_handle_req_result()
263 dma_unmap_single(priv->dev, sreq->cache_dma, sreq->cache_sz, in safexcel_handle_req_result()
265 sreq->cache_dma = 0; in safexcel_handle_req_result()
266 sreq->cache_sz = 0; in safexcel_handle_req_result()
269 if (sreq->finish) { in safexcel_handle_req_result()
270 if (sreq->hmac && in safexcel_handle_req_result()
271 (sreq->digest != CONTEXT_CONTROL_DIGEST_HMAC)) { in safexcel_handle_req_result()
273 memcpy(sreq->cache, sreq->state, in safexcel_handle_req_result()
276 memcpy(sreq->state, &ctx->base.opad, sreq->digest_sz); in safexcel_handle_req_result()
278 sreq->len = sreq->block_sz + in safexcel_handle_req_result()
280 sreq->processed = sreq->block_sz; in safexcel_handle_req_result()
281 sreq->hmac = 0; in safexcel_handle_req_result()
292 if (unlikely(sreq->digest == CONTEXT_CONTROL_DIGEST_XCM && in safexcel_handle_req_result()
295 *(__le32 *)areq->result = ~sreq->state[0]; in safexcel_handle_req_result()
297 memcpy(areq->result, sreq->state, in safexcel_handle_req_result()
302 cache_len = safexcel_queued_len(sreq); in safexcel_handle_req_result()
304 memcpy(sreq->cache, sreq->cache_next, cache_len); in safexcel_handle_req_result()