Lines Matching refs:tfm_ctx
80 struct zynqmp_aead_tfm_ctx *tfm_ctx = crypto_aead_ctx(aead);
82 struct device *dev = tfm_ctx->dev;
92 if (tfm_ctx->keysrc == ZYNQMP_AES_KUP_KEY)
116 hwreq->keysrc = tfm_ctx->keysrc;
126 tfm_ctx->key, ZYNQMP_AES_KEY_SIZE);
177 static int zynqmp_fallback_check(struct zynqmp_aead_tfm_ctx *tfm_ctx,
183 if (tfm_ctx->authsize != ZYNQMP_AES_AUTH_SIZE)
186 if (tfm_ctx->keysrc == ZYNQMP_AES_KUP_KEY &&
187 tfm_ctx->keylen != ZYNQMP_AES_KEY_SIZE) {
210 struct zynqmp_aead_tfm_ctx *tfm_ctx = crypto_aead_ctx(aead);
216 need_fallback = zynqmp_fallback_check(tfm_ctx, areq);
219 aead_request_set_tfm(subreq, tfm_ctx->fbk_cipher);
242 struct zynqmp_aead_tfm_ctx *tfm_ctx =
251 tfm_ctx->keysrc = (enum zynqmp_aead_keysrc)keysrc;
253 tfm_ctx->keylen = keylen;
256 tfm_ctx->keylen = keylen;
258 tfm_ctx->keysrc = ZYNQMP_AES_KUP_KEY;
259 memcpy(tfm_ctx->key, key, keylen);
263 tfm_ctx->fbk_cipher->base.crt_flags &= ~CRYPTO_TFM_REQ_MASK;
264 tfm_ctx->fbk_cipher->base.crt_flags |= (aead->base.crt_flags &
267 return crypto_aead_setkey(tfm_ctx->fbk_cipher, key, keylen);
274 struct zynqmp_aead_tfm_ctx *tfm_ctx =
277 tfm_ctx->authsize = authsize;
278 return crypto_aead_setauthsize(tfm_ctx->fbk_cipher, authsize);
310 struct zynqmp_aead_tfm_ctx *tfm_ctx =
316 tfm_ctx->dev = drv_ctx->dev;
318 tfm_ctx->engine_ctx.op.do_one_request = zynqmp_handle_aes_req;
319 tfm_ctx->engine_ctx.op.prepare_request = NULL;
320 tfm_ctx->engine_ctx.op.unprepare_request = NULL;
322 tfm_ctx->fbk_cipher = crypto_alloc_aead(drv_ctx->alg.aead.base.cra_name,
326 if (IS_ERR(tfm_ctx->fbk_cipher)) {
329 return PTR_ERR(tfm_ctx->fbk_cipher);
335 crypto_aead_reqsize(tfm_ctx->fbk_cipher)));
342 struct zynqmp_aead_tfm_ctx *tfm_ctx =
345 if (tfm_ctx->fbk_cipher) {
346 crypto_free_aead(tfm_ctx->fbk_cipher);
347 tfm_ctx->fbk_cipher = NULL;
349 memzero_explicit(tfm_ctx, sizeof(struct zynqmp_aead_tfm_ctx));