|
@@ -2322,6 +2322,22 @@ static struct talitos_alg_template driver_algs[] = {
|
|
|
DESC_HDR_MODE1_MDEU_MD5_HMAC,
|
|
|
},
|
|
|
/* ABLKCIPHER algorithms. */
|
|
|
+ { .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
+ .alg.crypto = {
|
|
|
+ .cra_name = "ecb(aes)",
|
|
|
+ .cra_driver_name = "ecb-aes-talitos",
|
|
|
+ .cra_blocksize = AES_BLOCK_SIZE,
|
|
|
+ .cra_flags = CRYPTO_ALG_TYPE_ABLKCIPHER |
|
|
|
+ CRYPTO_ALG_ASYNC,
|
|
|
+ .cra_ablkcipher = {
|
|
|
+ .min_keysize = AES_MIN_KEY_SIZE,
|
|
|
+ .max_keysize = AES_MAX_KEY_SIZE,
|
|
|
+ .ivsize = AES_BLOCK_SIZE,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ .desc_hdr_template = DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU |
|
|
|
+ DESC_HDR_SEL0_AESU,
|
|
|
+ },
|
|
|
{ .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
.alg.crypto = {
|
|
|
.cra_name = "cbc(aes)",
|
|
@@ -2339,6 +2355,73 @@ static struct talitos_alg_template driver_algs[] = {
|
|
|
DESC_HDR_SEL0_AESU |
|
|
|
DESC_HDR_MODE0_AESU_CBC,
|
|
|
},
|
|
|
+ { .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
+ .alg.crypto = {
|
|
|
+ .cra_name = "ctr(aes)",
|
|
|
+ .cra_driver_name = "ctr-aes-talitos",
|
|
|
+ .cra_blocksize = AES_BLOCK_SIZE,
|
|
|
+ .cra_flags = CRYPTO_ALG_TYPE_ABLKCIPHER |
|
|
|
+ CRYPTO_ALG_ASYNC,
|
|
|
+ .cra_ablkcipher = {
|
|
|
+ .min_keysize = AES_MIN_KEY_SIZE,
|
|
|
+ .max_keysize = AES_MAX_KEY_SIZE,
|
|
|
+ .ivsize = AES_BLOCK_SIZE,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ .desc_hdr_template = DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU |
|
|
|
+ DESC_HDR_SEL0_AESU |
|
|
|
+ DESC_HDR_MODE0_AESU_CTR,
|
|
|
+ },
|
|
|
+ { .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
+ .alg.crypto = {
|
|
|
+ .cra_name = "ecb(des)",
|
|
|
+ .cra_driver_name = "ecb-des-talitos",
|
|
|
+ .cra_blocksize = DES_BLOCK_SIZE,
|
|
|
+ .cra_flags = CRYPTO_ALG_TYPE_ABLKCIPHER |
|
|
|
+ CRYPTO_ALG_ASYNC,
|
|
|
+ .cra_ablkcipher = {
|
|
|
+ .min_keysize = DES_KEY_SIZE,
|
|
|
+ .max_keysize = DES_KEY_SIZE,
|
|
|
+ .ivsize = DES_BLOCK_SIZE,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ .desc_hdr_template = DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU |
|
|
|
+ DESC_HDR_SEL0_DEU,
|
|
|
+ },
|
|
|
+ { .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
+ .alg.crypto = {
|
|
|
+ .cra_name = "cbc(des)",
|
|
|
+ .cra_driver_name = "cbc-des-talitos",
|
|
|
+ .cra_blocksize = DES_BLOCK_SIZE,
|
|
|
+ .cra_flags = CRYPTO_ALG_TYPE_ABLKCIPHER |
|
|
|
+ CRYPTO_ALG_ASYNC,
|
|
|
+ .cra_ablkcipher = {
|
|
|
+ .min_keysize = DES_KEY_SIZE,
|
|
|
+ .max_keysize = DES_KEY_SIZE,
|
|
|
+ .ivsize = DES_BLOCK_SIZE,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ .desc_hdr_template = DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU |
|
|
|
+ DESC_HDR_SEL0_DEU |
|
|
|
+ DESC_HDR_MODE0_DEU_CBC,
|
|
|
+ },
|
|
|
+ { .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
+ .alg.crypto = {
|
|
|
+ .cra_name = "ecb(des3_ede)",
|
|
|
+ .cra_driver_name = "ecb-3des-talitos",
|
|
|
+ .cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
|
|
+ .cra_flags = CRYPTO_ALG_TYPE_ABLKCIPHER |
|
|
|
+ CRYPTO_ALG_ASYNC,
|
|
|
+ .cra_ablkcipher = {
|
|
|
+ .min_keysize = DES3_EDE_KEY_SIZE,
|
|
|
+ .max_keysize = DES3_EDE_KEY_SIZE,
|
|
|
+ .ivsize = DES3_EDE_BLOCK_SIZE,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ .desc_hdr_template = DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU |
|
|
|
+ DESC_HDR_SEL0_DEU |
|
|
|
+ DESC_HDR_MODE0_DEU_3DES,
|
|
|
+ },
|
|
|
{ .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
|
|
.alg.crypto = {
|
|
|
.cra_name = "cbc(des3_ede)",
|