crypto: talitos - prepare for adding ahash algorithms
No functional changes. Use a union in talitos_alg_template for the crypto_alg so that we can add a member later for ahash_alg. Signed-off-by: Lee Nipper <lee.nipper@gmail.com> Acked-By: Kim Phillips <kim.phillips@freescale.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
0a625fd2ab
commit
d5e4aaefd9
1 changed files with 21 additions and 18 deletions
|
@ -1479,14 +1479,17 @@ static int ablkcipher_decrypt(struct ablkcipher_request *areq)
|
||||||
}
|
}
|
||||||
|
|
||||||
struct talitos_alg_template {
|
struct talitos_alg_template {
|
||||||
struct crypto_alg alg;
|
u32 type;
|
||||||
|
union {
|
||||||
|
struct crypto_alg crypto;
|
||||||
|
} alg;
|
||||||
__be32 desc_hdr_template;
|
__be32 desc_hdr_template;
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct talitos_alg_template driver_algs[] = {
|
static struct talitos_alg_template driver_algs[] = {
|
||||||
/* AEAD algorithms. These use a single-pass ipsec_esp descriptor */
|
/* AEAD algorithms. These use a single-pass ipsec_esp descriptor */
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_AEAD,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "authenc(hmac(sha1),cbc(aes))",
|
.cra_name = "authenc(hmac(sha1),cbc(aes))",
|
||||||
.cra_driver_name = "authenc-hmac-sha1-cbc-aes-talitos",
|
.cra_driver_name = "authenc-hmac-sha1-cbc-aes-talitos",
|
||||||
.cra_blocksize = AES_BLOCK_SIZE,
|
.cra_blocksize = AES_BLOCK_SIZE,
|
||||||
|
@ -1511,8 +1514,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_MODE1_MDEU_PAD |
|
DESC_HDR_MODE1_MDEU_PAD |
|
||||||
DESC_HDR_MODE1_MDEU_SHA1_HMAC,
|
DESC_HDR_MODE1_MDEU_SHA1_HMAC,
|
||||||
},
|
},
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_AEAD,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "authenc(hmac(sha1),cbc(des3_ede))",
|
.cra_name = "authenc(hmac(sha1),cbc(des3_ede))",
|
||||||
.cra_driver_name = "authenc-hmac-sha1-cbc-3des-talitos",
|
.cra_driver_name = "authenc-hmac-sha1-cbc-3des-talitos",
|
||||||
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
||||||
|
@ -1538,8 +1541,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_MODE1_MDEU_PAD |
|
DESC_HDR_MODE1_MDEU_PAD |
|
||||||
DESC_HDR_MODE1_MDEU_SHA1_HMAC,
|
DESC_HDR_MODE1_MDEU_SHA1_HMAC,
|
||||||
},
|
},
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_AEAD,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "authenc(hmac(sha256),cbc(aes))",
|
.cra_name = "authenc(hmac(sha256),cbc(aes))",
|
||||||
.cra_driver_name = "authenc-hmac-sha256-cbc-aes-talitos",
|
.cra_driver_name = "authenc-hmac-sha256-cbc-aes-talitos",
|
||||||
.cra_blocksize = AES_BLOCK_SIZE,
|
.cra_blocksize = AES_BLOCK_SIZE,
|
||||||
|
@ -1564,8 +1567,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_MODE1_MDEU_PAD |
|
DESC_HDR_MODE1_MDEU_PAD |
|
||||||
DESC_HDR_MODE1_MDEU_SHA256_HMAC,
|
DESC_HDR_MODE1_MDEU_SHA256_HMAC,
|
||||||
},
|
},
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_AEAD,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "authenc(hmac(sha256),cbc(des3_ede))",
|
.cra_name = "authenc(hmac(sha256),cbc(des3_ede))",
|
||||||
.cra_driver_name = "authenc-hmac-sha256-cbc-3des-talitos",
|
.cra_driver_name = "authenc-hmac-sha256-cbc-3des-talitos",
|
||||||
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
||||||
|
@ -1591,8 +1594,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_MODE1_MDEU_PAD |
|
DESC_HDR_MODE1_MDEU_PAD |
|
||||||
DESC_HDR_MODE1_MDEU_SHA256_HMAC,
|
DESC_HDR_MODE1_MDEU_SHA256_HMAC,
|
||||||
},
|
},
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_AEAD,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "authenc(hmac(md5),cbc(aes))",
|
.cra_name = "authenc(hmac(md5),cbc(aes))",
|
||||||
.cra_driver_name = "authenc-hmac-md5-cbc-aes-talitos",
|
.cra_driver_name = "authenc-hmac-md5-cbc-aes-talitos",
|
||||||
.cra_blocksize = AES_BLOCK_SIZE,
|
.cra_blocksize = AES_BLOCK_SIZE,
|
||||||
|
@ -1617,8 +1620,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_MODE1_MDEU_PAD |
|
DESC_HDR_MODE1_MDEU_PAD |
|
||||||
DESC_HDR_MODE1_MDEU_MD5_HMAC,
|
DESC_HDR_MODE1_MDEU_MD5_HMAC,
|
||||||
},
|
},
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_AEAD,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "authenc(hmac(md5),cbc(des3_ede))",
|
.cra_name = "authenc(hmac(md5),cbc(des3_ede))",
|
||||||
.cra_driver_name = "authenc-hmac-md5-cbc-3des-talitos",
|
.cra_driver_name = "authenc-hmac-md5-cbc-3des-talitos",
|
||||||
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
||||||
|
@ -1645,8 +1648,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_MODE1_MDEU_MD5_HMAC,
|
DESC_HDR_MODE1_MDEU_MD5_HMAC,
|
||||||
},
|
},
|
||||||
/* ABLKCIPHER algorithms. */
|
/* ABLKCIPHER algorithms. */
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "cbc(aes)",
|
.cra_name = "cbc(aes)",
|
||||||
.cra_driver_name = "cbc-aes-talitos",
|
.cra_driver_name = "cbc-aes-talitos",
|
||||||
.cra_blocksize = AES_BLOCK_SIZE,
|
.cra_blocksize = AES_BLOCK_SIZE,
|
||||||
|
@ -1667,8 +1670,8 @@ static struct talitos_alg_template driver_algs[] = {
|
||||||
DESC_HDR_SEL0_AESU |
|
DESC_HDR_SEL0_AESU |
|
||||||
DESC_HDR_MODE0_AESU_CBC,
|
DESC_HDR_MODE0_AESU_CBC,
|
||||||
},
|
},
|
||||||
{
|
{ .type = CRYPTO_ALG_TYPE_ABLKCIPHER,
|
||||||
.alg = {
|
.alg.crypto = {
|
||||||
.cra_name = "cbc(des3_ede)",
|
.cra_name = "cbc(des3_ede)",
|
||||||
.cra_driver_name = "cbc-3des-talitos",
|
.cra_driver_name = "cbc-3des-talitos",
|
||||||
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
||||||
|
@ -1789,7 +1792,7 @@ static struct talitos_crypto_alg *talitos_alg_alloc(struct device *dev,
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
||||||
alg = &t_alg->crypto_alg;
|
alg = &t_alg->crypto_alg;
|
||||||
*alg = template->alg;
|
*alg = template->alg.crypto;
|
||||||
|
|
||||||
alg->cra_module = THIS_MODULE;
|
alg->cra_module = THIS_MODULE;
|
||||||
alg->cra_init = talitos_cra_init;
|
alg->cra_init = talitos_cra_init;
|
||||||
|
|
Loading…
Add table
Reference in a new issue