Lines Matching refs:req
112 struct skcipher_request *req;
290 if (dd->req->iv && (valmr & TDES_MR_OPMOD_MASK) != TDES_MR_OPMOD_ECB)
291 atmel_tdes_write_n(dd, TDES_IV1R, (void *)dd->req->iv, 2);
379 struct atmel_tdes_reqctx *rctx = skcipher_request_ctx(dd->req);
422 struct atmel_tdes_reqctx *rctx = skcipher_request_ctx(dd->req);
560 struct skcipher_request *req = dd->req;
561 struct atmel_tdes_reqctx *rctx = skcipher_request_ctx(req);
562 struct crypto_skcipher *skcipher = crypto_skcipher_reqtfm(req);
565 if (req->cryptlen < ivsize)
569 scatterwalk_map_and_copy(req->iv, req->dst,
570 req->cryptlen - ivsize, ivsize, 0);
572 memcpy(req->iv, rctx->lastc, ivsize);
578 struct skcipher_request *req = dd->req;
579 struct atmel_tdes_reqctx *rctx = skcipher_request_ctx(req);
588 skcipher_request_complete(req, err);
592 struct skcipher_request *req)
601 if (req)
602 ret = crypto_enqueue_request(&dd->queue, &req->base);
619 req = skcipher_request_cast(async_req);
622 dd->req = req;
623 dd->total = req->cryptlen;
625 dd->in_sg = req->src;
627 dd->out_sg = req->dst;
629 rctx = skcipher_request_ctx(req);
630 ctx = crypto_skcipher_ctx(crypto_skcipher_reqtfm(req));
673 static int atmel_tdes_crypt(struct skcipher_request *req, unsigned long mode)
675 struct crypto_skcipher *skcipher = crypto_skcipher_reqtfm(req);
677 struct atmel_tdes_reqctx *rctx = skcipher_request_ctx(req);
680 if (!req->cryptlen)
685 if (!IS_ALIGNED(req->cryptlen, CFB8_BLOCK_SIZE)) {
693 if (!IS_ALIGNED(req->cryptlen, CFB16_BLOCK_SIZE)) {
701 if (!IS_ALIGNED(req->cryptlen, CFB32_BLOCK_SIZE)) {
709 if (!IS_ALIGNED(req->cryptlen, DES_BLOCK_SIZE)) {
723 if (req->cryptlen >= ivsize)
724 scatterwalk_map_and_copy(rctx->lastc, req->src,
725 req->cryptlen - ivsize,
729 return atmel_tdes_handle_queue(ctx->dd, req);
816 static int atmel_tdes_ecb_encrypt(struct skcipher_request *req)
818 return atmel_tdes_crypt(req, TDES_FLAGS_ECB | TDES_FLAGS_ENCRYPT);
821 static int atmel_tdes_ecb_decrypt(struct skcipher_request *req)
823 return atmel_tdes_crypt(req, TDES_FLAGS_ECB);
826 static int atmel_tdes_cbc_encrypt(struct skcipher_request *req)
828 return atmel_tdes_crypt(req, TDES_FLAGS_CBC | TDES_FLAGS_ENCRYPT);
831 static int atmel_tdes_cbc_decrypt(struct skcipher_request *req)
833 return atmel_tdes_crypt(req, TDES_FLAGS_CBC);
835 static int atmel_tdes_cfb_encrypt(struct skcipher_request *req)
837 return atmel_tdes_crypt(req, TDES_FLAGS_CFB64 | TDES_FLAGS_ENCRYPT);
840 static int atmel_tdes_cfb_decrypt(struct skcipher_request *req)
842 return atmel_tdes_crypt(req, TDES_FLAGS_CFB64);
845 static int atmel_tdes_cfb8_encrypt(struct skcipher_request *req)
847 return atmel_tdes_crypt(req, TDES_FLAGS_CFB8 | TDES_FLAGS_ENCRYPT);
850 static int atmel_tdes_cfb8_decrypt(struct skcipher_request *req)
852 return atmel_tdes_crypt(req, TDES_FLAGS_CFB8);
855 static int atmel_tdes_cfb16_encrypt(struct skcipher_request *req)
857 return atmel_tdes_crypt(req, TDES_FLAGS_CFB16 | TDES_FLAGS_ENCRYPT);
860 static int atmel_tdes_cfb16_decrypt(struct skcipher_request *req)
862 return atmel_tdes_crypt(req, TDES_FLAGS_CFB16);
865 static int atmel_tdes_cfb32_encrypt(struct skcipher_request *req)
867 return atmel_tdes_crypt(req, TDES_FLAGS_CFB32 | TDES_FLAGS_ENCRYPT);
870 static int atmel_tdes_cfb32_decrypt(struct skcipher_request *req)
872 return atmel_tdes_crypt(req, TDES_FLAGS_CFB32);
875 static int atmel_tdes_ofb_encrypt(struct skcipher_request *req)
877 return atmel_tdes_crypt(req, TDES_FLAGS_OFB | TDES_FLAGS_ENCRYPT);
880 static int atmel_tdes_ofb_decrypt(struct skcipher_request *req)
882 return atmel_tdes_crypt(req, TDES_FLAGS_OFB);