linux-yocto/arch/arm64/crypto
Herbert Xu 67727c5764 crypto: lib/Kconfig - Hide arch options from user
commit 17ec3e71ba upstream.

The ARCH_MAY_HAVE patch missed arm64, mips and s390.  But it may
also lead to arch options being enabled but ineffective because
of modular/built-in conflicts.

As the primary user of all these options wireguard is selecting
the arch options anyway, make the same selections at the lib/crypto
option level and hide the arch options from the user.

Instead of selecting them centrally from lib/crypto, simply set
the default of each arch option as suggested by Eric Biggers.

Change the Crypto API generic algorithms to select the top-level
lib/crypto options instead of the generic one as otherwise there
is no way to enable the arch options (Eric Biggers).  Introduce a
set of INTERNAL options to work around dependency cycles on the
CONFIG_CRYPTO symbol.

Fixes: 1047e21aec ("crypto: lib/Kconfig - Fix lib built-in failure when arch is modular")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Arnd Bergmann <arnd@kernel.org>
Closes: https://lore.kernel.org/oe-kbuild-all/202502232152.JC84YDLp-lkp@intel.com/
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-02 07:59:32 +02:00
..
.gitignore
aes-ce-ccm-core.S crypto: arm64/aes-ccm - Merge finalization into en/decrypt asm helpers 2024-01-26 16:39:32 +08:00
aes-ce-ccm-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
aes-ce-core.S
aes-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
aes-ce-setkey.h
aes-ce.S crypto: arm64/aes-ce - Simplify round key load sequence 2024-04-26 17:26:09 +08:00
aes-cipher-core.S
aes-cipher-glue.c crypto: Prepare to move crypto_tfm_ctx 2022-12-02 18:12:40 +08:00
aes-glue-ce.c crypto: arm64/aes - remove Makefile hack 2023-08-11 19:19:27 +08:00
aes-glue-neon.c crypto: arm64/aes - remove Makefile hack 2023-08-11 19:19:27 +08:00
aes-glue.c crypto: arm64/aes-ccm - Reuse existing MAC update for AAD input 2024-01-26 16:39:32 +08:00
aes-modes.S crypto: arm64/aes-modes - use frame_push/pop macros consistently 2022-12-09 18:45:00 +08:00
aes-neon.S crypto: arm64/aes-ce - Simplify round key load sequence 2024-04-26 17:26:09 +08:00
aes-neonbs-core.S crypto: arm64/aes-neonbs - fix crash with CFI enabled 2023-03-14 17:06:44 +08:00
aes-neonbs-glue.c crypto: arm64 - add missing MODULE_DESCRIPTION() macros 2024-06-21 22:04:16 +10:00
chacha-neon-core.S
chacha-neon-glue.c
crct10dif-ce-core.S crypto: arm64/crct10dif - use frame_push/pop macros consistently 2022-12-09 18:45:00 +08:00
crct10dif-ce-glue.c crypto: arm64 - add missing MODULE_DESCRIPTION() macros 2024-06-21 22:04:16 +10:00
ghash-ce-core.S crypto: arm64/ghash-ce - use frame_push/pop macros consistently 2022-12-09 18:45:00 +08:00
ghash-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
Kconfig crypto: lib/Kconfig - Hide arch options from user 2025-05-02 07:59:32 +02:00
Makefile crypto: arm64/aes - remove Makefile hack 2023-08-11 19:19:27 +08:00
nh-neon-core.S crypto: arm64/nhpoly1305 - eliminate unnecessary CFI wrapper 2022-11-25 17:39:19 +08:00
nhpoly1305-neon-glue.c crypto: arm64/nhpoly1305 - implement ->digest 2023-10-20 13:39:25 +08:00
poly1305-armv8.pl crypto: arm64/poly1305 - move data to rodata section 2024-08-17 13:55:49 +08:00
poly1305-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
polyval-ce-core.S crypto: arm64/polyval - Add PMULL accelerated implementation of POLYVAL 2022-06-10 16:40:18 +08:00
polyval-ce-glue.c crypto: arm64/polyval - Add PMULL accelerated implementation of POLYVAL 2022-06-10 16:40:18 +08:00
sha1-ce-core.S crypto: arm64/sha1-ce - clean up backwards function names 2023-10-20 13:39:25 +08:00
sha1-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sha2-ce-core.S crypto: arm64/sha2-ce - clean up backwards function names 2023-10-20 13:39:25 +08:00
sha2-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sha3-ce-core.S
sha3-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sha256-glue.c crypto: arm64/sha256 - clean up backwards function names 2023-10-20 13:39:26 +08:00
sha512-armv8.pl crypto: arm64 - cleanup comments 2022-03-09 15:12:32 +12:00
sha512-ce-core.S crypto: arm64/sha512-ce - clean up backwards function names 2023-10-20 13:39:25 +08:00
sha512-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sha512-glue.c crypto: arm64/sha512 - clean up backwards function names 2023-10-20 13:39:26 +08:00
sm3-ce-core.S arm64: Add types to indirect called assembly functions 2022-09-26 10:13:13 -07:00
sm3-ce-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sm3-neon-core.S crypto: arm64/sm3 - fix possible crash with CFI enabled 2022-11-25 17:39:19 +08:00
sm3-neon-glue.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sm4-ce-asm.h crypto: arm64/sm4 - refactor and simplify CE implementation 2022-11-04 17:34:31 +08:00
sm4-ce-ccm-core.S crypto: arm64/sm4 - fix possible crash with CFI enabled 2022-12-30 17:57:42 +08:00
sm4-ce-ccm-glue.c crypto: arm64/sm4-ccm - Rewrite skcipher walker loop 2023-02-10 17:20:19 +08:00
sm4-ce-cipher-core.S crypto: arm64/sm4-ce - rename to sm4-ce-cipher 2022-04-08 16:12:47 +08:00
sm4-ce-cipher-glue.c crypto: Prepare to move crypto_tfm_ctx 2022-12-02 18:12:40 +08:00
sm4-ce-core.S crypto: arm64/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
sm4-ce-gcm-core.S crypto: arm64/sm4 - fix possible crash with CFI enabled 2022-12-30 17:57:42 +08:00
sm4-ce-gcm-glue.c crypto: arm64/sm4-gcm - Fix possible crash in GCM cryption 2023-02-10 17:20:19 +08:00
sm4-ce-glue.c crypto: arm64/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
sm4-ce.h crypto: arm64/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
sm4-neon-core.S crypto: arm64/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
sm4-neon-glue.c crypto: arm64/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00