Lines Matching refs:req
189 void (*copy_hash)(struct ahash_request *req, int out);
227 struct ahash_request *req;
244 static int omap_sham_enqueue(struct ahash_request *req, unsigned int op);
245 static void omap_sham_finish_req(struct ahash_request *req, int err);
281 static void omap_sham_copy_hash_omap2(struct ahash_request *req, int out)
283 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
296 static void omap_sham_copy_hash_omap4(struct ahash_request *req, int out)
298 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
303 struct crypto_ahash *tfm = crypto_ahash_reqtfm(dd->req);
318 omap_sham_copy_hash_omap2(req, out);
321 static void omap_sham_copy_ready_hash(struct ahash_request *req)
323 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
325 u32 *hash = (u32 *)req->result;
368 struct omap_sham_reqctx *ctx = ahash_request_ctx(dd->req);
437 struct omap_sham_reqctx *ctx = ahash_request_ctx(dd->req);
450 struct crypto_ahash *tfm = crypto_ahash_reqtfm(dd->req);
503 struct omap_sham_reqctx *ctx = ahash_request_ctx(dd->req);
570 struct omap_sham_reqctx *ctx = ahash_request_ctx(dd->req);
843 struct ahash_request *req = container_of(areq, struct ahash_request,
845 struct omap_sham_reqctx *rctx = ahash_request_ctx(req);
858 nbytes += req->nbytes - rctx->offset;
870 if (update && req->nbytes && (!IS_ALIGNED(rctx->bufcnt, bs))) {
873 if (len > req->nbytes)
874 len = req->nbytes;
875 scatterwalk_map_and_copy(rctx->buffer + rctx->bufcnt, req->src,
884 ret = omap_sham_align_sgs(req->src, nbytes, bs, final, rctx);
894 req->src,
895 req->nbytes - hash_later,
913 struct omap_sham_reqctx *ctx = ahash_request_ctx(dd->req);
938 static int omap_sham_init(struct ahash_request *req)
940 struct crypto_ahash *tfm = crypto_ahash_reqtfm(req);
942 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1007 struct ahash_request *req = dd->req;
1008 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1033 struct ahash_request *req = dd->req;
1034 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1061 struct ahash_request *req = container_of(areq, struct ahash_request,
1063 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1083 dd->req = req;
1086 dd->pdata->copy_hash(req, 0);
1094 omap_sham_finish_req(req, err);
1099 static int omap_sham_finish_hmac(struct ahash_request *req)
1101 struct omap_sham_ctx *tctx = crypto_tfm_ctx(req->base.tfm);
1111 crypto_shash_finup(shash, req->result, ds, req->result);
1114 static int omap_sham_finish(struct ahash_request *req)
1116 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1121 omap_sham_copy_ready_hash(req);
1124 err = omap_sham_finish_hmac(req);
1132 static void omap_sham_finish_req(struct ahash_request *req, int err)
1134 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1151 dd->pdata->copy_hash(req, 1);
1155 omap_sham_enqueue(req, ctx->op);
1161 err = omap_sham_finish(req);
1175 crypto_finalize_hash_request(dd->engine, req, err);
1179 struct ahash_request *req)
1181 return crypto_transfer_hash_request_to_engine(dd->engine, req);
1184 static int omap_sham_enqueue(struct ahash_request *req, unsigned int op)
1186 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1191 return omap_sham_handle_queue(dd, req);
1194 static int omap_sham_update(struct ahash_request *req)
1196 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1199 if (!req->nbytes)
1202 if (ctx->bufcnt + req->nbytes <= ctx->buflen) {
1203 scatterwalk_map_and_copy(ctx->buffer + ctx->bufcnt, req->src,
1204 0, req->nbytes, 0);
1205 ctx->bufcnt += req->nbytes;
1212 return omap_sham_enqueue(req, OP_UPDATE);
1215 static int omap_sham_final_shash(struct ahash_request *req)
1217 struct omap_sham_ctx *tctx = crypto_tfm_ctx(req->base.tfm);
1218 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1231 ctx->bufcnt - offset, req->result);
1234 static int omap_sham_final(struct ahash_request *req)
1236 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1251 return omap_sham_final_shash(req);
1253 return omap_sham_enqueue(req, OP_FINAL);
1256 return omap_sham_finish(req);
1259 static int omap_sham_finup(struct ahash_request *req)
1261 struct omap_sham_reqctx *ctx = ahash_request_ctx(req);
1266 err1 = omap_sham_update(req);
1273 err2 = omap_sham_final(req);
1278 static int omap_sham_digest(struct ahash_request *req)
1280 return omap_sham_init(req) ?: omap_sham_finup(req);
1402 static int omap_sham_export(struct ahash_request *req, void *out)
1404 struct omap_sham_reqctx *rctx = ahash_request_ctx(req);
1411 static int omap_sham_import(struct ahash_request *req, const void *in)
1413 struct omap_sham_reqctx *rctx = ahash_request_ctx(req);
1749 omap_sham_finish_req(dd->req, err);