Lines Matching refs:rctx
42 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_done() local
54 dma_unmap_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE); in qce_ahash_done()
55 dma_unmap_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE); in qce_ahash_done()
57 memcpy(rctx->digest, result->auth_iv, digestsize); in qce_ahash_done()
61 rctx->byte_count[0] = cpu_to_be32(result->auth_byte_count[0]); in qce_ahash_done()
62 rctx->byte_count[1] = cpu_to_be32(result->auth_byte_count[1]); in qce_ahash_done()
68 req->src = rctx->src_orig; in qce_ahash_done()
69 req->nbytes = rctx->nbytes_orig; in qce_ahash_done()
70 rctx->last_blk = false; in qce_ahash_done()
71 rctx->first_blk = false; in qce_ahash_done()
79 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_async_req_handle() local
83 unsigned long flags = rctx->flags; in qce_ahash_async_req_handle()
87 rctx->authkey = ctx->authkey; in qce_ahash_async_req_handle()
88 rctx->authklen = QCE_SHA_HMAC_KEY_SIZE; in qce_ahash_async_req_handle()
90 rctx->authkey = ctx->authkey; in qce_ahash_async_req_handle()
91 rctx->authklen = AES_KEYSIZE_128; in qce_ahash_async_req_handle()
94 rctx->src_nents = sg_nents_for_len(req->src, req->nbytes); in qce_ahash_async_req_handle()
95 if (rctx->src_nents < 0) { in qce_ahash_async_req_handle()
97 return rctx->src_nents; in qce_ahash_async_req_handle()
100 ret = dma_map_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE); in qce_ahash_async_req_handle()
104 sg_init_one(&rctx->result_sg, qce->dma.result_buf, QCE_RESULT_BUF_SZ); in qce_ahash_async_req_handle()
106 ret = dma_map_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE); in qce_ahash_async_req_handle()
110 ret = qce_dma_prep_sgs(&qce->dma, req->src, rctx->src_nents, in qce_ahash_async_req_handle()
111 &rctx->result_sg, 1, qce_ahash_done, async_req); in qce_ahash_async_req_handle()
126 dma_unmap_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE); in qce_ahash_async_req_handle()
128 dma_unmap_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE); in qce_ahash_async_req_handle()
134 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_init() local
138 memset(rctx, 0, sizeof(*rctx)); in qce_ahash_init()
139 rctx->first_blk = true; in qce_ahash_init()
140 rctx->last_blk = false; in qce_ahash_init()
141 rctx->flags = tmpl->alg_flags; in qce_ahash_init()
142 memcpy(rctx->digest, std_iv, sizeof(rctx->digest)); in qce_ahash_init()
150 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_export() local
151 unsigned long flags = rctx->flags; in qce_ahash_export()
159 out_state->count = rctx->count; in qce_ahash_export()
161 rctx->digest, digestsize); in qce_ahash_export()
162 memcpy(out_state->buffer, rctx->buf, blocksize); in qce_ahash_export()
166 out_state->count = rctx->count; in qce_ahash_export()
168 rctx->digest, digestsize); in qce_ahash_export()
169 memcpy(out_state->buf, rctx->buf, blocksize); in qce_ahash_export()
181 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_import_common() local
187 rctx->count = in_count; in qce_import_common()
188 memcpy(rctx->buf, buffer, blocksize); in qce_import_common()
191 rctx->first_blk = 1; in qce_import_common()
193 rctx->first_blk = 0; in qce_import_common()
203 rctx->byte_count[0] = (__force __be32)(count & ~SHA_PADDING_MASK); in qce_import_common()
204 rctx->byte_count[1] = (__force __be32)(count >> 32); in qce_import_common()
205 qce_cpu_to_be32p_array((__be32 *)rctx->digest, (const u8 *)state, in qce_import_common()
207 rctx->buflen = (unsigned int)(in_count & (blocksize - 1)); in qce_import_common()
214 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_import() local
215 unsigned long flags = rctx->flags; in qce_ahash_import()
237 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_update() local
247 rctx->count += req->nbytes; in qce_ahash_update()
250 total = req->nbytes + rctx->buflen; in qce_ahash_update()
253 scatterwalk_map_and_copy(rctx->buf + rctx->buflen, req->src, in qce_ahash_update()
255 rctx->buflen += req->nbytes; in qce_ahash_update()
260 rctx->src_orig = req->src; in qce_ahash_update()
261 rctx->nbytes_orig = req->nbytes; in qce_ahash_update()
267 if (rctx->buflen) in qce_ahash_update()
268 memcpy(rctx->tmpbuf, rctx->buf, rctx->buflen); in qce_ahash_update()
274 scatterwalk_map_and_copy(rctx->buf, req->src, src_offset, in qce_ahash_update()
281 len = rctx->buflen; in qce_ahash_update()
297 if (rctx->buflen) { in qce_ahash_update()
298 sg_init_table(rctx->sg, 2); in qce_ahash_update()
299 sg_set_buf(rctx->sg, rctx->tmpbuf, rctx->buflen); in qce_ahash_update()
300 sg_chain(rctx->sg, 2, req->src); in qce_ahash_update()
301 req->src = rctx->sg; in qce_ahash_update()
305 rctx->buflen = hash_later; in qce_ahash_update()
312 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_final() local
316 if (!rctx->buflen) in qce_ahash_final()
319 rctx->last_blk = true; in qce_ahash_final()
321 rctx->src_orig = req->src; in qce_ahash_final()
322 rctx->nbytes_orig = req->nbytes; in qce_ahash_final()
324 memcpy(rctx->tmpbuf, rctx->buf, rctx->buflen); in qce_ahash_final()
325 sg_init_one(rctx->sg, rctx->tmpbuf, rctx->buflen); in qce_ahash_final()
327 req->src = rctx->sg; in qce_ahash_final()
328 req->nbytes = rctx->buflen; in qce_ahash_final()
335 struct qce_sha_reqctx *rctx = ahash_request_ctx(req); in qce_ahash_digest() local
344 rctx->src_orig = req->src; in qce_ahash_digest()
345 rctx->nbytes_orig = req->nbytes; in qce_ahash_digest()
346 rctx->first_blk = true; in qce_ahash_digest()
347 rctx->last_blk = true; in qce_ahash_digest()