^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) menuconfig CRYPTO_HW
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) bool "Hardware crypto devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) Say Y here to get to see options for hardware crypto devices and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) processors. This option alone does not add any kernel code.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) If you say N, all options in this submenu will be skipped and disabled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) if CRYPTO_HW
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) source "drivers/crypto/allwinner/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) config CRYPTO_DEV_PADLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) tristate "Support for VIA PadLock ACE"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) depends on X86 && !UML
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Some VIA processors come with an integrated crypto engine
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) (so called VIA PadLock ACE, Advanced Cryptography Engine)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) that provides instructions for very fast cryptographic
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) operations with supported algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) The instructions are used only when the CPU supports them.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) Otherwise software encryption is used.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) config CRYPTO_DEV_PADLOCK_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) tristate "PadLock driver for AES algorithm"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) depends on CRYPTO_DEV_PADLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) select CRYPTO_LIB_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) Use VIA PadLock for AES algorithm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) Available in VIA C3 and newer CPUs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) If unsure say M. The compiled module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) called padlock-aes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) config CRYPTO_DEV_PADLOCK_SHA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) tristate "PadLock driver for SHA1 and SHA256 algorithms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) depends on CRYPTO_DEV_PADLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) Use VIA PadLock for SHA1/SHA256 algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) Available in VIA C7 and newer processors.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) If unsure say M. The compiled module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) called padlock-sha.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) config CRYPTO_DEV_GEODE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) tristate "Support for the Geode LX AES engine"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) depends on X86_32 && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) select CRYPTO_ALGAPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) Say 'Y' here to use the AMD Geode LX processor on-board AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) engine for the CryptoAPI AES algorithm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) will be called geode-aes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) config ZCRYPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) tristate "Support for s390 cryptographic adapters"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) select HW_RANDOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) Select this option if you want to enable support for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) s390 cryptographic adapters like:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) + Crypto Express 2 up to 7 Coprocessor (CEXxC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) + Crypto Express 2 up to 7 Accelerator (CEXxA)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) + Crypto Express 4 up to 7 EP11 Coprocessor (CEXxP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) config ZCRYPT_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) bool "Enable debug features for s390 cryptographic adapters"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) depends on DEBUG_KERNEL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) depends on ZCRYPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) Say 'Y' here to enable some additional debug features on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) s390 cryptographic adapters driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) There will be some more sysfs attributes displayed for ap cards
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) and queues and some flags on crypto requests are interpreted as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) debugging messages to force error injection.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) Do not enable on production level kernel build.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) config ZCRYPT_MULTIDEVNODES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) bool "Support for multiple zcrypt device nodes"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) depends on ZCRYPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) With this option enabled the zcrypt device driver can
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) provide multiple devices nodes in /dev. Each device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) node can get customized to limit access and narrow
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) down the use of the available crypto hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) config PKEY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) tristate "Kernel API for protected key handling"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) depends on ZCRYPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) With this option enabled the pkey kernel module provides an API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) for creation and handling of protected keys. Other parts of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) kernel or userspace applications may use these functions.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) Select this option if you want to enable the kernel and userspace
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) API for proteced key handling.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) Please note that creation of protected keys from secure keys
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) requires to have at least one CEX card in coprocessor mode
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) available at runtime.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) config CRYPTO_PAES_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) tristate "PAES cipher algorithms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) depends on ZCRYPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) depends on PKEY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) select CRYPTO_ALGAPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) AES cipher algorithms for use with protected key.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) Select this option if you want to use the paes cipher
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) for example to use protected key encrypted devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) config CRYPTO_SHA1_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) tristate "SHA1 digest algorithm"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) It is available as of z990.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) config CRYPTO_SHA256_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) tristate "SHA256 digest algorithm"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) SHA256 secure hash standard (DFIPS 180-2).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) It is available as of z9.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) config CRYPTO_SHA512_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) tristate "SHA384 and SHA512 digest algorithm"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) SHA512 secure hash standard.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) It is available as of z10.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) config CRYPTO_SHA3_256_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) tristate "SHA3_224 and SHA3_256 digest algorithm"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) SHA3_256 secure hash standard.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) It is available as of z14.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) config CRYPTO_SHA3_512_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) tristate "SHA3_384 and SHA3_512 digest algorithm"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) SHA3_512 secure hash standard.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) It is available as of z14.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) config CRYPTO_DES_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) tristate "DES and Triple DES cipher algorithms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) select CRYPTO_ALGAPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) As of z990 the ECB and CBC mode are hardware accelerated.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) As of z196 the CTR mode is hardware accelerated.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) config CRYPTO_AES_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) tristate "AES cipher algorithms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) select CRYPTO_ALGAPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) This is the s390 hardware accelerated implementation of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) AES cipher algorithms (FIPS-197).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) As of z9 the ECB and CBC modes are hardware accelerated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) for 128 bit keys.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) As of z10 the ECB and CBC modes are hardware accelerated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) for all AES key sizes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) As of z196 the CTR mode is hardware accelerated for all AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) key sizes and XTS mode is hardware accelerated for 256 and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 512 bit keys.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) config S390_PRNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) tristate "Pseudo random number generator device driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) default "m"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) Select this option if you want to use the s390 pseudo random number
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) generator. The PRNG is part of the cryptographic processor functions
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) and uses triple-DES to generate secure random numbers like the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) ANSI X9.17 standard. User-space programs access the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) pseudo-random-number device through the char device /dev/prandom.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) It is available as of z9.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) config CRYPTO_GHASH_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) tristate "GHASH hash function"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) This is the s390 hardware accelerated implementation of GHASH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) the hash function used in GCM (Galois/Counter mode).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) It is available as of z196.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) config CRYPTO_CRC32_S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) tristate "CRC-32 algorithms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) depends on S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) select CRC32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) Select this option if you want to use hardware accelerated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) implementations of CRC algorithms. With this option, you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) can optimize the computation of CRC-32 (IEEE 802.3 Ethernet)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) and CRC-32C (Castagnoli).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) It is available with IBM z13 or later.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) config CRYPTO_DEV_NIAGARA2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) tristate "Niagara2 Stream Processing Unit driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) depends on SPARC64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) Each core of a Niagara2 processor contains a Stream
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) Processing Unit, which itself contains several cryptographic
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) sub-units. One set provides the Modular Arithmetic Unit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) used for SSL offload. The other set provides the Cipher
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) Group, which can perform encryption, decryption, hashing,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) checksumming, and raw copies.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) config CRYPTO_DEV_HIFN_795X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) tristate "Driver HIFN 795x crypto accelerator chips"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) depends on PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) depends on !ARCH_DMA_ADDR_T_64BIT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) This option allows you to have support for HIFN 795x crypto adapters.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) config CRYPTO_DEV_HIFN_795X_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) bool "HIFN 795x random number generator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) depends on CRYPTO_DEV_HIFN_795X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) Select this option if you want to enable the random number generator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) on the HIFN 795x crypto adapters.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) source "drivers/crypto/caam/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) config CRYPTO_DEV_TALITOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) tristate "Talitos Freescale Security Engine (SEC)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) select HW_RANDOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) depends on FSL_SOC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) Say 'Y' here to use the Freescale Security Engine (SEC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) to offload cryptographic algorithm computation.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) The Freescale SEC is present on PowerQUICC 'E' processors, such
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) as the MPC8349E and MPC8548E.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) will be called talitos.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) config CRYPTO_DEV_TALITOS1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) bool "SEC1 (SEC 1.0 and SEC Lite 1.2)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) depends on CRYPTO_DEV_TALITOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) depends on PPC_8xx || PPC_82xx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) Say 'Y' here to use the Freescale Security Engine (SEC) version 1.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) found on MPC82xx or the Freescale Security Engine (SEC Lite)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) version 1.2 found on MPC8xx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) config CRYPTO_DEV_TALITOS2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) bool "SEC2+ (SEC version 2.0 or upper)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) depends on CRYPTO_DEV_TALITOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) default y if !PPC_8xx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) Say 'Y' here to use the Freescale Security Engine (SEC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) version 2 and following as found on MPC83xx, MPC85xx, etc ...
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) config CRYPTO_DEV_IXP4XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) tristate "Driver for IXP4xx crypto hardware acceleration"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) depends on ARCH_IXP4XX && IXP4XX_QMGR && IXP4XX_NPE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) Driver for the IXP4xx NPE crypto engine.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) config CRYPTO_DEV_PPC4XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) tristate "Driver AMCC PPC4xx crypto accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) depends on PPC && 4xx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) select CRYPTO_LIB_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) select CRYPTO_CCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) select CRYPTO_CTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) select CRYPTO_GCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) This option allows you to have support for AMCC crypto acceleration.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) config HW_RANDOM_PPC4XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) bool "PowerPC 4xx generic true random number generator support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) depends on CRYPTO_DEV_PPC4XX && HW_RANDOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) This option provides the kernel-side support for the TRNG hardware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) found in the security function of some PowerPC 4xx SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) config CRYPTO_DEV_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) tristate "Support for OMAP crypto HW accelerators"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) depends on ARCH_OMAP2PLUS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) OMAP processors have various crypto HW accelerators. Select this if
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) you want to use the OMAP modules for any of the crypto algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) if CRYPTO_DEV_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) config CRYPTO_DEV_OMAP_SHAM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) tristate "Support for OMAP MD5/SHA1/SHA2 hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) depends on ARCH_OMAP2PLUS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) select CRYPTO_ENGINE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) select CRYPTO_HMAC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) OMAP processors have MD5/SHA1/SHA2 hw accelerator. Select this if you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) want to use the OMAP module for MD5/SHA1/SHA2 algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) config CRYPTO_DEV_OMAP_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) tristate "Support for OMAP AES hw engine"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP2PLUS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) select CRYPTO_ENGINE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) select CRYPTO_CBC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) select CRYPTO_CTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) OMAP processors have AES module accelerator. Select this if you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) want to use the OMAP module for AES algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) config CRYPTO_DEV_OMAP_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) tristate "Support for OMAP DES/3DES hw engine"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) depends on ARCH_OMAP2PLUS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) select CRYPTO_ENGINE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) OMAP processors have DES/3DES module accelerator. Select this if you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) want to use the OMAP module for DES and 3DES algorithms. Currently
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) the ECB and CBC modes of operation are supported by the driver. Also
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) accesses made on unaligned boundaries are supported.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) endif # CRYPTO_DEV_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) config CRYPTO_DEV_PICOXCELL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) tristate "Support for picoXcell IPSEC and Layer2 crypto engines"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) depends on (ARCH_PICOXCELL || COMPILE_TEST) && HAVE_CLK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) select CRYPTO_CBC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) select CRYPTO_SEQIV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) This option enables support for the hardware offload engines in the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) Picochip picoXcell SoC devices. Select this for IPSEC ESP offload
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) and for 3gpp Layer 2 ciphering support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) Saying m here will build a module named picoxcell_crypto.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) config CRYPTO_DEV_SAHARA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) tristate "Support for SAHARA crypto accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) depends on ARCH_MXC && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) This option enables support for the SAHARA HW crypto accelerator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) found in some Freescale i.MX chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) config CRYPTO_DEV_EXYNOS_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) tristate "Exynos HW pseudo random number generator support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) depends on ARCH_EXYNOS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) select CRYPTO_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) This driver provides kernel-side support through the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) cryptographic API for the pseudo random number generator hardware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) found on Exynos SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) module will be called exynos-rng.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) config CRYPTO_DEV_S5P
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) tristate "Support for Samsung S5PV210/Exynos crypto accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) This option allows you to have support for S5P crypto acceleration.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458) Select this to offload Samsung S5PV210 or S5PC110, Exynos from AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) algorithms execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) config CRYPTO_DEV_EXYNOS_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) bool "Support for Samsung Exynos HASH accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) depends on CRYPTO_DEV_S5P
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) depends on !CRYPTO_DEV_EXYNOS_RNG && CRYPTO_DEV_EXYNOS_RNG!=m
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) Select this to offload Exynos from HASH MD5/SHA1/SHA256.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) This will select software SHA1, MD5 and SHA256 as they are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) needed for small and zero-size messages.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) HASH algorithms will be disabled if EXYNOS_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) is enabled due to hw conflict.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) config CRYPTO_DEV_NX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) bool "Support for IBM PowerPC Nest (NX) cryptographic acceleration"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) depends on PPC64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) This enables support for the NX hardware cryptographic accelerator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) coprocessor that is in IBM PowerPC P7+ or later processors. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) does not actually enable any drivers, it only allows you to select
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482) which acceleration type (encryption and/or compression) to enable.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) if CRYPTO_DEV_NX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) source "drivers/crypto/nx/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) config CRYPTO_DEV_UX500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) tristate "Driver for ST-Ericsson UX500 crypto hardware acceleration"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) depends on ARCH_U8500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) Driver for ST-Ericsson UX500 crypto engine.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) if CRYPTO_DEV_UX500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) source "drivers/crypto/ux500/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) endif # if CRYPTO_DEV_UX500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) config CRYPTO_DEV_ATMEL_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) bool "Support for Atmel IPSEC/SSL hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) depends on ARCH_AT91 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) depends on CRYPTO_DEV_ATMEL_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) Some Atmel processors can combine the AES and SHA hw accelerators
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) to enhance support of IPSEC/SSL.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) Select this if you want to use the Atmel modules for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) authenc(hmac(shaX),Y(cbc)) algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) config CRYPTO_DEV_ATMEL_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) tristate "Support for Atmel AES hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) depends on ARCH_AT91 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514) select CRYPTO_AUTHENC if CRYPTO_DEV_ATMEL_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) select CRYPTO_DEV_ATMEL_SHA if CRYPTO_DEV_ATMEL_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517) Some Atmel processors have AES hw accelerator.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) Select this if you want to use the Atmel module for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) AES algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) will be called atmel-aes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) config CRYPTO_DEV_ATMEL_TDES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) tristate "Support for Atmel DES/TDES hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) depends on ARCH_AT91 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) Some Atmel processors have DES/TDES hw accelerator.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) Select this if you want to use the Atmel module for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) DES/TDES algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535) will be called atmel-tdes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) config CRYPTO_DEV_ATMEL_SHA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) tristate "Support for Atmel SHA hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) depends on ARCH_AT91 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) Some Atmel processors have SHA1/SHA224/SHA256/SHA384/SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543) hw accelerator.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544) Select this if you want to use the Atmel module for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545) SHA1/SHA224/SHA256/SHA384/SHA512 algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) will be called atmel-sha.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550) config CRYPTO_DEV_ATMEL_I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552) select BITREVERSE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554) config CRYPTO_DEV_ATMEL_ECC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555) tristate "Support for Microchip / Atmel ECC hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556) depends on I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) select CRYPTO_DEV_ATMEL_I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) select CRYPTO_ECDH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561) Microhip / Atmel ECC hw accelerator.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562) Select this if you want to use the Microchip / Atmel module for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) ECDH algorithm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) will be called atmel-ecc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568) config CRYPTO_DEV_ATMEL_SHA204A
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569) tristate "Support for Microchip / Atmel SHA accelerator and RNG"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) depends on I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 571) select CRYPTO_DEV_ATMEL_I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 572) select HW_RANDOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 573) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 574) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 575) Microhip / Atmel SHA accelerator and RNG.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 576) Select this if you want to use the Microchip / Atmel SHA204A
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 577) module as a random number generator. (Other functions of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 578) chip are currently not exposed by this driver)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 579)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 580) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 581) will be called atmel-sha204a.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 582)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 583) config CRYPTO_DEV_CCP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 584) bool "Support for AMD Secure Processor"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 585) depends on ((X86 && PCI) || (ARM64 && (OF_ADDRESS || ACPI))) && HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 586) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 587) The AMD Secure Processor provides support for the Cryptographic Coprocessor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 588) (CCP) and the Platform Security Processor (PSP) devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 589)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 590) if CRYPTO_DEV_CCP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 591) source "drivers/crypto/ccp/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 592) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 593)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 594) config CRYPTO_DEV_MXS_DCP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 595) tristate "Support for Freescale MXS DCP"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 596) depends on (ARCH_MXS || ARCH_MXC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 597) select STMP_DEVICE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 598) select CRYPTO_CBC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 599) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 600) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 601) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 602) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 603) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 604) The Freescale i.MX23/i.MX28 has SHA1/SHA256 and AES128 CBC/ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 605) co-processor on the die.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 606)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 607) To compile this driver as a module, choose M here: the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 608) will be called mxs-dcp.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 609)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 610) source "drivers/crypto/qat/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 611) source "drivers/crypto/cavium/cpt/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 612) source "drivers/crypto/cavium/nitrox/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 613) source "drivers/crypto/marvell/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 614)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 615) config CRYPTO_DEV_CAVIUM_ZIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 616) tristate "Cavium ZIP driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 617) depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 618) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 619) Select this option if you want to enable compression/decompression
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 620) acceleration on Cavium's ARM based SoCs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 621)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 622) config CRYPTO_DEV_QCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 623) tristate "Qualcomm crypto engine accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 624) depends on ARCH_QCOM || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 625) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 626) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 627) This driver supports Qualcomm crypto engine accelerator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 628) hardware. To compile this driver as a module, choose M here. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 629) module will be called qcrypto.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 630)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 631) config CRYPTO_DEV_QCE_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 632) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 633) depends on CRYPTO_DEV_QCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 634) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 635) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 636) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 637) select CRYPTO_CBC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 638) select CRYPTO_XTS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 639) select CRYPTO_CTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 640) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 641)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 642) config CRYPTO_DEV_QCE_SHA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 643) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 644) depends on CRYPTO_DEV_QCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 645) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 646) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 647)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 648) choice
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 649) prompt "Algorithms enabled for QCE acceleration"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 650) default CRYPTO_DEV_QCE_ENABLE_ALL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 651) depends on CRYPTO_DEV_QCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 652) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 653) This option allows to choose whether to build support for all algorihtms
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 654) (default), hashes-only, or skciphers-only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 655)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 656) The QCE engine does not appear to scale as well as the CPU to handle
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 657) multiple crypto requests. While the ipq40xx chips have 4-core CPUs, the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 658) QCE handles only 2 requests in parallel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 659)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 660) Ipsec throughput seems to improve when disabling either family of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 661) algorithms, sharing the load with the CPU. Enabling skciphers-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 662) appears to work best.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 663)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 664) config CRYPTO_DEV_QCE_ENABLE_ALL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 665) bool "All supported algorithms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 666) select CRYPTO_DEV_QCE_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 667) select CRYPTO_DEV_QCE_SHA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 668) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 669) Enable all supported algorithms:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 670) - AES (CBC, CTR, ECB, XTS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 671) - 3DES (CBC, ECB)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 672) - DES (CBC, ECB)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 673) - SHA1, HMAC-SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 674) - SHA256, HMAC-SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 675)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 676) config CRYPTO_DEV_QCE_ENABLE_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 677) bool "Symmetric-key ciphers only"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 678) select CRYPTO_DEV_QCE_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 679) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 680) Enable symmetric-key ciphers only:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 681) - AES (CBC, CTR, ECB, XTS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 682) - 3DES (ECB, CBC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 683) - DES (ECB, CBC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 684)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 685) config CRYPTO_DEV_QCE_ENABLE_SHA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 686) bool "Hash/HMAC only"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 687) select CRYPTO_DEV_QCE_SHA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 688) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 689) Enable hashes/HMAC algorithms only:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 690) - SHA1, HMAC-SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 691) - SHA256, HMAC-SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 692)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 693) endchoice
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 694)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 695) config CRYPTO_DEV_QCE_SW_MAX_LEN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 696) int "Default maximum request size to use software for AES"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 697) depends on CRYPTO_DEV_QCE && CRYPTO_DEV_QCE_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 698) default 512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 699) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 700) This sets the default maximum request size to perform AES requests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 701) using software instead of the crypto engine. It can be changed by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 702) setting the aes_sw_max_len parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 703)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 704) Small blocks are processed faster in software than hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 705) Considering the 256-bit ciphers, software is 2-3 times faster than
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 706) qce at 256-bytes, 30% faster at 512, and about even at 768-bytes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 707) With 128-bit keys, the break-even point would be around 1024-bytes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 708)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 709) The default is set a little lower, to 512 bytes, to balance the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 710) cost in CPU usage. The minimum recommended setting is 16-bytes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 711) (1 AES block), since AES-GCM will fail if you set it lower.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 712) Setting this to zero will send all requests to the hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 713)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 714) Note that 192-bit keys are not supported by the hardware and are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 715) always processed by the software fallback, and all DES requests
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 716) are done by the hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 717)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 718) config CRYPTO_DEV_QCOM_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 719) tristate "Qualcomm Random Number Generator Driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 720) depends on ARCH_QCOM || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 721) select CRYPTO_RNG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 722) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 723) This driver provides support for the Random Number
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 724) Generator hardware found on Qualcomm SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 725)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 726) To compile this driver as a module, choose M here. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 727) module will be called qcom-rng. If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 728)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 729) config CRYPTO_DEV_VMX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 730) bool "Support for VMX cryptographic acceleration instructions"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 731) depends on PPC64 && VSX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 732) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 733) Support for VMX cryptographic acceleration instructions.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 734)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 735) source "drivers/crypto/vmx/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 736)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 737) config CRYPTO_DEV_IMGTEC_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 738) tristate "Imagination Technologies hardware hash accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 739) depends on MIPS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 740) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 741) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 742) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 743) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 744) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 745) This driver interfaces with the Imagination Technologies
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 746) hardware hash accelerator. Supporting MD5/SHA1/SHA224/SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 747) hashing algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 748)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 749) config CRYPTO_DEV_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 750) tristate "Rockchip's Cryptographic Engine driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 751) depends on OF && ARCH_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 752) select CRYPTO_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 753) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 754) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 755) select CRYPTO_CBC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 756) select CRYPTO_XTS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 757) select CRYPTO_CFB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 758) select CRYPTO_OFB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 759) select CRYPTO_CTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 760) select CRYPTO_GCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 761) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 762) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 763) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 764) select CRYPTO_SM3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 765) select CRYPTO_SM4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 766) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 767) select CRTPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 768) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 769) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 770) select CRYPTO_RSA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 771)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 772) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 773) This driver interfaces with the hardware crypto accelerator.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 774) Supporting cbc/ecb chainmode, and aes/des/des3_ede cipher mode.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 775)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 776) source "drivers/crypto/rockchip/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 777)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 778) config CRYPTO_DEV_ZYNQMP_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 779) tristate "Support for Xilinx ZynqMP AES hw accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 780) depends on ZYNQMP_FIRMWARE || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 781) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 782) select CRYPTO_ENGINE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 783) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 784) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 785) Xilinx ZynqMP has AES-GCM engine used for symmetric key
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 786) encryption and decryption. This driver interfaces with AES hw
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 787) accelerator. Select this if you want to use the ZynqMP module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 788) for AES algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 789)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 790) config CRYPTO_DEV_MEDIATEK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 791) tristate "MediaTek's EIP97 Cryptographic Engine driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 792) depends on (ARM && ARCH_MEDIATEK) || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 793) select CRYPTO_LIB_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 794) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 795) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 796) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 797) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 798) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 799) select CRYPTO_HMAC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 800) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 801) This driver allows you to utilize the hardware crypto accelerator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 802) EIP97 which can be found on the MT7623 MT2701, MT8521p, etc ....
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 803) Select this if you want to use it for AES/SHA1/SHA2 algorithms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 804)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 805) source "drivers/crypto/chelsio/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 806)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 807) source "drivers/crypto/virtio/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 808)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 809) config CRYPTO_DEV_BCM_SPU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 810) tristate "Broadcom symmetric crypto/hash acceleration support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 811) depends on ARCH_BCM_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 812) depends on MAILBOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 813) default m
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 814) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 815) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 816) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 817) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 818) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 819) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 820) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 821) This driver provides support for Broadcom crypto acceleration using the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 822) Secure Processing Unit (SPU). The SPU driver registers skcipher,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 823) ahash, and aead algorithms with the kernel cryptographic API.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 824)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 825) source "drivers/crypto/stm32/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 826)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 827) config CRYPTO_DEV_SAFEXCEL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 828) tristate "Inside Secure's SafeXcel cryptographic engine driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 829) depends on (OF || PCI || COMPILE_TEST) && HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 830) select CRYPTO_LIB_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 831) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 832) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 833) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 834) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 835) select CRYPTO_HMAC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 836) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 837) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 838) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 839) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 840) select CRYPTO_CHACHA20POLY1305
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 841) select CRYPTO_SHA3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 842) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 843) This driver interfaces with the SafeXcel EIP-97 and EIP-197 cryptographic
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 844) engines designed by Inside Secure. It currently accelerates DES, 3DES and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 845) AES block ciphers in ECB and CBC mode, as well as SHA1, SHA224, SHA256,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 846) SHA384 and SHA512 hash algorithms for both basic hash and HMAC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 847) Additionally, it accelerates combined AES-CBC/HMAC-SHA AEAD operations.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 848)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 849) config CRYPTO_DEV_ARTPEC6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 850) tristate "Support for Axis ARTPEC-6/7 hardware crypto acceleration."
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 851) depends on ARM && (ARCH_ARTPEC || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 852) depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 853) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 854) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 855) select CRYPTO_ALGAPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 856) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 857) select CRYPTO_CTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 858) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 859) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 860) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 861) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 862) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 863) Enables the driver for the on-chip crypto accelerator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 864) of Axis ARTPEC SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 865)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 866) To compile this driver as a module, choose M here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 867)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 868) config CRYPTO_DEV_CCREE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 869) tristate "Support for ARM TrustZone CryptoCell family of security processors"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 870) depends on CRYPTO && CRYPTO_HW && OF && HAS_DMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 871) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 872) select CRYPTO_HASH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 873) select CRYPTO_SKCIPHER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 874) select CRYPTO_LIB_DES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 875) select CRYPTO_AEAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 876) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 877) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 878) select CRYPTO_MD5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 879) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 880) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 881) select CRYPTO_HMAC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 882) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 883) select CRYPTO_CBC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 884) select CRYPTO_ECB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 885) select CRYPTO_CTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 886) select CRYPTO_XTS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 887) select CRYPTO_SM4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 888) select CRYPTO_SM3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 889) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 890) Say 'Y' to enable a driver for the REE interface of the Arm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 891) TrustZone CryptoCell family of processors. Currently the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 892) CryptoCell 713, 703, 712, 710 and 630 are supported.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 893) Choose this if you wish to use hardware acceleration of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 894) cryptographic operations on the system REE.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 895) If unsure say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 896)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 897) source "drivers/crypto/hisilicon/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 898)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 899) source "drivers/crypto/amlogic/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 900)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 901) config CRYPTO_DEV_SA2UL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 902) tristate "Support for TI security accelerator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 903) depends on ARCH_K3 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 904) select ARM64_CRYPTO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 905) select CRYPTO_AES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 906) select CRYPTO_AES_ARM64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 907) select CRYPTO_ALGAPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 908) select CRYPTO_AUTHENC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 909) select CRYPTO_SHA1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 910) select CRYPTO_SHA256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 911) select CRYPTO_SHA512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 912) select HW_RANDOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 913) select SG_SPLIT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 914) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 915) K3 devices include a security accelerator engine that may be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 916) used for crypto offload. Select this if you want to use hardware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 917) acceleration for cryptographic algorithms on these devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 918)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 919) endif # CRYPTO_HW