crypto: Kconfig - move sparc entries to a submenu
authorRobert Elliott <elliott@hpe.com>
Sat, 20 Aug 2022 18:41:38 +0000 (13:41 -0500)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 26 Aug 2022 10:50:41 +0000 (18:50 +0800)
Move CPU-specific crypto/Kconfig entries to arch/xxx/crypto/Kconfig
and create a submenu for them under the Crypto API menu.

Suggested-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Robert Elliott <elliott@hpe.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/sparc/crypto/Kconfig [new file with mode: 0644]
crypto/Kconfig

diff --git a/arch/sparc/crypto/Kconfig b/arch/sparc/crypto/Kconfig
new file mode 100644 (file)
index 0000000..eaa2afc
--- /dev/null
@@ -0,0 +1,103 @@
+# SPDX-License-Identifier: GPL-2.0
+
+menu "Accelerated Cryptographic Algorithms for CPU (sparc64)"
+
+config CRYPTO_DES_SPARC64
+       tristate "DES and Triple DES EDE cipher algorithms (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_ALGAPI
+       select CRYPTO_LIB_DES
+       select CRYPTO_SKCIPHER
+       help
+         DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3),
+         optimized using SPARC64 crypto opcodes.
+
+config CRYPTO_CRC32C_SPARC64
+       tristate "CRC32c CRC algorithm (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_HASH
+       select CRC32
+       help
+         CRC32c CRC algorithm implemented using sparc64 crypto instructions,
+         when available.
+
+config CRYPTO_MD5_SPARC64
+       tristate "MD5 digest algorithm (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_MD5
+       select CRYPTO_HASH
+       help
+         MD5 message digest algorithm (RFC1321) implemented
+         using sparc64 crypto instructions, when available.
+
+config CRYPTO_SHA1_SPARC64
+       tristate "SHA1 digest algorithm (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_SHA1
+       select CRYPTO_HASH
+       help
+         SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2) implemented
+         using sparc64 crypto instructions, when available.
+
+config CRYPTO_SHA256_SPARC64
+       tristate "SHA224 and SHA256 digest algorithm (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_SHA256
+       select CRYPTO_HASH
+       help
+         SHA-256 secure hash standard (DFIPS 180-2) implemented
+         using sparc64 crypto instructions, when available.
+
+config CRYPTO_SHA512_SPARC64
+       tristate "SHA384 and SHA512 digest algorithm (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_SHA512
+       select CRYPTO_HASH
+       help
+         SHA-512 secure hash standard (DFIPS 180-2) implemented
+         using sparc64 crypto instructions, when available.
+
+config CRYPTO_AES_SPARC64
+       tristate "AES cipher algorithms (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_SKCIPHER
+       help
+         Use SPARC64 crypto opcodes for AES algorithm.
+
+         AES cipher algorithms (FIPS-197). AES uses the Rijndael
+         algorithm.
+
+         Rijndael appears to be consistently a very good performer in
+         both hardware and software across a wide range of computing
+         environments regardless of its use in feedback or non-feedback
+         modes. Its key setup time is excellent, and its key agility is
+         good. Rijndael's very low memory requirements make it very well
+         suited for restricted-space environments, in which it also
+         demonstrates excellent performance. Rijndael's operations are
+         among the easiest to defend against power and timing attacks.
+
+         The AES specifies three key sizes: 128, 192 and 256 bits
+
+         See <http://csrc.nist.gov/encryption/aes/> for more information.
+
+         In addition to AES cipher algorithm support, the acceleration
+         for some popular block cipher mode is supported too, including
+         ECB and CBC.
+
+config CRYPTO_CAMELLIA_SPARC64
+       tristate "Camellia cipher algorithm (SPARC64)"
+       depends on SPARC64
+       select CRYPTO_ALGAPI
+       select CRYPTO_SKCIPHER
+       help
+         Camellia cipher algorithm module (SPARC64).
+
+         Camellia is a symmetric key block cipher developed jointly
+         at NTT and Mitsubishi Electric Corporation.
+
+         The Camellia specifies three key sizes: 128, 192 and 256 bits.
+
+         See also:
+         <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
+
+endmenu
index 0eb6090..5ea3cdb 100644 (file)
@@ -658,15 +658,6 @@ config CRYPTO_CRC32C_INTEL
          gain performance compared with software implementation.
          Module will be crc32c-intel.
 
-config CRYPTO_CRC32C_SPARC64
-       tristate "CRC32c CRC algorithm (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_HASH
-       select CRC32
-       help
-         CRC32c CRC algorithm implemented using sparc64 crypto instructions,
-         when available.
-
 config CRYPTO_CRC32
        tristate "CRC32 CRC algorithm"
        select CRYPTO_HASH
@@ -804,15 +795,6 @@ config CRYPTO_MD5
        help
          MD5 message digest algorithm (RFC1321).
 
-config CRYPTO_MD5_SPARC64
-       tristate "MD5 digest algorithm (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_MD5
-       select CRYPTO_HASH
-       help
-         MD5 message digest algorithm (RFC1321) implemented
-         using sparc64 crypto instructions, when available.
-
 config CRYPTO_MICHAEL_MIC
        tristate "Michael MIC keyed digest algorithm"
        select CRYPTO_HASH
@@ -880,15 +862,6 @@ config CRYPTO_SHA512_SSSE3
          Extensions version 1 (AVX1), or Advanced Vector Extensions
          version 2 (AVX2) instructions, when available.
 
-config CRYPTO_SHA1_SPARC64
-       tristate "SHA1 digest algorithm (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_SHA1
-       select CRYPTO_HASH
-       help
-         SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2) implemented
-         using sparc64 crypto instructions, when available.
-
 config CRYPTO_SHA256
        tristate "SHA224 and SHA256 digest algorithm"
        select CRYPTO_HASH
@@ -902,15 +875,6 @@ config CRYPTO_SHA256
          This code also includes SHA-224, a 224 bit hash with 112 bits
          of security against collision attacks.
 
-config CRYPTO_SHA256_SPARC64
-       tristate "SHA224 and SHA256 digest algorithm (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_SHA256
-       select CRYPTO_HASH
-       help
-         SHA-256 secure hash standard (DFIPS 180-2) implemented
-         using sparc64 crypto instructions, when available.
-
 config CRYPTO_SHA512
        tristate "SHA384 and SHA512 digest algorithms"
        select CRYPTO_HASH
@@ -923,15 +887,6 @@ config CRYPTO_SHA512
          This code also includes SHA-384, a 384 bit hash with 192 bits
          of security against collision attacks.
 
-config CRYPTO_SHA512_SPARC64
-       tristate "SHA384 and SHA512 digest algorithm (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_SHA512
-       select CRYPTO_HASH
-       help
-         SHA-512 secure hash standard (DFIPS 180-2) implemented
-         using sparc64 crypto instructions, when available.
-
 config CRYPTO_SHA3
        tristate "SHA3 digest algorithm"
        select CRYPTO_HASH
@@ -1076,33 +1031,6 @@ config CRYPTO_AES_NI_INTEL
          ECB, CBC, LRW, XTS. The 64 bit version has additional
          acceleration for CTR and XCTR.
 
-config CRYPTO_AES_SPARC64
-       tristate "AES cipher algorithms (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_SKCIPHER
-       help
-         Use SPARC64 crypto opcodes for AES algorithm.
-
-         AES cipher algorithms (FIPS-197). AES uses the Rijndael
-         algorithm.
-
-         Rijndael appears to be consistently a very good performer in
-         both hardware and software across a wide range of computing
-         environments regardless of its use in feedback or non-feedback
-         modes. Its key setup time is excellent, and its key agility is
-         good. Rijndael's very low memory requirements make it very well
-         suited for restricted-space environments, in which it also
-         demonstrates excellent performance. Rijndael's operations are
-         among the easiest to defend against power and timing attacks.
-
-         The AES specifies three key sizes: 128, 192 and 256 bits
-
-         See <http://csrc.nist.gov/encryption/aes/> for more information.
-
-         In addition to AES cipher algorithm support, the acceleration
-         for some popular block cipher mode is supported too, including
-         ECB and CBC.
-
 config CRYPTO_ANUBIS
        tristate "Anubis cipher algorithm"
        depends on CRYPTO_USER_API_ENABLE_OBSOLETE
@@ -1233,22 +1161,6 @@ config CRYPTO_CAMELLIA_AESNI_AVX2_X86_64
          See also:
          <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
 
-config CRYPTO_CAMELLIA_SPARC64
-       tristate "Camellia cipher algorithm (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_ALGAPI
-       select CRYPTO_SKCIPHER
-       help
-         Camellia cipher algorithm module (SPARC64).
-
-         Camellia is a symmetric key block cipher developed jointly
-         at NTT and Mitsubishi Electric Corporation.
-
-         The Camellia specifies three key sizes: 128, 192 and 256 bits.
-
-         See also:
-         <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
-
 config CRYPTO_CAST_COMMON
        tristate
        help
@@ -1309,16 +1221,6 @@ config CRYPTO_DES
        help
          DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
 
-config CRYPTO_DES_SPARC64
-       tristate "DES and Triple DES EDE cipher algorithms (SPARC64)"
-       depends on SPARC64
-       select CRYPTO_ALGAPI
-       select CRYPTO_LIB_DES
-       select CRYPTO_SKCIPHER
-       help
-         DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3),
-         optimized using SPARC64 crypto opcodes.
-
 config CRYPTO_DES3_EDE_X86_64
        tristate "Triple DES EDE cipher algorithm (x86-64)"
        depends on X86 && 64BIT
@@ -1894,6 +1796,9 @@ endif
 if S390
 source "arch/s390/crypto/Kconfig"
 endif
+if SPARC
+source "arch/sparc/crypto/Kconfig"
+endif
 
 source "drivers/crypto/Kconfig"
 source "crypto/asymmetric_keys/Kconfig"