crypto: drivers - Fix Kconfig selects
authorHerbert Xu <herbert@gondor.apana.org.au>
Wed, 17 Jun 2015 06:58:24 +0000 (14:58 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 18 Jun 2015 06:45:36 +0000 (14:45 +0800)
This patch fixes a number of problems in crypto driver Kconfig
entries:

1. Select BLKCIPHER instead of BLKCIPHER2.  The latter is internal
and should not be used outside of the crypto API itself.
2. Do not select ALGAPI unless you use a legacy type like
CRYPTO_ALG_TYPE_CIPHER.
3. Select the algorithm type that you are implementing, e.g., AEAD.
4. Do not select generic C code such as CBC/ECB unless you use them
as a fallback.
5. Remove default n since that is the default default.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/Kconfig
drivers/crypto/caam/Kconfig
drivers/crypto/ccp/Kconfig
drivers/crypto/nx/Kconfig
drivers/crypto/qat/Kconfig
drivers/crypto/ux500/Kconfig

index 92c899fbfe2760fadb54f7a166a3f2e0661bc218..7a72797f6f586c05f7bd1a542c3b5eeec9989605 100644 (file)
@@ -162,9 +162,8 @@ config CRYPTO_GHASH_S390
 config CRYPTO_DEV_MV_CESA
        tristate "Marvell's Cryptographic Engine"
        depends on PLAT_ORION
 config CRYPTO_DEV_MV_CESA
        tristate "Marvell's Cryptographic Engine"
        depends on PLAT_ORION
-       select CRYPTO_ALGAPI
        select CRYPTO_AES
        select CRYPTO_AES
-       select CRYPTO_BLKCIPHER2
+       select CRYPTO_BLKCIPHER
        select CRYPTO_HASH
        help
          This driver allows you to utilize the Cryptographic Engines and
        select CRYPTO_HASH
        help
          This driver allows you to utilize the Cryptographic Engines and
@@ -176,7 +175,8 @@ config CRYPTO_DEV_MV_CESA
 config CRYPTO_DEV_NIAGARA2
        tristate "Niagara2 Stream Processing Unit driver"
        select CRYPTO_DES
 config CRYPTO_DEV_NIAGARA2
        tristate "Niagara2 Stream Processing Unit driver"
        select CRYPTO_DES
-       select CRYPTO_ALGAPI
+       select CRYPTO_BLKCIPHER
+       select CRYPTO_HASH
        depends on SPARC64
        help
          Each core of a Niagara2 processor contains a Stream
        depends on SPARC64
        help
          Each core of a Niagara2 processor contains a Stream
@@ -189,7 +189,6 @@ config CRYPTO_DEV_NIAGARA2
 config CRYPTO_DEV_HIFN_795X
        tristate "Driver HIFN 795x crypto accelerator chips"
        select CRYPTO_DES
 config CRYPTO_DEV_HIFN_795X
        tristate "Driver HIFN 795x crypto accelerator chips"
        select CRYPTO_DES
-       select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
        select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG
        depends on PCI
        select CRYPTO_BLKCIPHER
        select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG
        depends on PCI
@@ -208,8 +207,10 @@ source drivers/crypto/caam/Kconfig
 
 config CRYPTO_DEV_TALITOS
        tristate "Talitos Freescale Security Engine (SEC)"
 
 config CRYPTO_DEV_TALITOS
        tristate "Talitos Freescale Security Engine (SEC)"
-       select CRYPTO_ALGAPI
+       select CRYPTO_AEAD
        select CRYPTO_AUTHENC
        select CRYPTO_AUTHENC
+       select CRYPTO_BLKCIPHER
+       select CRYPTO_HASH
        select HW_RANDOM
        depends on FSL_SOC
        help
        select HW_RANDOM
        depends on FSL_SOC
        help
@@ -244,7 +245,7 @@ config CRYPTO_DEV_IXP4XX
        tristate "Driver for IXP4xx crypto hardware acceleration"
        depends on ARCH_IXP4XX && IXP4XX_QMGR && IXP4XX_NPE
        select CRYPTO_DES
        tristate "Driver for IXP4xx crypto hardware acceleration"
        depends on ARCH_IXP4XX && IXP4XX_QMGR && IXP4XX_NPE
        select CRYPTO_DES
-       select CRYPTO_ALGAPI
+       select CRYPTO_AEAD
        select CRYPTO_AUTHENC
        select CRYPTO_BLKCIPHER
        help
        select CRYPTO_AUTHENC
        select CRYPTO_BLKCIPHER
        help
@@ -254,7 +255,6 @@ config CRYPTO_DEV_PPC4XX
        tristate "Driver AMCC PPC4xx crypto accelerator"
        depends on PPC && 4xx
        select CRYPTO_HASH
        tristate "Driver AMCC PPC4xx crypto accelerator"
        depends on PPC && 4xx
        select CRYPTO_HASH
-       select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
        help
          This option allows you to have support for AMCC crypto acceleration.
        select CRYPTO_BLKCIPHER
        help
          This option allows you to have support for AMCC crypto acceleration.
@@ -275,7 +275,7 @@ config CRYPTO_DEV_OMAP_AES
        tristate "Support for OMAP AES hw engine"
        depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP2PLUS
        select CRYPTO_AES
        tristate "Support for OMAP AES hw engine"
        depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP2PLUS
        select CRYPTO_AES
-       select CRYPTO_BLKCIPHER2
+       select CRYPTO_BLKCIPHER
        help
          OMAP processors have AES module accelerator. Select this if you
          want to use the OMAP module for AES algorithms.
        help
          OMAP processors have AES module accelerator. Select this if you
          want to use the OMAP module for AES algorithms.
@@ -284,7 +284,7 @@ config CRYPTO_DEV_OMAP_DES
        tristate "Support for OMAP DES3DES hw engine"
        depends on ARCH_OMAP2PLUS
        select CRYPTO_DES
        tristate "Support for OMAP DES3DES hw engine"
        depends on ARCH_OMAP2PLUS
        select CRYPTO_DES
-       select CRYPTO_BLKCIPHER2
+       select CRYPTO_BLKCIPHER
        help
          OMAP processors have DES/3DES module accelerator. Select this if you
          want to use the OMAP module for DES and 3DES algorithms. Currently
        help
          OMAP processors have DES/3DES module accelerator. Select this if you
          want to use the OMAP module for DES and 3DES algorithms. Currently
@@ -294,9 +294,10 @@ config CRYPTO_DEV_OMAP_DES
 config CRYPTO_DEV_PICOXCELL
        tristate "Support for picoXcell IPSEC and Layer2 crypto engines"
        depends on ARCH_PICOXCELL && HAVE_CLK
 config CRYPTO_DEV_PICOXCELL
        tristate "Support for picoXcell IPSEC and Layer2 crypto engines"
        depends on ARCH_PICOXCELL && HAVE_CLK
+       select CRYPTO_AEAD
        select CRYPTO_AES
        select CRYPTO_AUTHENC
        select CRYPTO_AES
        select CRYPTO_AUTHENC
-       select CRYPTO_ALGAPI
+       select CRYPTO_BLKCIPHER
        select CRYPTO_DES
        select CRYPTO_CBC
        select CRYPTO_ECB
        select CRYPTO_DES
        select CRYPTO_CBC
        select CRYPTO_ECB
@@ -322,7 +323,6 @@ config CRYPTO_DEV_S5P
        tristate "Support for Samsung S5PV210/Exynos crypto accelerator"
        depends on ARCH_S5PV210 || ARCH_EXYNOS
        select CRYPTO_AES
        tristate "Support for Samsung S5PV210/Exynos crypto accelerator"
        depends on ARCH_S5PV210 || ARCH_EXYNOS
        select CRYPTO_AES
-       select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
        help
          This option allows you to have support for S5P crypto acceleration.
        select CRYPTO_BLKCIPHER
        help
          This option allows you to have support for S5P crypto acceleration.
@@ -345,7 +345,6 @@ endif
 config CRYPTO_DEV_UX500
        tristate "Driver for ST-Ericsson UX500 crypto hardware acceleration"
        depends on ARCH_U8500
 config CRYPTO_DEV_UX500
        tristate "Driver for ST-Ericsson UX500 crypto hardware acceleration"
        depends on ARCH_U8500
-       select CRYPTO_ALGAPI
        help
          Driver for ST-Ericsson UX500 crypto engine.
 
        help
          Driver for ST-Ericsson UX500 crypto engine.
 
@@ -363,10 +362,7 @@ config CRYPTO_DEV_BFIN_CRC
 config CRYPTO_DEV_ATMEL_AES
        tristate "Support for Atmel AES hw accelerator"
        depends on ARCH_AT91
 config CRYPTO_DEV_ATMEL_AES
        tristate "Support for Atmel AES hw accelerator"
        depends on ARCH_AT91
-       select CRYPTO_CBC
-       select CRYPTO_ECB
        select CRYPTO_AES
        select CRYPTO_AES
-       select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
        select AT_HDMAC
        help
        select CRYPTO_BLKCIPHER
        select AT_HDMAC
        help
@@ -381,9 +377,6 @@ config CRYPTO_DEV_ATMEL_TDES
        tristate "Support for Atmel DES/TDES hw accelerator"
        depends on ARCH_AT91
        select CRYPTO_DES
        tristate "Support for Atmel DES/TDES hw accelerator"
        depends on ARCH_AT91
        select CRYPTO_DES
-       select CRYPTO_CBC
-       select CRYPTO_ECB
-       select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
        help
          Some Atmel processors have DES/TDES hw accelerator.
        select CRYPTO_BLKCIPHER
        help
          Some Atmel processors have DES/TDES hw accelerator.
@@ -396,10 +389,7 @@ config CRYPTO_DEV_ATMEL_TDES
 config CRYPTO_DEV_ATMEL_SHA
        tristate "Support for Atmel SHA hw accelerator"
        depends on ARCH_AT91
 config CRYPTO_DEV_ATMEL_SHA
        tristate "Support for Atmel SHA hw accelerator"
        depends on ARCH_AT91
-       select CRYPTO_SHA1
-       select CRYPTO_SHA256
-       select CRYPTO_SHA512
-       select CRYPTO_ALGAPI
+       select CRYPTO_HASH
        help
          Some Atmel processors have SHA1/SHA224/SHA256/SHA384/SHA512
          hw accelerator.
        help
          Some Atmel processors have SHA1/SHA224/SHA256/SHA384/SHA512
          hw accelerator.
@@ -412,7 +402,6 @@ config CRYPTO_DEV_ATMEL_SHA
 config CRYPTO_DEV_CCP
        bool "Support for AMD Cryptographic Coprocessor"
        depends on ((X86 && PCI) || (ARM64 && (OF_ADDRESS || ACPI))) && HAS_IOMEM
 config CRYPTO_DEV_CCP
        bool "Support for AMD Cryptographic Coprocessor"
        depends on ((X86 && PCI) || (ARM64 && (OF_ADDRESS || ACPI))) && HAS_IOMEM
-       default n
        help
          The AMD Cryptographic Coprocessor provides hardware support
          for encryption, hashing and related operations.
        help
          The AMD Cryptographic Coprocessor provides hardware support
          for encryption, hashing and related operations.
@@ -424,13 +413,11 @@ endif
 config CRYPTO_DEV_MXS_DCP
        tristate "Support for Freescale MXS DCP"
        depends on ARCH_MXS
 config CRYPTO_DEV_MXS_DCP
        tristate "Support for Freescale MXS DCP"
        depends on ARCH_MXS
-       select CRYPTO_SHA1
-       select CRYPTO_SHA256
        select CRYPTO_CBC
        select CRYPTO_ECB
        select CRYPTO_AES
        select CRYPTO_BLKCIPHER
        select CRYPTO_CBC
        select CRYPTO_ECB
        select CRYPTO_AES
        select CRYPTO_BLKCIPHER
-       select CRYPTO_ALGAPI
+       select CRYPTO_HASH
        help
          The Freescale i.MX23/i.MX28 has SHA1/SHA256 and AES128 CBC/ECB
          co-processor on the die.
        help
          The Freescale i.MX23/i.MX28 has SHA1/SHA256 and AES128 CBC/ECB
          co-processor on the die.
@@ -449,7 +436,6 @@ config CRYPTO_DEV_QCE
        select CRYPTO_CBC
        select CRYPTO_XTS
        select CRYPTO_CTR
        select CRYPTO_CBC
        select CRYPTO_XTS
        select CRYPTO_CTR
-       select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
        help
          This driver supports Qualcomm crypto engine accelerator
        select CRYPTO_BLKCIPHER
        help
          This driver supports Qualcomm crypto engine accelerator
@@ -468,7 +454,6 @@ config CRYPTO_DEV_IMGTEC_HASH
        tristate "Imagination Technologies hardware hash accelerator"
        depends on MIPS || COMPILE_TEST
        depends on HAS_DMA
        tristate "Imagination Technologies hardware hash accelerator"
        depends on MIPS || COMPILE_TEST
        depends on HAS_DMA
-       select CRYPTO_ALGAPI
        select CRYPTO_MD5
        select CRYPTO_SHA1
        select CRYPTO_SHA256
        select CRYPTO_MD5
        select CRYPTO_SHA1
        select CRYPTO_SHA256
index e7555ff4cafdb4b0444a09f2de4b2b153f9e78e9..e286e285aa8a48f462b205638986d7b52cb01642 100644 (file)
@@ -45,7 +45,6 @@ config CRYPTO_DEV_FSL_CAAM_RINGSIZE
 config CRYPTO_DEV_FSL_CAAM_INTC
        bool "Job Ring interrupt coalescing"
        depends on CRYPTO_DEV_FSL_CAAM_JR
 config CRYPTO_DEV_FSL_CAAM_INTC
        bool "Job Ring interrupt coalescing"
        depends on CRYPTO_DEV_FSL_CAAM_JR
-       default n
        help
          Enable the Job Ring's interrupt coalescing feature.
 
        help
          Enable the Job Ring's interrupt coalescing feature.
 
@@ -77,8 +76,9 @@ config CRYPTO_DEV_FSL_CAAM_CRYPTO_API
        tristate "Register algorithm implementations with the Crypto API"
        depends on CRYPTO_DEV_FSL_CAAM && CRYPTO_DEV_FSL_CAAM_JR
        default y
        tristate "Register algorithm implementations with the Crypto API"
        depends on CRYPTO_DEV_FSL_CAAM && CRYPTO_DEV_FSL_CAAM_JR
        default y
-       select CRYPTO_ALGAPI
+       select CRYPTO_AEAD
        select CRYPTO_AUTHENC
        select CRYPTO_AUTHENC
+       select CRYPTO_BLKCIPHER
        help
          Selecting this will offload crypto for users of the
          scatterlist crypto API (such as the linux native IPSec
        help
          Selecting this will offload crypto for users of the
          scatterlist crypto API (such as the linux native IPSec
@@ -115,7 +115,6 @@ config CRYPTO_DEV_FSL_CAAM_RNG_API
 config CRYPTO_DEV_FSL_CAAM_DEBUG
        bool "Enable debug output in CAAM driver"
        depends on CRYPTO_DEV_FSL_CAAM
 config CRYPTO_DEV_FSL_CAAM_DEBUG
        bool "Enable debug output in CAAM driver"
        depends on CRYPTO_DEV_FSL_CAAM
-       default n
        help
          Selecting this will enable printing of various debug
          information in the CAAM driver.
        help
          Selecting this will enable printing of various debug
          information in the CAAM driver.
index 7639ffc36c68b69807dba847592185a076a56053..ae38f6b6cc10c3c97d2f3543aa896a454c1bbd9a 100644 (file)
@@ -13,7 +13,6 @@ config CRYPTO_DEV_CCP_CRYPTO
        tristate "Encryption and hashing acceleration support"
        depends on CRYPTO_DEV_CCP_DD
        default m
        tristate "Encryption and hashing acceleration support"
        depends on CRYPTO_DEV_CCP_DD
        default m
-       select CRYPTO_ALGAPI
        select CRYPTO_HASH
        select CRYPTO_BLKCIPHER
        select CRYPTO_AUTHENC
        select CRYPTO_HASH
        select CRYPTO_BLKCIPHER
        select CRYPTO_AUTHENC
index 3e621ad096755c8499648e5a8e058899c98f5df2..b1addf6223db4bc64c233dcfd2dc126619d98830 100644 (file)
@@ -3,16 +3,8 @@ config CRYPTO_DEV_NX_ENCRYPT
        tristate "Encryption acceleration support on pSeries platform"
        depends on PPC_PSERIES && IBMVIO && !CPU_LITTLE_ENDIAN
        default y
        tristate "Encryption acceleration support on pSeries platform"
        depends on PPC_PSERIES && IBMVIO && !CPU_LITTLE_ENDIAN
        default y
-       select CRYPTO_ALGAPI
        select CRYPTO_AES
        select CRYPTO_AES
-       select CRYPTO_CBC
-       select CRYPTO_ECB
        select CRYPTO_CCM
        select CRYPTO_CCM
-       select CRYPTO_GCM
-       select CRYPTO_AUTHENC
-       select CRYPTO_XCBC
-       select CRYPTO_SHA256
-       select CRYPTO_SHA512
        help
          Support for PowerPC Nest (NX) encryption acceleration. This
          module supports acceleration for AES and SHA2 algorithms on
        help
          Support for PowerPC Nest (NX) encryption acceleration. This
          module supports acceleration for AES and SHA2 algorithms on
index 49bede2a9f77df49afd3ddecf3a3dd4290ce46d7..6fdb9e8b22a75247971fca0b500414b8028bc7dd 100644 (file)
@@ -2,9 +2,8 @@ config CRYPTO_DEV_QAT
        tristate
        select CRYPTO_AEAD
        select CRYPTO_AUTHENC
        tristate
        select CRYPTO_AEAD
        select CRYPTO_AUTHENC
-       select CRYPTO_ALGAPI
-       select CRYPTO_AES
-       select CRYPTO_CBC
+       select CRYPTO_BLKCIPHER
+       select CRYPTO_HMAC
        select CRYPTO_SHA1
        select CRYPTO_SHA256
        select CRYPTO_SHA512
        select CRYPTO_SHA1
        select CRYPTO_SHA256
        select CRYPTO_SHA512
@@ -13,7 +12,6 @@ config CRYPTO_DEV_QAT
 config CRYPTO_DEV_QAT_DH895xCC
        tristate "Support for Intel(R) DH895xCC"
        depends on X86 && PCI
 config CRYPTO_DEV_QAT_DH895xCC
        tristate "Support for Intel(R) DH895xCC"
        depends on X86 && PCI
-       default n
        select CRYPTO_DEV_QAT
        help
          Support for Intel(R) DH895xcc with Intel(R) QuickAssist Technology
        select CRYPTO_DEV_QAT
        help
          Support for Intel(R) DH895xcc with Intel(R) QuickAssist Technology
index b35e5c4b025af762bb80ade0bee326ebf18ecf59..30796441b0a6f83155b79fb372a2123b05be79df 100644 (file)
@@ -7,6 +7,8 @@
 config CRYPTO_DEV_UX500_CRYP
        tristate "UX500 crypto driver for CRYP block"
        depends on CRYPTO_DEV_UX500
 config CRYPTO_DEV_UX500_CRYP
        tristate "UX500 crypto driver for CRYP block"
        depends on CRYPTO_DEV_UX500
+       select CRYPTO_ALGAPI
+       select CRYPTO_BLKCIPHER
        select CRYPTO_DES
        help
         This selects the crypto driver for the UX500_CRYP hardware. It supports
        select CRYPTO_DES
        help
         This selects the crypto driver for the UX500_CRYP hardware. It supports
@@ -16,7 +18,6 @@ config CRYPTO_DEV_UX500_HASH
         tristate "UX500 crypto driver for HASH block"
         depends on CRYPTO_DEV_UX500
         select CRYPTO_HASH
         tristate "UX500 crypto driver for HASH block"
         depends on CRYPTO_DEV_UX500
         select CRYPTO_HASH
-        select CRYPTO_HMAC
         help
           This selects the hash driver for the UX500_HASH hardware.
           Depends on UX500/STM DMA if running in DMA mode.
         help
           This selects the hash driver for the UX500_HASH hardware.
           Depends on UX500/STM DMA if running in DMA mode.
@@ -24,7 +25,6 @@ config CRYPTO_DEV_UX500_HASH
 config CRYPTO_DEV_UX500_DEBUG
        bool "Activate ux500 platform debug-mode for crypto and hash block"
        depends on CRYPTO_DEV_UX500_CRYP || CRYPTO_DEV_UX500_HASH
 config CRYPTO_DEV_UX500_DEBUG
        bool "Activate ux500 platform debug-mode for crypto and hash block"
        depends on CRYPTO_DEV_UX500_CRYP || CRYPTO_DEV_UX500_HASH
-       default n
        help
          Say Y if you want to add debug prints to ux500_hash and
          ux500_cryp devices.
        help
          Say Y if you want to add debug prints to ux500_hash and
          ux500_cryp devices.
This page took 0.046743 seconds and 5 git commands to generate.