Backport minor fixes for the eip93 driver from upstream. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl> Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Link: https://github.com/openwrt/openwrt/pull/21078 Signed-off-by: Robert Marko <robimarko@gmail.com>
59 lines
2.3 KiB
Diff
59 lines
2.3 KiB
Diff
From 5377032914b29b4643adece0ff1dfc67e36700f4 Mon Sep 17 00:00:00 2001
|
|
From: Aleksander Jan Bajkowski <olek2@wp.pl>
|
|
Date: Fri, 6 Mar 2026 23:17:40 +0100
|
|
Subject: [PATCH] crypto: inside-secure/eip93 - register hash before
|
|
authenc algorithms
|
|
|
|
Register hash before hmac and authenc algorithms. This will ensure
|
|
selftests pass at startup. Previously, selftests failed on the
|
|
crypto_alloc_ahash() function since the associated algorithm was
|
|
not yet registered.
|
|
|
|
Fixes following error:
|
|
...
|
|
[ 18.375811] alg: self-tests for authenc(hmac(sha1),cbc(aes)) using authenc(hmac(sha1-eip93),cbc(aes-eip93)) failed (rc=-2)
|
|
[ 18.382140] alg: self-tests for authenc(hmac(sha224),rfc3686(ctr(aes))) using authenc(hmac(sha224-eip93),rfc3686(ctr(aes-eip93))) failed (rc=-2)
|
|
[ 18.395029] alg: aead: authenc(hmac(sha256-eip93),cbc(des-eip93)) setkey failed on test vector 0; expected_error=0, actual_error=-2, flags=0x1
|
|
[ 18.409734] alg: aead: authenc(hmac(md5-eip93),cbc(des3_ede-eip93)) setkey failed on test vector 0; expected_error=0, actual_error=-2, flags=0x1
|
|
...
|
|
|
|
Fixes: 9739f5f93b78 ("crypto: eip93 - Add Inside Secure SafeXcel EIP-93 crypto engine support")
|
|
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
|
|
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
|
---
|
|
drivers/crypto/inside-secure/eip93/eip93-main.c | 16 ++++++++--------
|
|
1 file changed, 8 insertions(+), 8 deletions(-)
|
|
|
|
--- a/drivers/crypto/inside-secure/eip93/eip93-main.c
|
|
+++ b/drivers/crypto/inside-secure/eip93/eip93-main.c
|
|
@@ -36,6 +36,14 @@ static struct eip93_alg_template *eip93_
|
|
&eip93_alg_cbc_aes,
|
|
&eip93_alg_ctr_aes,
|
|
&eip93_alg_rfc3686_aes,
|
|
+ &eip93_alg_md5,
|
|
+ &eip93_alg_sha1,
|
|
+ &eip93_alg_sha224,
|
|
+ &eip93_alg_sha256,
|
|
+ &eip93_alg_hmac_md5,
|
|
+ &eip93_alg_hmac_sha1,
|
|
+ &eip93_alg_hmac_sha224,
|
|
+ &eip93_alg_hmac_sha256,
|
|
&eip93_alg_authenc_hmac_md5_cbc_des,
|
|
&eip93_alg_authenc_hmac_sha1_cbc_des,
|
|
&eip93_alg_authenc_hmac_sha224_cbc_des,
|
|
@@ -52,14 +60,6 @@ static struct eip93_alg_template *eip93_
|
|
&eip93_alg_authenc_hmac_sha1_rfc3686_aes,
|
|
&eip93_alg_authenc_hmac_sha224_rfc3686_aes,
|
|
&eip93_alg_authenc_hmac_sha256_rfc3686_aes,
|
|
- &eip93_alg_md5,
|
|
- &eip93_alg_sha1,
|
|
- &eip93_alg_sha224,
|
|
- &eip93_alg_sha256,
|
|
- &eip93_alg_hmac_md5,
|
|
- &eip93_alg_hmac_sha1,
|
|
- &eip93_alg_hmac_sha224,
|
|
- &eip93_alg_hmac_sha256,
|
|
};
|
|
|
|
inline void eip93_irq_disable(struct eip93_device *eip93, u32 mask)
|