[PATCH 11/15] crypto: sparc - source arch/sparc/crypto/Kconfig without CRYPTO

Eric Biggers
2025-04-17T19:43:47Z

Source arch/sparc/crypto/Kconfig regardless of CRYPTO, so that if
library functions are ever added to there they can be built without
pulling in the generic crypto infrastructure.

Signed-off-by: Eric Biggers <ebiggers@google.com>
---
arch/sparc/Kconfig | 2 ++
arch/sparc/crypto/Kconfig | 14 +++++++-------
crypto/Kconfig | 3 ---
3 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 0f88123925a4..b1081e627a28 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -407,10 +407,12 @@ config UBOOT_ENTRY_ADDR
hardcoded by the SPARC32 and LEON port.

This is the virtual address u-boot jumps to when booting the Linux
Kernel.

+source "arch/sparc/crypto/Kconfig"
+
endmenu
endif

endmenu

diff --git a/arch/sparc/crypto/Kconfig b/arch/sparc/crypto/Kconfig
index e858597de89d..477a85370507 100644
--- a/arch/sparc/crypto/Kconfig
+++ b/arch/sparc/crypto/Kconfig
@@ -2,11 +2,11 @@

menu "Accelerated Cryptographic Algorithms for CPU (sparc64)"

config CRYPTO_DES_SPARC64
tristate "Ciphers: DES and Triple DES EDE, modes: ECB/CBC"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_ALGAPI
select CRYPTO_LIB_DES
select CRYPTO_SKCIPHER
help
Block cipher: DES (FIPS 46-2) cipher algorithm
@@ -16,61 +16,61 @@ config CRYPTO_DES_SPARC64

Architecture: sparc64

config CRYPTO_MD5_SPARC64
tristate "Digests: MD5"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_MD5
select CRYPTO_HASH
help
MD5 message digest algorithm (RFC1321)

Architecture: sparc64 using crypto instructions, when available

config CRYPTO_SHA1_SPARC64
tristate "Hash functions: SHA-1"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_SHA1
select CRYPTO_HASH
help
SHA-1 secure hash algorithm (FIPS 180)

Architecture: sparc64

config CRYPTO_SHA256_SPARC64
tristate "Hash functions: SHA-224 and SHA-256"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_SHA256
select CRYPTO_HASH
help
SHA-224 and SHA-256 secure hash algorithms (FIPS 180)

Architecture: sparc64 using crypto instructions, when available

config CRYPTO_SHA512_SPARC64
tristate "Hash functions: SHA-384 and SHA-512"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_SHA512
select CRYPTO_HASH
help
SHA-384 and SHA-512 secure hash algorithms (FIPS 180)

Architecture: sparc64 using crypto instructions, when available

config CRYPTO_AES_SPARC64
tristate "Ciphers: AES, modes: ECB, CBC, CTR"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_SKCIPHER
help
Block ciphers: AES cipher algorithms (FIPS-197)
Length-preseving ciphers: AES with ECB, CBC, and CTR modes

Architecture: sparc64 using crypto instructions

config CRYPTO_CAMELLIA_SPARC64
tristate "Ciphers: Camellia, modes: ECB, CBC"
- depends on SPARC64
+ depends on CRYPTO && SPARC64
select CRYPTO_ALGAPI
select CRYPTO_SKCIPHER
help
Block ciphers: Camellia cipher algorithms
Length-preserving ciphers: Camellia with ECB and CBC modes
diff --git a/crypto/Kconfig b/crypto/Kconfig
index 78e83ce576ed..c0906bb4f844 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
@@ -1424,13 +1424,10 @@ endmenu

config CRYPTO_HASH_INFO
bool

if !KMSAN # avoid false positives from assembly
-if SPARC
-source "arch/sparc/crypto/Kconfig"
-endif
if X86
source "arch/x86/crypto/Kconfig"
endif
endif