1b511431dSJan Engelhardt 2b511431dSJan Engelhardtmenuconfig CRYPTO_HW 3b511431dSJan Engelhardt bool "Hardware crypto devices" 4b511431dSJan Engelhardt default y 506bfb7ebSJan Engelhardt ---help--- 606bfb7ebSJan Engelhardt Say Y here to get to see options for hardware crypto devices and 706bfb7ebSJan Engelhardt processors. This option alone does not add any kernel code. 806bfb7ebSJan Engelhardt 906bfb7ebSJan Engelhardt If you say N, all options in this submenu will be skipped and disabled. 10b511431dSJan Engelhardt 11b511431dSJan Engelhardtif CRYPTO_HW 121da177e4SLinus Torvalds 131da177e4SLinus Torvaldsconfig CRYPTO_DEV_PADLOCK 14d158325eSHerbert Xu tristate "Support for VIA PadLock ACE" 152f817418SHerbert Xu depends on X86 && !UML 161da177e4SLinus Torvalds help 171da177e4SLinus Torvalds Some VIA processors come with an integrated crypto engine 181da177e4SLinus Torvalds (so called VIA PadLock ACE, Advanced Cryptography Engine) 191191f0a4SMichal Ludvig that provides instructions for very fast cryptographic 201191f0a4SMichal Ludvig operations with supported algorithms. 211da177e4SLinus Torvalds 221da177e4SLinus Torvalds The instructions are used only when the CPU supports them. 235644bda5SMichal Ludvig Otherwise software encryption is used. 245644bda5SMichal Ludvig 251da177e4SLinus Torvaldsconfig CRYPTO_DEV_PADLOCK_AES 261191f0a4SMichal Ludvig tristate "PadLock driver for AES algorithm" 271da177e4SLinus Torvalds depends on CRYPTO_DEV_PADLOCK 2828ce728aSHerbert Xu select CRYPTO_BLKCIPHER 297dc748e4SSebastian Siewior select CRYPTO_AES 301da177e4SLinus Torvalds help 311da177e4SLinus Torvalds Use VIA PadLock for AES algorithm. 321da177e4SLinus Torvalds 331191f0a4SMichal Ludvig Available in VIA C3 and newer CPUs. 341191f0a4SMichal Ludvig 351191f0a4SMichal Ludvig If unsure say M. The compiled module will be 364737f097SPavel Machek called padlock-aes. 371191f0a4SMichal Ludvig 386c833275SMichal Ludvigconfig CRYPTO_DEV_PADLOCK_SHA 396c833275SMichal Ludvig tristate "PadLock driver for SHA1 and SHA256 algorithms" 406c833275SMichal Ludvig depends on CRYPTO_DEV_PADLOCK 41bbbee467SHerbert Xu select CRYPTO_HASH 426c833275SMichal Ludvig select CRYPTO_SHA1 436c833275SMichal Ludvig select CRYPTO_SHA256 446c833275SMichal Ludvig help 456c833275SMichal Ludvig Use VIA PadLock for SHA1/SHA256 algorithms. 466c833275SMichal Ludvig 476c833275SMichal Ludvig Available in VIA C7 and newer processors. 486c833275SMichal Ludvig 496c833275SMichal Ludvig If unsure say M. The compiled module will be 504737f097SPavel Machek called padlock-sha. 516c833275SMichal Ludvig 529fe757b0SJordan Crouseconfig CRYPTO_DEV_GEODE 539fe757b0SJordan Crouse tristate "Support for the Geode LX AES engine" 54f6259deaSSimon Arlott depends on X86_32 && PCI 559fe757b0SJordan Crouse select CRYPTO_ALGAPI 569fe757b0SJordan Crouse select CRYPTO_BLKCIPHER 579fe757b0SJordan Crouse help 589fe757b0SJordan Crouse Say 'Y' here to use the AMD Geode LX processor on-board AES 593dde6ad8SDavid Sterba engine for the CryptoAPI AES algorithm. 609fe757b0SJordan Crouse 619fe757b0SJordan Crouse To compile this driver as a module, choose M here: the module 629fe757b0SJordan Crouse will be called geode-aes. 639fe757b0SJordan Crouse 6461d48c2cSMartin Schwidefskyconfig ZCRYPT 65a3358e3dSHarald Freudenberger tristate "Support for s390 cryptographic adapters" 6661d48c2cSMartin Schwidefsky depends on S390 672f7c8bd6SRalph Wuerthner select HW_RANDOM 6861d48c2cSMartin Schwidefsky help 69a3358e3dSHarald Freudenberger Select this option if you want to enable support for 70a3358e3dSHarald Freudenberger s390 cryptographic adapters like: 7161d48c2cSMartin Schwidefsky + PCI-X Cryptographic Coprocessor (PCIXCC) 72a3358e3dSHarald Freudenberger + Crypto Express 2,3,4 or 5 Coprocessor (CEXxC) 73a3358e3dSHarald Freudenberger + Crypto Express 2,3,4 or 5 Accelerator (CEXxA) 74a3358e3dSHarald Freudenberger + Crypto Express 4 or 5 EP11 Coprocessor (CEXxP) 7561d48c2cSMartin Schwidefsky 76e80d4af0SHarald Freudenbergerconfig PKEY 77e80d4af0SHarald Freudenberger tristate "Kernel API for protected key handling" 78e80d4af0SHarald Freudenberger depends on S390 79e80d4af0SHarald Freudenberger depends on ZCRYPT 80e80d4af0SHarald Freudenberger help 81e80d4af0SHarald Freudenberger With this option enabled the pkey kernel module provides an API 82e80d4af0SHarald Freudenberger for creation and handling of protected keys. Other parts of the 83e80d4af0SHarald Freudenberger kernel or userspace applications may use these functions. 84e80d4af0SHarald Freudenberger 85e80d4af0SHarald Freudenberger Select this option if you want to enable the kernel and userspace 86e80d4af0SHarald Freudenberger API for proteced key handling. 87e80d4af0SHarald Freudenberger 88e80d4af0SHarald Freudenberger Please note that creation of protected keys from secure keys 89e80d4af0SHarald Freudenberger requires to have at least one CEX card in coprocessor mode 90e80d4af0SHarald Freudenberger available at runtime. 9161d48c2cSMartin Schwidefsky 92*c4684f98SHarald Freudenbergerconfig CRYPTO_PAES_S390 93*c4684f98SHarald Freudenberger tristate "PAES cipher algorithms" 94*c4684f98SHarald Freudenberger depends on S390 95*c4684f98SHarald Freudenberger depends on ZCRYPT 96*c4684f98SHarald Freudenberger depends on PKEY 97*c4684f98SHarald Freudenberger select CRYPTO_ALGAPI 98*c4684f98SHarald Freudenberger select CRYPTO_BLKCIPHER 99*c4684f98SHarald Freudenberger help 100*c4684f98SHarald Freudenberger This is the s390 hardware accelerated implementation of the 101*c4684f98SHarald Freudenberger AES cipher algorithms for use with protected key. 102*c4684f98SHarald Freudenberger 103*c4684f98SHarald Freudenberger Select this option if you want to use the paes cipher 104*c4684f98SHarald Freudenberger for example to use protected key encrypted devices. 105*c4684f98SHarald Freudenberger 1063f5615e0SJan Glauberconfig CRYPTO_SHA1_S390 1073f5615e0SJan Glauber tristate "SHA1 digest algorithm" 1083f5615e0SJan Glauber depends on S390 109563f346dSHerbert Xu select CRYPTO_HASH 1103f5615e0SJan Glauber help 1113f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 1123f5615e0SJan Glauber SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2). 1133f5615e0SJan Glauber 114d393d9b8SJan Glauber It is available as of z990. 115d393d9b8SJan Glauber 1163f5615e0SJan Glauberconfig CRYPTO_SHA256_S390 1173f5615e0SJan Glauber tristate "SHA256 digest algorithm" 1183f5615e0SJan Glauber depends on S390 119563f346dSHerbert Xu select CRYPTO_HASH 1203f5615e0SJan Glauber help 1213f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 1223f5615e0SJan Glauber SHA256 secure hash standard (DFIPS 180-2). 1233f5615e0SJan Glauber 124d393d9b8SJan Glauber It is available as of z9. 1253f5615e0SJan Glauber 126291dc7c0SJan Glauberconfig CRYPTO_SHA512_S390 1274e2c6d7fSJan Glauber tristate "SHA384 and SHA512 digest algorithm" 128291dc7c0SJan Glauber depends on S390 129563f346dSHerbert Xu select CRYPTO_HASH 130291dc7c0SJan Glauber help 131291dc7c0SJan Glauber This is the s390 hardware accelerated implementation of the 132291dc7c0SJan Glauber SHA512 secure hash standard. 133291dc7c0SJan Glauber 134d393d9b8SJan Glauber It is available as of z10. 135291dc7c0SJan Glauber 1363f5615e0SJan Glauberconfig CRYPTO_DES_S390 1373f5615e0SJan Glauber tristate "DES and Triple DES cipher algorithms" 1383f5615e0SJan Glauber depends on S390 1393f5615e0SJan Glauber select CRYPTO_ALGAPI 1403f5615e0SJan Glauber select CRYPTO_BLKCIPHER 14163291d40SHeiko Carstens select CRYPTO_DES 1423f5615e0SJan Glauber help 1430200f3ecSGerald Schaefer This is the s390 hardware accelerated implementation of the 1443f5615e0SJan Glauber DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3). 1453f5615e0SJan Glauber 1460200f3ecSGerald Schaefer As of z990 the ECB and CBC mode are hardware accelerated. 1470200f3ecSGerald Schaefer As of z196 the CTR mode is hardware accelerated. 1480200f3ecSGerald Schaefer 1493f5615e0SJan Glauberconfig CRYPTO_AES_S390 1503f5615e0SJan Glauber tristate "AES cipher algorithms" 1513f5615e0SJan Glauber depends on S390 1523f5615e0SJan Glauber select CRYPTO_ALGAPI 1533f5615e0SJan Glauber select CRYPTO_BLKCIPHER 1543f5615e0SJan Glauber help 1553f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 15699d97222SGerald Schaefer AES cipher algorithms (FIPS-197). 1573f5615e0SJan Glauber 15899d97222SGerald Schaefer As of z9 the ECB and CBC modes are hardware accelerated 15999d97222SGerald Schaefer for 128 bit keys. 16099d97222SGerald Schaefer As of z10 the ECB and CBC modes are hardware accelerated 16199d97222SGerald Schaefer for all AES key sizes. 1620200f3ecSGerald Schaefer As of z196 the CTR mode is hardware accelerated for all AES 1630200f3ecSGerald Schaefer key sizes and XTS mode is hardware accelerated for 256 and 16499d97222SGerald Schaefer 512 bit keys. 1653f5615e0SJan Glauber 1663f5615e0SJan Glauberconfig S390_PRNG 1673f5615e0SJan Glauber tristate "Pseudo random number generator device driver" 1683f5615e0SJan Glauber depends on S390 1693f5615e0SJan Glauber default "m" 1703f5615e0SJan Glauber help 1713f5615e0SJan Glauber Select this option if you want to use the s390 pseudo random number 1723f5615e0SJan Glauber generator. The PRNG is part of the cryptographic processor functions 1733f5615e0SJan Glauber and uses triple-DES to generate secure random numbers like the 174d393d9b8SJan Glauber ANSI X9.17 standard. User-space programs access the 175d393d9b8SJan Glauber pseudo-random-number device through the char device /dev/prandom. 176d393d9b8SJan Glauber 177d393d9b8SJan Glauber It is available as of z9. 1783f5615e0SJan Glauber 179df1309ceSGerald Schaeferconfig CRYPTO_GHASH_S390 180df1309ceSGerald Schaefer tristate "GHASH digest algorithm" 181df1309ceSGerald Schaefer depends on S390 182df1309ceSGerald Schaefer select CRYPTO_HASH 183df1309ceSGerald Schaefer help 184df1309ceSGerald Schaefer This is the s390 hardware accelerated implementation of the 185df1309ceSGerald Schaefer GHASH message digest algorithm for GCM (Galois/Counter Mode). 186df1309ceSGerald Schaefer 187df1309ceSGerald Schaefer It is available as of z196. 188df1309ceSGerald Schaefer 189f848dbd3SHendrik Bruecknerconfig CRYPTO_CRC32_S390 190f848dbd3SHendrik Brueckner tristate "CRC-32 algorithms" 191f848dbd3SHendrik Brueckner depends on S390 192f848dbd3SHendrik Brueckner select CRYPTO_HASH 193f848dbd3SHendrik Brueckner select CRC32 194f848dbd3SHendrik Brueckner help 195f848dbd3SHendrik Brueckner Select this option if you want to use hardware accelerated 196f848dbd3SHendrik Brueckner implementations of CRC algorithms. With this option, you 197f848dbd3SHendrik Brueckner can optimize the computation of CRC-32 (IEEE 802.3 Ethernet) 198f848dbd3SHendrik Brueckner and CRC-32C (Castagnoli). 199f848dbd3SHendrik Brueckner 200f848dbd3SHendrik Brueckner It is available with IBM z13 or later. 201f848dbd3SHendrik Brueckner 20285a7f0acSSebastian Andrzej Siewiorconfig CRYPTO_DEV_MV_CESA 20385a7f0acSSebastian Andrzej Siewior tristate "Marvell's Cryptographic Engine" 20485a7f0acSSebastian Andrzej Siewior depends on PLAT_ORION 20585a7f0acSSebastian Andrzej Siewior select CRYPTO_AES 206596103cfSHerbert Xu select CRYPTO_BLKCIPHER 2071ebfefcfSAlexander Clouter select CRYPTO_HASH 20851b44fc8SBoris BREZILLON select SRAM 20985a7f0acSSebastian Andrzej Siewior help 21085a7f0acSSebastian Andrzej Siewior This driver allows you to utilize the Cryptographic Engines and 21185a7f0acSSebastian Andrzej Siewior Security Accelerator (CESA) which can be found on the Marvell Orion 21285a7f0acSSebastian Andrzej Siewior and Kirkwood SoCs, such as QNAP's TS-209. 21385a7f0acSSebastian Andrzej Siewior 21485a7f0acSSebastian Andrzej Siewior Currently the driver supports AES in ECB and CBC mode without DMA. 21585a7f0acSSebastian Andrzej Siewior 216f63601fdSBoris BREZILLONconfig CRYPTO_DEV_MARVELL_CESA 217f63601fdSBoris BREZILLON tristate "New Marvell's Cryptographic Engine driver" 218fe55dfdcSBoris Brezillon depends on PLAT_ORION || ARCH_MVEBU 219f63601fdSBoris BREZILLON select CRYPTO_AES 220f63601fdSBoris BREZILLON select CRYPTO_DES 221f63601fdSBoris BREZILLON select CRYPTO_BLKCIPHER 222f63601fdSBoris BREZILLON select CRYPTO_HASH 223f63601fdSBoris BREZILLON select SRAM 224f63601fdSBoris BREZILLON help 225f63601fdSBoris BREZILLON This driver allows you to utilize the Cryptographic Engines and 226f63601fdSBoris BREZILLON Security Accelerator (CESA) which can be found on the Armada 370. 227db509a45SBoris BREZILLON This driver supports CPU offload through DMA transfers. 228f63601fdSBoris BREZILLON 229f63601fdSBoris BREZILLON This driver is aimed at replacing the mv_cesa driver. This will only 230f63601fdSBoris BREZILLON happen once it has received proper testing. 231f63601fdSBoris BREZILLON 2320a625fd2SDavid S. Millerconfig CRYPTO_DEV_NIAGARA2 2330a625fd2SDavid S. Miller tristate "Niagara2 Stream Processing Unit driver" 23450e78161SDavid S. Miller select CRYPTO_DES 235596103cfSHerbert Xu select CRYPTO_BLKCIPHER 236596103cfSHerbert Xu select CRYPTO_HASH 2378054b800SLABBE Corentin select CRYPTO_MD5 2388054b800SLABBE Corentin select CRYPTO_SHA1 2398054b800SLABBE Corentin select CRYPTO_SHA256 2400a625fd2SDavid S. Miller depends on SPARC64 2410a625fd2SDavid S. Miller help 2420a625fd2SDavid S. Miller Each core of a Niagara2 processor contains a Stream 2430a625fd2SDavid S. Miller Processing Unit, which itself contains several cryptographic 2440a625fd2SDavid S. Miller sub-units. One set provides the Modular Arithmetic Unit, 2450a625fd2SDavid S. Miller used for SSL offload. The other set provides the Cipher 2460a625fd2SDavid S. Miller Group, which can perform encryption, decryption, hashing, 2470a625fd2SDavid S. Miller checksumming, and raw copies. 2480a625fd2SDavid S. Miller 249f7d0561eSEvgeniy Polyakovconfig CRYPTO_DEV_HIFN_795X 250f7d0561eSEvgeniy Polyakov tristate "Driver HIFN 795x crypto accelerator chips" 251c3041f9cSEvgeniy Polyakov select CRYPTO_DES 252653ebd9cSHerbert Xu select CRYPTO_BLKCIPHER 253946fef4eSHerbert Xu select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG 2542707b937SJan Glauber depends on PCI 25575b76625SRichard Weinberger depends on !ARCH_DMA_ADDR_T_64BIT 256f7d0561eSEvgeniy Polyakov help 257f7d0561eSEvgeniy Polyakov This option allows you to have support for HIFN 795x crypto adapters. 258f7d0561eSEvgeniy Polyakov 259946fef4eSHerbert Xuconfig CRYPTO_DEV_HIFN_795X_RNG 260946fef4eSHerbert Xu bool "HIFN 795x random number generator" 261946fef4eSHerbert Xu depends on CRYPTO_DEV_HIFN_795X 262946fef4eSHerbert Xu help 263946fef4eSHerbert Xu Select this option if you want to enable the random number generator 264946fef4eSHerbert Xu on the HIFN 795x crypto adapters. 265f7d0561eSEvgeniy Polyakov 2668e8ec596SKim Phillipssource drivers/crypto/caam/Kconfig 2678e8ec596SKim Phillips 2689c4a7965SKim Phillipsconfig CRYPTO_DEV_TALITOS 2699c4a7965SKim Phillips tristate "Talitos Freescale Security Engine (SEC)" 270596103cfSHerbert Xu select CRYPTO_AEAD 2719c4a7965SKim Phillips select CRYPTO_AUTHENC 272596103cfSHerbert Xu select CRYPTO_BLKCIPHER 273596103cfSHerbert Xu select CRYPTO_HASH 2749c4a7965SKim Phillips select HW_RANDOM 2759c4a7965SKim Phillips depends on FSL_SOC 2769c4a7965SKim Phillips help 2779c4a7965SKim Phillips Say 'Y' here to use the Freescale Security Engine (SEC) 2789c4a7965SKim Phillips to offload cryptographic algorithm computation. 2799c4a7965SKim Phillips 2809c4a7965SKim Phillips The Freescale SEC is present on PowerQUICC 'E' processors, such 2819c4a7965SKim Phillips as the MPC8349E and MPC8548E. 2829c4a7965SKim Phillips 2839c4a7965SKim Phillips To compile this driver as a module, choose M here: the module 2849c4a7965SKim Phillips will be called talitos. 2859c4a7965SKim Phillips 2865b841a65SLEROY Christopheconfig CRYPTO_DEV_TALITOS1 2875b841a65SLEROY Christophe bool "SEC1 (SEC 1.0 and SEC Lite 1.2)" 2885b841a65SLEROY Christophe depends on CRYPTO_DEV_TALITOS 2895b841a65SLEROY Christophe depends on PPC_8xx || PPC_82xx 2905b841a65SLEROY Christophe default y 2915b841a65SLEROY Christophe help 2925b841a65SLEROY Christophe Say 'Y' here to use the Freescale Security Engine (SEC) version 1.0 2935b841a65SLEROY Christophe found on MPC82xx or the Freescale Security Engine (SEC Lite) 2945b841a65SLEROY Christophe version 1.2 found on MPC8xx 2955b841a65SLEROY Christophe 2965b841a65SLEROY Christopheconfig CRYPTO_DEV_TALITOS2 2975b841a65SLEROY Christophe bool "SEC2+ (SEC version 2.0 or upper)" 2985b841a65SLEROY Christophe depends on CRYPTO_DEV_TALITOS 2995b841a65SLEROY Christophe default y if !PPC_8xx 3005b841a65SLEROY Christophe help 3015b841a65SLEROY Christophe Say 'Y' here to use the Freescale Security Engine (SEC) 3025b841a65SLEROY Christophe version 2 and following as found on MPC83xx, MPC85xx, etc ... 3035b841a65SLEROY Christophe 30481bef015SChristian Hohnstaedtconfig CRYPTO_DEV_IXP4XX 30581bef015SChristian Hohnstaedt tristate "Driver for IXP4xx crypto hardware acceleration" 3069665c52bSKrzysztof Hałasa depends on ARCH_IXP4XX && IXP4XX_QMGR && IXP4XX_NPE 30781bef015SChristian Hohnstaedt select CRYPTO_DES 308596103cfSHerbert Xu select CRYPTO_AEAD 309090657e4SImre Kaloz select CRYPTO_AUTHENC 31081bef015SChristian Hohnstaedt select CRYPTO_BLKCIPHER 31181bef015SChristian Hohnstaedt help 31281bef015SChristian Hohnstaedt Driver for the IXP4xx NPE crypto engine. 31381bef015SChristian Hohnstaedt 314049359d6SJames Hsiaoconfig CRYPTO_DEV_PPC4XX 315049359d6SJames Hsiao tristate "Driver AMCC PPC4xx crypto accelerator" 316049359d6SJames Hsiao depends on PPC && 4xx 317049359d6SJames Hsiao select CRYPTO_HASH 318049359d6SJames Hsiao select CRYPTO_BLKCIPHER 319049359d6SJames Hsiao help 320049359d6SJames Hsiao This option allows you to have support for AMCC crypto acceleration. 321049359d6SJames Hsiao 3225343e674SChristian Lamparterconfig HW_RANDOM_PPC4XX 3235343e674SChristian Lamparter bool "PowerPC 4xx generic true random number generator support" 3245343e674SChristian Lamparter depends on CRYPTO_DEV_PPC4XX && HW_RANDOM 3255343e674SChristian Lamparter default y 3265343e674SChristian Lamparter ---help--- 3275343e674SChristian Lamparter This option provides the kernel-side support for the TRNG hardware 3285343e674SChristian Lamparter found in the security function of some PowerPC 4xx SoCs. 3295343e674SChristian Lamparter 3308628e7c8SDmitry Kasatkinconfig CRYPTO_DEV_OMAP_SHAM 331eaef7e3fSLokesh Vutla tristate "Support for OMAP MD5/SHA1/SHA2 hw accelerator" 332eaef7e3fSLokesh Vutla depends on ARCH_OMAP2PLUS 3338628e7c8SDmitry Kasatkin select CRYPTO_SHA1 3348628e7c8SDmitry Kasatkin select CRYPTO_MD5 335eaef7e3fSLokesh Vutla select CRYPTO_SHA256 336eaef7e3fSLokesh Vutla select CRYPTO_SHA512 337eaef7e3fSLokesh Vutla select CRYPTO_HMAC 3388628e7c8SDmitry Kasatkin help 339eaef7e3fSLokesh Vutla OMAP processors have MD5/SHA1/SHA2 hw accelerator. Select this if you 340eaef7e3fSLokesh Vutla want to use the OMAP module for MD5/SHA1/SHA2 algorithms. 3418628e7c8SDmitry Kasatkin 342537559a5SDmitry Kasatkinconfig CRYPTO_DEV_OMAP_AES 343537559a5SDmitry Kasatkin tristate "Support for OMAP AES hw engine" 3441bbf6437SJoel Fernandes depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP2PLUS 345537559a5SDmitry Kasatkin select CRYPTO_AES 346596103cfSHerbert Xu select CRYPTO_BLKCIPHER 3470529900aSBaolin Wang select CRYPTO_ENGINE 3489fcb191aSLokesh Vutla select CRYPTO_CBC 3499fcb191aSLokesh Vutla select CRYPTO_ECB 3509fcb191aSLokesh Vutla select CRYPTO_CTR 351537559a5SDmitry Kasatkin help 352537559a5SDmitry Kasatkin OMAP processors have AES module accelerator. Select this if you 353537559a5SDmitry Kasatkin want to use the OMAP module for AES algorithms. 354537559a5SDmitry Kasatkin 355701d0f19SJoel Fernandesconfig CRYPTO_DEV_OMAP_DES 35697ee7ed3SPeter Meerwald tristate "Support for OMAP DES/3DES hw engine" 357701d0f19SJoel Fernandes depends on ARCH_OMAP2PLUS 358701d0f19SJoel Fernandes select CRYPTO_DES 359596103cfSHerbert Xu select CRYPTO_BLKCIPHER 360f1b77aacSBaolin Wang select CRYPTO_ENGINE 361701d0f19SJoel Fernandes help 362701d0f19SJoel Fernandes OMAP processors have DES/3DES module accelerator. Select this if you 363701d0f19SJoel Fernandes want to use the OMAP module for DES and 3DES algorithms. Currently 36497ee7ed3SPeter Meerwald the ECB and CBC modes of operation are supported by the driver. Also 36597ee7ed3SPeter Meerwald accesses made on unaligned boundaries are supported. 366701d0f19SJoel Fernandes 367ce921368SJamie Ilesconfig CRYPTO_DEV_PICOXCELL 368ce921368SJamie Iles tristate "Support for picoXcell IPSEC and Layer2 crypto engines" 3694f44d86dSJavier Martinez Canillas depends on (ARCH_PICOXCELL || COMPILE_TEST) && HAVE_CLK 370596103cfSHerbert Xu select CRYPTO_AEAD 371ce921368SJamie Iles select CRYPTO_AES 372ce921368SJamie Iles select CRYPTO_AUTHENC 373596103cfSHerbert Xu select CRYPTO_BLKCIPHER 374ce921368SJamie Iles select CRYPTO_DES 375ce921368SJamie Iles select CRYPTO_CBC 376ce921368SJamie Iles select CRYPTO_ECB 377ce921368SJamie Iles select CRYPTO_SEQIV 378ce921368SJamie Iles help 379ce921368SJamie Iles This option enables support for the hardware offload engines in the 380ce921368SJamie Iles Picochip picoXcell SoC devices. Select this for IPSEC ESP offload 381ce921368SJamie Iles and for 3gpp Layer 2 ciphering support. 382ce921368SJamie Iles 383ce921368SJamie Iles Saying m here will build a module named pipcoxcell_crypto. 384ce921368SJamie Iles 3855de88752SJavier Martinconfig CRYPTO_DEV_SAHARA 3865de88752SJavier Martin tristate "Support for SAHARA crypto accelerator" 38774d24d83SPaul Bolle depends on ARCH_MXC && OF 3885de88752SJavier Martin select CRYPTO_BLKCIPHER 3895de88752SJavier Martin select CRYPTO_AES 3905de88752SJavier Martin select CRYPTO_ECB 3915de88752SJavier Martin help 3925de88752SJavier Martin This option enables support for the SAHARA HW crypto accelerator 3935de88752SJavier Martin found in some Freescale i.MX chips. 3945de88752SJavier Martin 395d293b640SSteffen Trumtrarconfig CRYPTO_DEV_MXC_SCC 396d293b640SSteffen Trumtrar tristate "Support for Freescale Security Controller (SCC)" 397d293b640SSteffen Trumtrar depends on ARCH_MXC && OF 398d293b640SSteffen Trumtrar select CRYPTO_BLKCIPHER 399d293b640SSteffen Trumtrar select CRYPTO_DES 400d293b640SSteffen Trumtrar help 401d293b640SSteffen Trumtrar This option enables support for the Security Controller (SCC) 402d293b640SSteffen Trumtrar found in Freescale i.MX25 chips. 403d293b640SSteffen Trumtrar 404c46ea13fSKrzysztof Kozlowskiconfig CRYPTO_DEV_EXYNOS_RNG 405c46ea13fSKrzysztof Kozlowski tristate "EXYNOS HW pseudo random number generator support" 406c46ea13fSKrzysztof Kozlowski depends on ARCH_EXYNOS || COMPILE_TEST 407c46ea13fSKrzysztof Kozlowski depends on HAS_IOMEM 408c46ea13fSKrzysztof Kozlowski select CRYPTO_RNG 409c46ea13fSKrzysztof Kozlowski ---help--- 410c46ea13fSKrzysztof Kozlowski This driver provides kernel-side support through the 411c46ea13fSKrzysztof Kozlowski cryptographic API for the pseudo random number generator hardware 412c46ea13fSKrzysztof Kozlowski found on Exynos SoCs. 413c46ea13fSKrzysztof Kozlowski 414c46ea13fSKrzysztof Kozlowski To compile this driver as a module, choose M here: the 415c46ea13fSKrzysztof Kozlowski module will be called exynos-rng. 416c46ea13fSKrzysztof Kozlowski 417c46ea13fSKrzysztof Kozlowski If unsure, say Y. 418c46ea13fSKrzysztof Kozlowski 419a49e490cSVladimir Zapolskiyconfig CRYPTO_DEV_S5P 420e922e96fSNaveen Krishna Chatradhi tristate "Support for Samsung S5PV210/Exynos crypto accelerator" 421dc1d9deeSKrzysztof Kozlowski depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST 422dc1d9deeSKrzysztof Kozlowski depends on HAS_IOMEM && HAS_DMA 423a49e490cSVladimir Zapolskiy select CRYPTO_AES 424a49e490cSVladimir Zapolskiy select CRYPTO_BLKCIPHER 425a49e490cSVladimir Zapolskiy help 426a49e490cSVladimir Zapolskiy This option allows you to have support for S5P crypto acceleration. 427e922e96fSNaveen Krishna Chatradhi Select this to offload Samsung S5PV210 or S5PC110, Exynos from AES 428a49e490cSVladimir Zapolskiy algorithms execution. 429a49e490cSVladimir Zapolskiy 430aef7b31cSKent Yoderconfig CRYPTO_DEV_NX 4317011a122SDan Streetman bool "Support for IBM PowerPC Nest (NX) cryptographic acceleration" 4327011a122SDan Streetman depends on PPC64 433aef7b31cSKent Yoder help 4347011a122SDan Streetman This enables support for the NX hardware cryptographic accelerator 4357011a122SDan Streetman coprocessor that is in IBM PowerPC P7+ or later processors. This 4367011a122SDan Streetman does not actually enable any drivers, it only allows you to select 4377011a122SDan Streetman which acceleration type (encryption and/or compression) to enable. 438322cacceSSeth Jennings 439322cacceSSeth Jenningsif CRYPTO_DEV_NX 440322cacceSSeth Jennings source "drivers/crypto/nx/Kconfig" 441322cacceSSeth Jenningsendif 442aef7b31cSKent Yoder 4432789c08fSAndreas Westinconfig CRYPTO_DEV_UX500 4442789c08fSAndreas Westin tristate "Driver for ST-Ericsson UX500 crypto hardware acceleration" 4452789c08fSAndreas Westin depends on ARCH_U8500 4462789c08fSAndreas Westin help 4472789c08fSAndreas Westin Driver for ST-Ericsson UX500 crypto engine. 4482789c08fSAndreas Westin 4492789c08fSAndreas Westinif CRYPTO_DEV_UX500 4502789c08fSAndreas Westin source "drivers/crypto/ux500/Kconfig" 4512789c08fSAndreas Westinendif # if CRYPTO_DEV_UX500 4522789c08fSAndreas Westin 453b8840098SSonic Zhangconfig CRYPTO_DEV_BFIN_CRC 454b8840098SSonic Zhang tristate "Support for Blackfin CRC hardware" 455b8840098SSonic Zhang depends on BF60x 456b8840098SSonic Zhang help 457b8840098SSonic Zhang Newer Blackfin processors have CRC hardware. Select this if you 458b8840098SSonic Zhang want to use the Blackfin CRC module. 459b8840098SSonic Zhang 46089a82ef8SCyrille Pitchenconfig CRYPTO_DEV_ATMEL_AUTHENC 46189a82ef8SCyrille Pitchen tristate "Support for Atmel IPSEC/SSL hw accelerator" 462ceb4afb3SArnd Bergmann depends on HAS_DMA 463ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 46489a82ef8SCyrille Pitchen select CRYPTO_AUTHENC 46589a82ef8SCyrille Pitchen select CRYPTO_DEV_ATMEL_AES 46689a82ef8SCyrille Pitchen select CRYPTO_DEV_ATMEL_SHA 46789a82ef8SCyrille Pitchen help 46889a82ef8SCyrille Pitchen Some Atmel processors can combine the AES and SHA hw accelerators 46989a82ef8SCyrille Pitchen to enhance support of IPSEC/SSL. 47089a82ef8SCyrille Pitchen Select this if you want to use the Atmel modules for 47189a82ef8SCyrille Pitchen authenc(hmac(shaX),Y(cbc)) algorithms. 47289a82ef8SCyrille Pitchen 473bd3c7b5cSNicolas Royerconfig CRYPTO_DEV_ATMEL_AES 474bd3c7b5cSNicolas Royer tristate "Support for Atmel AES hw accelerator" 475cbafd643SGeert Uytterhoeven depends on HAS_DMA 476ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 477bd3c7b5cSNicolas Royer select CRYPTO_AES 478d4419548SCyrille Pitchen select CRYPTO_AEAD 479bd3c7b5cSNicolas Royer select CRYPTO_BLKCIPHER 480bd3c7b5cSNicolas Royer help 481bd3c7b5cSNicolas Royer Some Atmel processors have AES hw accelerator. 482bd3c7b5cSNicolas Royer Select this if you want to use the Atmel module for 483bd3c7b5cSNicolas Royer AES algorithms. 484bd3c7b5cSNicolas Royer 485bd3c7b5cSNicolas Royer To compile this driver as a module, choose M here: the module 486bd3c7b5cSNicolas Royer will be called atmel-aes. 487bd3c7b5cSNicolas Royer 48813802005SNicolas Royerconfig CRYPTO_DEV_ATMEL_TDES 48913802005SNicolas Royer tristate "Support for Atmel DES/TDES hw accelerator" 490f7f9482eSGeert Uytterhoeven depends on HAS_DMA 491ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 49213802005SNicolas Royer select CRYPTO_DES 49313802005SNicolas Royer select CRYPTO_BLKCIPHER 49413802005SNicolas Royer help 49513802005SNicolas Royer Some Atmel processors have DES/TDES hw accelerator. 49613802005SNicolas Royer Select this if you want to use the Atmel module for 49713802005SNicolas Royer DES/TDES algorithms. 49813802005SNicolas Royer 49913802005SNicolas Royer To compile this driver as a module, choose M here: the module 50013802005SNicolas Royer will be called atmel-tdes. 50113802005SNicolas Royer 502ebc82efaSNicolas Royerconfig CRYPTO_DEV_ATMEL_SHA 503d4905b38SNicolas Royer tristate "Support for Atmel SHA hw accelerator" 504f7f9482eSGeert Uytterhoeven depends on HAS_DMA 505ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 506596103cfSHerbert Xu select CRYPTO_HASH 507ebc82efaSNicolas Royer help 508d4905b38SNicolas Royer Some Atmel processors have SHA1/SHA224/SHA256/SHA384/SHA512 509d4905b38SNicolas Royer hw accelerator. 510ebc82efaSNicolas Royer Select this if you want to use the Atmel module for 511d4905b38SNicolas Royer SHA1/SHA224/SHA256/SHA384/SHA512 algorithms. 512ebc82efaSNicolas Royer 513ebc82efaSNicolas Royer To compile this driver as a module, choose M here: the module 514ebc82efaSNicolas Royer will be called atmel-sha. 515ebc82efaSNicolas Royer 516f1147660STom Lendackyconfig CRYPTO_DEV_CCP 517f1147660STom Lendacky bool "Support for AMD Cryptographic Coprocessor" 5186c506343STom Lendacky depends on ((X86 && PCI) || (ARM64 && (OF_ADDRESS || ACPI))) && HAS_IOMEM 519f1147660STom Lendacky help 52021dc9e8fSTom Lendacky The AMD Cryptographic Coprocessor provides hardware offload support 521f1147660STom Lendacky for encryption, hashing and related operations. 522f1147660STom Lendacky 523f1147660STom Lendackyif CRYPTO_DEV_CCP 524f1147660STom Lendacky source "drivers/crypto/ccp/Kconfig" 525f1147660STom Lendackyendif 526f1147660STom Lendacky 52715b59e7cSMarek Vasutconfig CRYPTO_DEV_MXS_DCP 52815b59e7cSMarek Vasut tristate "Support for Freescale MXS DCP" 529a2712e6cSFabio Estevam depends on (ARCH_MXS || ARCH_MXC) 530dc97fa02SArnd Bergmann select STMP_DEVICE 53115b59e7cSMarek Vasut select CRYPTO_CBC 53215b59e7cSMarek Vasut select CRYPTO_ECB 53315b59e7cSMarek Vasut select CRYPTO_AES 53415b59e7cSMarek Vasut select CRYPTO_BLKCIPHER 535596103cfSHerbert Xu select CRYPTO_HASH 53615b59e7cSMarek Vasut help 53715b59e7cSMarek Vasut The Freescale i.MX23/i.MX28 has SHA1/SHA256 and AES128 CBC/ECB 53815b59e7cSMarek Vasut co-processor on the die. 53915b59e7cSMarek Vasut 54015b59e7cSMarek Vasut To compile this driver as a module, choose M here: the module 54115b59e7cSMarek Vasut will be called mxs-dcp. 54215b59e7cSMarek Vasut 543cea4001aSTadeusz Struksource "drivers/crypto/qat/Kconfig" 54462ad8b5cSGeorge Cheriansource "drivers/crypto/cavium/cpt/Kconfig" 545c672752dSStanimir Varbanov 546640035a2SMahipal Challaconfig CRYPTO_DEV_CAVIUM_ZIP 547640035a2SMahipal Challa tristate "Cavium ZIP driver" 548640035a2SMahipal Challa depends on PCI && 64BIT && (ARM64 || COMPILE_TEST) 549640035a2SMahipal Challa ---help--- 550640035a2SMahipal Challa Select this option if you want to enable compression/decompression 551640035a2SMahipal Challa acceleration on Cavium's ARM based SoCs 552640035a2SMahipal Challa 553c672752dSStanimir Varbanovconfig CRYPTO_DEV_QCE 554c672752dSStanimir Varbanov tristate "Qualcomm crypto engine accelerator" 55571d932d9SChen Gang depends on (ARCH_QCOM || COMPILE_TEST) && HAS_DMA && HAS_IOMEM 556c672752dSStanimir Varbanov select CRYPTO_AES 557c672752dSStanimir Varbanov select CRYPTO_DES 558c672752dSStanimir Varbanov select CRYPTO_ECB 559c672752dSStanimir Varbanov select CRYPTO_CBC 560c672752dSStanimir Varbanov select CRYPTO_XTS 561c672752dSStanimir Varbanov select CRYPTO_CTR 562c672752dSStanimir Varbanov select CRYPTO_BLKCIPHER 563c672752dSStanimir Varbanov help 564c672752dSStanimir Varbanov This driver supports Qualcomm crypto engine accelerator 565c672752dSStanimir Varbanov hardware. To compile this driver as a module, choose M here. The 566c672752dSStanimir Varbanov module will be called qcrypto. 567c672752dSStanimir Varbanov 568d2e3ae6fSLeonidas S. Barbosaconfig CRYPTO_DEV_VMX 569d2e3ae6fSLeonidas S. Barbosa bool "Support for VMX cryptographic acceleration instructions" 570f1ab4287SMichael Ellerman depends on PPC64 && VSX 571d2e3ae6fSLeonidas S. Barbosa help 572d2e3ae6fSLeonidas S. Barbosa Support for VMX cryptographic acceleration instructions. 573d2e3ae6fSLeonidas S. Barbosa 574d2e3ae6fSLeonidas S. Barbosasource "drivers/crypto/vmx/Kconfig" 575d2e3ae6fSLeonidas S. Barbosa 576d358f1abSJames Hartleyconfig CRYPTO_DEV_IMGTEC_HASH 577d358f1abSJames Hartley tristate "Imagination Technologies hardware hash accelerator" 5788c98ebd7SGeert Uytterhoeven depends on MIPS || COMPILE_TEST 5798c98ebd7SGeert Uytterhoeven depends on HAS_DMA 580d358f1abSJames Hartley select CRYPTO_MD5 581d358f1abSJames Hartley select CRYPTO_SHA1 582d358f1abSJames Hartley select CRYPTO_SHA256 583d358f1abSJames Hartley select CRYPTO_HASH 584d358f1abSJames Hartley help 585d358f1abSJames Hartley This driver interfaces with the Imagination Technologies 586d358f1abSJames Hartley hardware hash accelerator. Supporting MD5/SHA1/SHA224/SHA256 587d358f1abSJames Hartley hashing algorithms. 588d358f1abSJames Hartley 5896298e948SLABBE Corentinconfig CRYPTO_DEV_SUN4I_SS 5906298e948SLABBE Corentin tristate "Support for Allwinner Security System cryptographic accelerator" 591f823ab93SAndre Przywara depends on ARCH_SUNXI && !64BIT 5926298e948SLABBE Corentin select CRYPTO_MD5 5936298e948SLABBE Corentin select CRYPTO_SHA1 5946298e948SLABBE Corentin select CRYPTO_AES 5956298e948SLABBE Corentin select CRYPTO_DES 5966298e948SLABBE Corentin select CRYPTO_BLKCIPHER 5976298e948SLABBE Corentin help 5986298e948SLABBE Corentin Some Allwinner SoC have a crypto accelerator named 5996298e948SLABBE Corentin Security System. Select this if you want to use it. 6006298e948SLABBE Corentin The Security System handle AES/DES/3DES ciphers in CBC mode 6016298e948SLABBE Corentin and SHA1 and MD5 hash algorithms. 6026298e948SLABBE Corentin 6036298e948SLABBE Corentin To compile this driver as a module, choose M here: the module 6046298e948SLABBE Corentin will be called sun4i-ss. 6056298e948SLABBE Corentin 606433cd2c6SZain Wangconfig CRYPTO_DEV_ROCKCHIP 607433cd2c6SZain Wang tristate "Rockchip's Cryptographic Engine driver" 608433cd2c6SZain Wang depends on OF && ARCH_ROCKCHIP 609433cd2c6SZain Wang select CRYPTO_AES 610433cd2c6SZain Wang select CRYPTO_DES 611bfd927ffSZain Wang select CRYPTO_MD5 612bfd927ffSZain Wang select CRYPTO_SHA1 613bfd927ffSZain Wang select CRYPTO_SHA256 614bfd927ffSZain Wang select CRYPTO_HASH 615433cd2c6SZain Wang select CRYPTO_BLKCIPHER 616433cd2c6SZain Wang 617433cd2c6SZain Wang help 618433cd2c6SZain Wang This driver interfaces with the hardware crypto accelerator. 619433cd2c6SZain Wang Supporting cbc/ecb chainmode, and aes/des/des3_ede cipher mode. 620433cd2c6SZain Wang 621785e5c61SRyder Leeconfig CRYPTO_DEV_MEDIATEK 622785e5c61SRyder Lee tristate "MediaTek's EIP97 Cryptographic Engine driver" 623c884b368SGeert Uytterhoeven depends on HAS_DMA 6247dee9f61SArnd Bergmann depends on (ARM && ARCH_MEDIATEK) || COMPILE_TEST 625785e5c61SRyder Lee select CRYPTO_AES 626d03f7b0dSRyder Lee select CRYPTO_AEAD 627785e5c61SRyder Lee select CRYPTO_BLKCIPHER 628d03f7b0dSRyder Lee select CRYPTO_CTR 6297dee9f61SArnd Bergmann select CRYPTO_SHA1 6307dee9f61SArnd Bergmann select CRYPTO_SHA256 6317dee9f61SArnd Bergmann select CRYPTO_SHA512 632785e5c61SRyder Lee select CRYPTO_HMAC 633785e5c61SRyder Lee help 634785e5c61SRyder Lee This driver allows you to utilize the hardware crypto accelerator 635785e5c61SRyder Lee EIP97 which can be found on the MT7623 MT2701, MT8521p, etc .... 636785e5c61SRyder Lee Select this if you want to use it for AES/SHA1/SHA2 algorithms. 637785e5c61SRyder Lee 63802038fd6SHariprasad Shenaisource "drivers/crypto/chelsio/Kconfig" 63902038fd6SHariprasad Shenai 640dbaf0624SGongleisource "drivers/crypto/virtio/Kconfig" 641dbaf0624SGonglei 6429d12ba86SRob Riceconfig CRYPTO_DEV_BCM_SPU 6439d12ba86SRob Rice tristate "Broadcom symmetric crypto/hash acceleration support" 6449d12ba86SRob Rice depends on ARCH_BCM_IPROC 6459d12ba86SRob Rice depends on BCM_PDC_MBOX 6469d12ba86SRob Rice default m 6479d12ba86SRob Rice select CRYPTO_DES 6489d12ba86SRob Rice select CRYPTO_MD5 6499d12ba86SRob Rice select CRYPTO_SHA1 6509d12ba86SRob Rice select CRYPTO_SHA256 6519d12ba86SRob Rice select CRYPTO_SHA512 6529d12ba86SRob Rice help 6539d12ba86SRob Rice This driver provides support for Broadcom crypto acceleration using the 6549d12ba86SRob Rice Secure Processing Unit (SPU). The SPU driver registers ablkcipher, 6559d12ba86SRob Rice ahash, and aead algorithms with the kernel cryptographic API. 6569d12ba86SRob Rice 657b51dbe90SFabien DESSENNEsource "drivers/crypto/stm32/Kconfig" 658b51dbe90SFabien DESSENNE 659b511431dSJan Engelhardtendif # CRYPTO_HW 660