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 923f5615e0SJan Glauberconfig CRYPTO_SHA1_S390 933f5615e0SJan Glauber tristate "SHA1 digest algorithm" 943f5615e0SJan Glauber depends on S390 95563f346dSHerbert Xu select CRYPTO_HASH 963f5615e0SJan Glauber help 973f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 983f5615e0SJan Glauber SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2). 993f5615e0SJan Glauber 100d393d9b8SJan Glauber It is available as of z990. 101d393d9b8SJan Glauber 1023f5615e0SJan Glauberconfig CRYPTO_SHA256_S390 1033f5615e0SJan Glauber tristate "SHA256 digest algorithm" 1043f5615e0SJan Glauber depends on S390 105563f346dSHerbert Xu select CRYPTO_HASH 1063f5615e0SJan Glauber help 1073f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 1083f5615e0SJan Glauber SHA256 secure hash standard (DFIPS 180-2). 1093f5615e0SJan Glauber 110d393d9b8SJan Glauber It is available as of z9. 1113f5615e0SJan Glauber 112291dc7c0SJan Glauberconfig CRYPTO_SHA512_S390 1134e2c6d7fSJan Glauber tristate "SHA384 and SHA512 digest algorithm" 114291dc7c0SJan Glauber depends on S390 115563f346dSHerbert Xu select CRYPTO_HASH 116291dc7c0SJan Glauber help 117291dc7c0SJan Glauber This is the s390 hardware accelerated implementation of the 118291dc7c0SJan Glauber SHA512 secure hash standard. 119291dc7c0SJan Glauber 120d393d9b8SJan Glauber It is available as of z10. 121291dc7c0SJan Glauber 1223f5615e0SJan Glauberconfig CRYPTO_DES_S390 1233f5615e0SJan Glauber tristate "DES and Triple DES cipher algorithms" 1243f5615e0SJan Glauber depends on S390 1253f5615e0SJan Glauber select CRYPTO_ALGAPI 1263f5615e0SJan Glauber select CRYPTO_BLKCIPHER 12763291d40SHeiko Carstens select CRYPTO_DES 1283f5615e0SJan Glauber help 1290200f3ecSGerald Schaefer This is the s390 hardware accelerated implementation of the 1303f5615e0SJan Glauber DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3). 1313f5615e0SJan Glauber 1320200f3ecSGerald Schaefer As of z990 the ECB and CBC mode are hardware accelerated. 1330200f3ecSGerald Schaefer As of z196 the CTR mode is hardware accelerated. 1340200f3ecSGerald Schaefer 1353f5615e0SJan Glauberconfig CRYPTO_AES_S390 1363f5615e0SJan Glauber tristate "AES cipher algorithms" 1373f5615e0SJan Glauber depends on S390 1383f5615e0SJan Glauber select CRYPTO_ALGAPI 1393f5615e0SJan Glauber select CRYPTO_BLKCIPHER 14027937843SMartin Schwidefsky select PKEY 1413f5615e0SJan Glauber help 1423f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 14399d97222SGerald Schaefer AES cipher algorithms (FIPS-197). 1443f5615e0SJan Glauber 14599d97222SGerald Schaefer As of z9 the ECB and CBC modes are hardware accelerated 14699d97222SGerald Schaefer for 128 bit keys. 14799d97222SGerald Schaefer As of z10 the ECB and CBC modes are hardware accelerated 14899d97222SGerald Schaefer for all AES key sizes. 1490200f3ecSGerald Schaefer As of z196 the CTR mode is hardware accelerated for all AES 1500200f3ecSGerald Schaefer key sizes and XTS mode is hardware accelerated for 256 and 15199d97222SGerald Schaefer 512 bit keys. 1523f5615e0SJan Glauber 1533f5615e0SJan Glauberconfig S390_PRNG 1543f5615e0SJan Glauber tristate "Pseudo random number generator device driver" 1553f5615e0SJan Glauber depends on S390 1563f5615e0SJan Glauber default "m" 1573f5615e0SJan Glauber help 1583f5615e0SJan Glauber Select this option if you want to use the s390 pseudo random number 1593f5615e0SJan Glauber generator. The PRNG is part of the cryptographic processor functions 1603f5615e0SJan Glauber and uses triple-DES to generate secure random numbers like the 161d393d9b8SJan Glauber ANSI X9.17 standard. User-space programs access the 162d393d9b8SJan Glauber pseudo-random-number device through the char device /dev/prandom. 163d393d9b8SJan Glauber 164d393d9b8SJan Glauber It is available as of z9. 1653f5615e0SJan Glauber 166df1309ceSGerald Schaeferconfig CRYPTO_GHASH_S390 167df1309ceSGerald Schaefer tristate "GHASH digest algorithm" 168df1309ceSGerald Schaefer depends on S390 169df1309ceSGerald Schaefer select CRYPTO_HASH 170df1309ceSGerald Schaefer help 171df1309ceSGerald Schaefer This is the s390 hardware accelerated implementation of the 172df1309ceSGerald Schaefer GHASH message digest algorithm for GCM (Galois/Counter Mode). 173df1309ceSGerald Schaefer 174df1309ceSGerald Schaefer It is available as of z196. 175df1309ceSGerald Schaefer 176f848dbd3SHendrik Bruecknerconfig CRYPTO_CRC32_S390 177f848dbd3SHendrik Brueckner tristate "CRC-32 algorithms" 178f848dbd3SHendrik Brueckner depends on S390 179f848dbd3SHendrik Brueckner select CRYPTO_HASH 180f848dbd3SHendrik Brueckner select CRC32 181f848dbd3SHendrik Brueckner help 182f848dbd3SHendrik Brueckner Select this option if you want to use hardware accelerated 183f848dbd3SHendrik Brueckner implementations of CRC algorithms. With this option, you 184f848dbd3SHendrik Brueckner can optimize the computation of CRC-32 (IEEE 802.3 Ethernet) 185f848dbd3SHendrik Brueckner and CRC-32C (Castagnoli). 186f848dbd3SHendrik Brueckner 187f848dbd3SHendrik Brueckner It is available with IBM z13 or later. 188f848dbd3SHendrik Brueckner 18985a7f0acSSebastian Andrzej Siewiorconfig CRYPTO_DEV_MV_CESA 19085a7f0acSSebastian Andrzej Siewior tristate "Marvell's Cryptographic Engine" 19185a7f0acSSebastian Andrzej Siewior depends on PLAT_ORION 19285a7f0acSSebastian Andrzej Siewior select CRYPTO_AES 193596103cfSHerbert Xu select CRYPTO_BLKCIPHER 1941ebfefcfSAlexander Clouter select CRYPTO_HASH 19551b44fc8SBoris BREZILLON select SRAM 19685a7f0acSSebastian Andrzej Siewior help 19785a7f0acSSebastian Andrzej Siewior This driver allows you to utilize the Cryptographic Engines and 19885a7f0acSSebastian Andrzej Siewior Security Accelerator (CESA) which can be found on the Marvell Orion 19985a7f0acSSebastian Andrzej Siewior and Kirkwood SoCs, such as QNAP's TS-209. 20085a7f0acSSebastian Andrzej Siewior 20185a7f0acSSebastian Andrzej Siewior Currently the driver supports AES in ECB and CBC mode without DMA. 20285a7f0acSSebastian Andrzej Siewior 203f63601fdSBoris BREZILLONconfig CRYPTO_DEV_MARVELL_CESA 204f63601fdSBoris BREZILLON tristate "New Marvell's Cryptographic Engine driver" 205fe55dfdcSBoris Brezillon depends on PLAT_ORION || ARCH_MVEBU 206f63601fdSBoris BREZILLON select CRYPTO_AES 207f63601fdSBoris BREZILLON select CRYPTO_DES 208f63601fdSBoris BREZILLON select CRYPTO_BLKCIPHER 209f63601fdSBoris BREZILLON select CRYPTO_HASH 210f63601fdSBoris BREZILLON select SRAM 211f63601fdSBoris BREZILLON help 212f63601fdSBoris BREZILLON This driver allows you to utilize the Cryptographic Engines and 213f63601fdSBoris BREZILLON Security Accelerator (CESA) which can be found on the Armada 370. 214db509a45SBoris BREZILLON This driver supports CPU offload through DMA transfers. 215f63601fdSBoris BREZILLON 216f63601fdSBoris BREZILLON This driver is aimed at replacing the mv_cesa driver. This will only 217f63601fdSBoris BREZILLON happen once it has received proper testing. 218f63601fdSBoris BREZILLON 2190a625fd2SDavid S. Millerconfig CRYPTO_DEV_NIAGARA2 2200a625fd2SDavid S. Miller tristate "Niagara2 Stream Processing Unit driver" 22150e78161SDavid S. Miller select CRYPTO_DES 222596103cfSHerbert Xu select CRYPTO_BLKCIPHER 223596103cfSHerbert Xu select CRYPTO_HASH 2248054b800SLABBE Corentin select CRYPTO_MD5 2258054b800SLABBE Corentin select CRYPTO_SHA1 2268054b800SLABBE Corentin select CRYPTO_SHA256 2270a625fd2SDavid S. Miller depends on SPARC64 2280a625fd2SDavid S. Miller help 2290a625fd2SDavid S. Miller Each core of a Niagara2 processor contains a Stream 2300a625fd2SDavid S. Miller Processing Unit, which itself contains several cryptographic 2310a625fd2SDavid S. Miller sub-units. One set provides the Modular Arithmetic Unit, 2320a625fd2SDavid S. Miller used for SSL offload. The other set provides the Cipher 2330a625fd2SDavid S. Miller Group, which can perform encryption, decryption, hashing, 2340a625fd2SDavid S. Miller checksumming, and raw copies. 2350a625fd2SDavid S. Miller 236f7d0561eSEvgeniy Polyakovconfig CRYPTO_DEV_HIFN_795X 237f7d0561eSEvgeniy Polyakov tristate "Driver HIFN 795x crypto accelerator chips" 238c3041f9cSEvgeniy Polyakov select CRYPTO_DES 239653ebd9cSHerbert Xu select CRYPTO_BLKCIPHER 240946fef4eSHerbert Xu select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG 2412707b937SJan Glauber depends on PCI 24275b76625SRichard Weinberger depends on !ARCH_DMA_ADDR_T_64BIT 243f7d0561eSEvgeniy Polyakov help 244f7d0561eSEvgeniy Polyakov This option allows you to have support for HIFN 795x crypto adapters. 245f7d0561eSEvgeniy Polyakov 246946fef4eSHerbert Xuconfig CRYPTO_DEV_HIFN_795X_RNG 247946fef4eSHerbert Xu bool "HIFN 795x random number generator" 248946fef4eSHerbert Xu depends on CRYPTO_DEV_HIFN_795X 249946fef4eSHerbert Xu help 250946fef4eSHerbert Xu Select this option if you want to enable the random number generator 251946fef4eSHerbert Xu on the HIFN 795x crypto adapters. 252f7d0561eSEvgeniy Polyakov 2538e8ec596SKim Phillipssource drivers/crypto/caam/Kconfig 2548e8ec596SKim Phillips 2559c4a7965SKim Phillipsconfig CRYPTO_DEV_TALITOS 2569c4a7965SKim Phillips tristate "Talitos Freescale Security Engine (SEC)" 257596103cfSHerbert Xu select CRYPTO_AEAD 2589c4a7965SKim Phillips select CRYPTO_AUTHENC 259596103cfSHerbert Xu select CRYPTO_BLKCIPHER 260596103cfSHerbert Xu select CRYPTO_HASH 2619c4a7965SKim Phillips select HW_RANDOM 2629c4a7965SKim Phillips depends on FSL_SOC 2639c4a7965SKim Phillips help 2649c4a7965SKim Phillips Say 'Y' here to use the Freescale Security Engine (SEC) 2659c4a7965SKim Phillips to offload cryptographic algorithm computation. 2669c4a7965SKim Phillips 2679c4a7965SKim Phillips The Freescale SEC is present on PowerQUICC 'E' processors, such 2689c4a7965SKim Phillips as the MPC8349E and MPC8548E. 2699c4a7965SKim Phillips 2709c4a7965SKim Phillips To compile this driver as a module, choose M here: the module 2719c4a7965SKim Phillips will be called talitos. 2729c4a7965SKim Phillips 2735b841a65SLEROY Christopheconfig CRYPTO_DEV_TALITOS1 2745b841a65SLEROY Christophe bool "SEC1 (SEC 1.0 and SEC Lite 1.2)" 2755b841a65SLEROY Christophe depends on CRYPTO_DEV_TALITOS 2765b841a65SLEROY Christophe depends on PPC_8xx || PPC_82xx 2775b841a65SLEROY Christophe default y 2785b841a65SLEROY Christophe help 2795b841a65SLEROY Christophe Say 'Y' here to use the Freescale Security Engine (SEC) version 1.0 2805b841a65SLEROY Christophe found on MPC82xx or the Freescale Security Engine (SEC Lite) 2815b841a65SLEROY Christophe version 1.2 found on MPC8xx 2825b841a65SLEROY Christophe 2835b841a65SLEROY Christopheconfig CRYPTO_DEV_TALITOS2 2845b841a65SLEROY Christophe bool "SEC2+ (SEC version 2.0 or upper)" 2855b841a65SLEROY Christophe depends on CRYPTO_DEV_TALITOS 2865b841a65SLEROY Christophe default y if !PPC_8xx 2875b841a65SLEROY Christophe help 2885b841a65SLEROY Christophe Say 'Y' here to use the Freescale Security Engine (SEC) 2895b841a65SLEROY Christophe version 2 and following as found on MPC83xx, MPC85xx, etc ... 2905b841a65SLEROY Christophe 29181bef015SChristian Hohnstaedtconfig CRYPTO_DEV_IXP4XX 29281bef015SChristian Hohnstaedt tristate "Driver for IXP4xx crypto hardware acceleration" 2939665c52bSKrzysztof Hałasa depends on ARCH_IXP4XX && IXP4XX_QMGR && IXP4XX_NPE 29481bef015SChristian Hohnstaedt select CRYPTO_DES 295596103cfSHerbert Xu select CRYPTO_AEAD 296090657e4SImre Kaloz select CRYPTO_AUTHENC 29781bef015SChristian Hohnstaedt select CRYPTO_BLKCIPHER 29881bef015SChristian Hohnstaedt help 29981bef015SChristian Hohnstaedt Driver for the IXP4xx NPE crypto engine. 30081bef015SChristian Hohnstaedt 301049359d6SJames Hsiaoconfig CRYPTO_DEV_PPC4XX 302049359d6SJames Hsiao tristate "Driver AMCC PPC4xx crypto accelerator" 303049359d6SJames Hsiao depends on PPC && 4xx 304049359d6SJames Hsiao select CRYPTO_HASH 305049359d6SJames Hsiao select CRYPTO_BLKCIPHER 306049359d6SJames Hsiao help 307049359d6SJames Hsiao This option allows you to have support for AMCC crypto acceleration. 308049359d6SJames Hsiao 3095343e674SChristian Lamparterconfig HW_RANDOM_PPC4XX 3105343e674SChristian Lamparter bool "PowerPC 4xx generic true random number generator support" 3115343e674SChristian Lamparter depends on CRYPTO_DEV_PPC4XX && HW_RANDOM 3125343e674SChristian Lamparter default y 3135343e674SChristian Lamparter ---help--- 3145343e674SChristian Lamparter This option provides the kernel-side support for the TRNG hardware 3155343e674SChristian Lamparter found in the security function of some PowerPC 4xx SoCs. 3165343e674SChristian Lamparter 3178628e7c8SDmitry Kasatkinconfig CRYPTO_DEV_OMAP_SHAM 318eaef7e3fSLokesh Vutla tristate "Support for OMAP MD5/SHA1/SHA2 hw accelerator" 319eaef7e3fSLokesh Vutla depends on ARCH_OMAP2PLUS 3208628e7c8SDmitry Kasatkin select CRYPTO_SHA1 3218628e7c8SDmitry Kasatkin select CRYPTO_MD5 322eaef7e3fSLokesh Vutla select CRYPTO_SHA256 323eaef7e3fSLokesh Vutla select CRYPTO_SHA512 324eaef7e3fSLokesh Vutla select CRYPTO_HMAC 3258628e7c8SDmitry Kasatkin help 326eaef7e3fSLokesh Vutla OMAP processors have MD5/SHA1/SHA2 hw accelerator. Select this if you 327eaef7e3fSLokesh Vutla want to use the OMAP module for MD5/SHA1/SHA2 algorithms. 3288628e7c8SDmitry Kasatkin 329537559a5SDmitry Kasatkinconfig CRYPTO_DEV_OMAP_AES 330537559a5SDmitry Kasatkin tristate "Support for OMAP AES hw engine" 3311bbf6437SJoel Fernandes depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP2PLUS 332537559a5SDmitry Kasatkin select CRYPTO_AES 333596103cfSHerbert Xu select CRYPTO_BLKCIPHER 3340529900aSBaolin Wang select CRYPTO_ENGINE 3359fcb191aSLokesh Vutla select CRYPTO_CBC 3369fcb191aSLokesh Vutla select CRYPTO_ECB 3379fcb191aSLokesh Vutla select CRYPTO_CTR 338537559a5SDmitry Kasatkin help 339537559a5SDmitry Kasatkin OMAP processors have AES module accelerator. Select this if you 340537559a5SDmitry Kasatkin want to use the OMAP module for AES algorithms. 341537559a5SDmitry Kasatkin 342701d0f19SJoel Fernandesconfig CRYPTO_DEV_OMAP_DES 34397ee7ed3SPeter Meerwald tristate "Support for OMAP DES/3DES hw engine" 344701d0f19SJoel Fernandes depends on ARCH_OMAP2PLUS 345701d0f19SJoel Fernandes select CRYPTO_DES 346596103cfSHerbert Xu select CRYPTO_BLKCIPHER 347f1b77aacSBaolin Wang select CRYPTO_ENGINE 348701d0f19SJoel Fernandes help 349701d0f19SJoel Fernandes OMAP processors have DES/3DES module accelerator. Select this if you 350701d0f19SJoel Fernandes want to use the OMAP module for DES and 3DES algorithms. Currently 35197ee7ed3SPeter Meerwald the ECB and CBC modes of operation are supported by the driver. Also 35297ee7ed3SPeter Meerwald accesses made on unaligned boundaries are supported. 353701d0f19SJoel Fernandes 354ce921368SJamie Ilesconfig CRYPTO_DEV_PICOXCELL 355ce921368SJamie Iles tristate "Support for picoXcell IPSEC and Layer2 crypto engines" 3564f44d86dSJavier Martinez Canillas depends on (ARCH_PICOXCELL || COMPILE_TEST) && HAVE_CLK 357596103cfSHerbert Xu select CRYPTO_AEAD 358ce921368SJamie Iles select CRYPTO_AES 359ce921368SJamie Iles select CRYPTO_AUTHENC 360596103cfSHerbert Xu select CRYPTO_BLKCIPHER 361ce921368SJamie Iles select CRYPTO_DES 362ce921368SJamie Iles select CRYPTO_CBC 363ce921368SJamie Iles select CRYPTO_ECB 364ce921368SJamie Iles select CRYPTO_SEQIV 365ce921368SJamie Iles help 366ce921368SJamie Iles This option enables support for the hardware offload engines in the 367ce921368SJamie Iles Picochip picoXcell SoC devices. Select this for IPSEC ESP offload 368ce921368SJamie Iles and for 3gpp Layer 2 ciphering support. 369ce921368SJamie Iles 370ce921368SJamie Iles Saying m here will build a module named pipcoxcell_crypto. 371ce921368SJamie Iles 3725de88752SJavier Martinconfig CRYPTO_DEV_SAHARA 3735de88752SJavier Martin tristate "Support for SAHARA crypto accelerator" 37474d24d83SPaul Bolle depends on ARCH_MXC && OF 3755de88752SJavier Martin select CRYPTO_BLKCIPHER 3765de88752SJavier Martin select CRYPTO_AES 3775de88752SJavier Martin select CRYPTO_ECB 3785de88752SJavier Martin help 3795de88752SJavier Martin This option enables support for the SAHARA HW crypto accelerator 3805de88752SJavier Martin found in some Freescale i.MX chips. 3815de88752SJavier Martin 382d293b640SSteffen Trumtrarconfig CRYPTO_DEV_MXC_SCC 383d293b640SSteffen Trumtrar tristate "Support for Freescale Security Controller (SCC)" 384d293b640SSteffen Trumtrar depends on ARCH_MXC && OF 385d293b640SSteffen Trumtrar select CRYPTO_BLKCIPHER 386d293b640SSteffen Trumtrar select CRYPTO_DES 387d293b640SSteffen Trumtrar help 388d293b640SSteffen Trumtrar This option enables support for the Security Controller (SCC) 389d293b640SSteffen Trumtrar found in Freescale i.MX25 chips. 390d293b640SSteffen Trumtrar 391c46ea13fSKrzysztof Kozlowskiconfig CRYPTO_DEV_EXYNOS_RNG 392c46ea13fSKrzysztof Kozlowski tristate "EXYNOS HW pseudo random number generator support" 393c46ea13fSKrzysztof Kozlowski depends on ARCH_EXYNOS || COMPILE_TEST 394c46ea13fSKrzysztof Kozlowski depends on HAS_IOMEM 395c46ea13fSKrzysztof Kozlowski select CRYPTO_RNG 396c46ea13fSKrzysztof Kozlowski ---help--- 397c46ea13fSKrzysztof Kozlowski This driver provides kernel-side support through the 398c46ea13fSKrzysztof Kozlowski cryptographic API for the pseudo random number generator hardware 399c46ea13fSKrzysztof Kozlowski found on Exynos SoCs. 400c46ea13fSKrzysztof Kozlowski 401c46ea13fSKrzysztof Kozlowski To compile this driver as a module, choose M here: the 402c46ea13fSKrzysztof Kozlowski module will be called exynos-rng. 403c46ea13fSKrzysztof Kozlowski 404c46ea13fSKrzysztof Kozlowski If unsure, say Y. 405c46ea13fSKrzysztof Kozlowski 406a49e490cSVladimir Zapolskiyconfig CRYPTO_DEV_S5P 407e922e96fSNaveen Krishna Chatradhi tristate "Support for Samsung S5PV210/Exynos crypto accelerator" 408dc1d9deeSKrzysztof Kozlowski depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST 409dc1d9deeSKrzysztof Kozlowski depends on HAS_IOMEM && HAS_DMA 410a49e490cSVladimir Zapolskiy select CRYPTO_AES 411a49e490cSVladimir Zapolskiy select CRYPTO_BLKCIPHER 412a49e490cSVladimir Zapolskiy help 413a49e490cSVladimir Zapolskiy This option allows you to have support for S5P crypto acceleration. 414e922e96fSNaveen Krishna Chatradhi Select this to offload Samsung S5PV210 or S5PC110, Exynos from AES 415a49e490cSVladimir Zapolskiy algorithms execution. 416a49e490cSVladimir Zapolskiy 417aef7b31cSKent Yoderconfig CRYPTO_DEV_NX 4187011a122SDan Streetman bool "Support for IBM PowerPC Nest (NX) cryptographic acceleration" 4197011a122SDan Streetman depends on PPC64 420aef7b31cSKent Yoder help 4217011a122SDan Streetman This enables support for the NX hardware cryptographic accelerator 4227011a122SDan Streetman coprocessor that is in IBM PowerPC P7+ or later processors. This 4237011a122SDan Streetman does not actually enable any drivers, it only allows you to select 4247011a122SDan Streetman which acceleration type (encryption and/or compression) to enable. 425322cacceSSeth Jennings 426322cacceSSeth Jenningsif CRYPTO_DEV_NX 427322cacceSSeth Jennings source "drivers/crypto/nx/Kconfig" 428322cacceSSeth Jenningsendif 429aef7b31cSKent Yoder 4302789c08fSAndreas Westinconfig CRYPTO_DEV_UX500 4312789c08fSAndreas Westin tristate "Driver for ST-Ericsson UX500 crypto hardware acceleration" 4322789c08fSAndreas Westin depends on ARCH_U8500 4332789c08fSAndreas Westin help 4342789c08fSAndreas Westin Driver for ST-Ericsson UX500 crypto engine. 4352789c08fSAndreas Westin 4362789c08fSAndreas Westinif CRYPTO_DEV_UX500 4372789c08fSAndreas Westin source "drivers/crypto/ux500/Kconfig" 4382789c08fSAndreas Westinendif # if CRYPTO_DEV_UX500 4392789c08fSAndreas Westin 440b8840098SSonic Zhangconfig CRYPTO_DEV_BFIN_CRC 441b8840098SSonic Zhang tristate "Support for Blackfin CRC hardware" 442b8840098SSonic Zhang depends on BF60x 443b8840098SSonic Zhang help 444b8840098SSonic Zhang Newer Blackfin processors have CRC hardware. Select this if you 445b8840098SSonic Zhang want to use the Blackfin CRC module. 446b8840098SSonic Zhang 44789a82ef8SCyrille Pitchenconfig CRYPTO_DEV_ATMEL_AUTHENC 44889a82ef8SCyrille Pitchen tristate "Support for Atmel IPSEC/SSL hw accelerator" 449ceb4afb3SArnd Bergmann depends on HAS_DMA 450ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 45189a82ef8SCyrille Pitchen select CRYPTO_AUTHENC 45289a82ef8SCyrille Pitchen select CRYPTO_DEV_ATMEL_AES 45389a82ef8SCyrille Pitchen select CRYPTO_DEV_ATMEL_SHA 45489a82ef8SCyrille Pitchen help 45589a82ef8SCyrille Pitchen Some Atmel processors can combine the AES and SHA hw accelerators 45689a82ef8SCyrille Pitchen to enhance support of IPSEC/SSL. 45789a82ef8SCyrille Pitchen Select this if you want to use the Atmel modules for 45889a82ef8SCyrille Pitchen authenc(hmac(shaX),Y(cbc)) algorithms. 45989a82ef8SCyrille Pitchen 460bd3c7b5cSNicolas Royerconfig CRYPTO_DEV_ATMEL_AES 461bd3c7b5cSNicolas Royer tristate "Support for Atmel AES hw accelerator" 462cbafd643SGeert Uytterhoeven depends on HAS_DMA 463ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 464bd3c7b5cSNicolas Royer select CRYPTO_AES 465d4419548SCyrille Pitchen select CRYPTO_AEAD 466bd3c7b5cSNicolas Royer select CRYPTO_BLKCIPHER 467bd3c7b5cSNicolas Royer help 468bd3c7b5cSNicolas Royer Some Atmel processors have AES hw accelerator. 469bd3c7b5cSNicolas Royer Select this if you want to use the Atmel module for 470bd3c7b5cSNicolas Royer AES algorithms. 471bd3c7b5cSNicolas Royer 472bd3c7b5cSNicolas Royer To compile this driver as a module, choose M here: the module 473bd3c7b5cSNicolas Royer will be called atmel-aes. 474bd3c7b5cSNicolas Royer 47513802005SNicolas Royerconfig CRYPTO_DEV_ATMEL_TDES 47613802005SNicolas Royer tristate "Support for Atmel DES/TDES hw accelerator" 477f7f9482eSGeert Uytterhoeven depends on HAS_DMA 478ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 47913802005SNicolas Royer select CRYPTO_DES 48013802005SNicolas Royer select CRYPTO_BLKCIPHER 48113802005SNicolas Royer help 48213802005SNicolas Royer Some Atmel processors have DES/TDES hw accelerator. 48313802005SNicolas Royer Select this if you want to use the Atmel module for 48413802005SNicolas Royer DES/TDES algorithms. 48513802005SNicolas Royer 48613802005SNicolas Royer To compile this driver as a module, choose M here: the module 48713802005SNicolas Royer will be called atmel-tdes. 48813802005SNicolas Royer 489ebc82efaSNicolas Royerconfig CRYPTO_DEV_ATMEL_SHA 490d4905b38SNicolas Royer tristate "Support for Atmel SHA hw accelerator" 491f7f9482eSGeert Uytterhoeven depends on HAS_DMA 492ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 493596103cfSHerbert Xu select CRYPTO_HASH 494ebc82efaSNicolas Royer help 495d4905b38SNicolas Royer Some Atmel processors have SHA1/SHA224/SHA256/SHA384/SHA512 496d4905b38SNicolas Royer hw accelerator. 497ebc82efaSNicolas Royer Select this if you want to use the Atmel module for 498d4905b38SNicolas Royer SHA1/SHA224/SHA256/SHA384/SHA512 algorithms. 499ebc82efaSNicolas Royer 500ebc82efaSNicolas Royer To compile this driver as a module, choose M here: the module 501ebc82efaSNicolas Royer will be called atmel-sha. 502ebc82efaSNicolas Royer 503f1147660STom Lendackyconfig CRYPTO_DEV_CCP 504f1147660STom Lendacky bool "Support for AMD Cryptographic Coprocessor" 5056c506343STom Lendacky depends on ((X86 && PCI) || (ARM64 && (OF_ADDRESS || ACPI))) && HAS_IOMEM 506f1147660STom Lendacky help 50721dc9e8fSTom Lendacky The AMD Cryptographic Coprocessor provides hardware offload support 508f1147660STom Lendacky for encryption, hashing and related operations. 509f1147660STom Lendacky 510f1147660STom Lendackyif CRYPTO_DEV_CCP 511f1147660STom Lendacky source "drivers/crypto/ccp/Kconfig" 512f1147660STom Lendackyendif 513f1147660STom Lendacky 51415b59e7cSMarek Vasutconfig CRYPTO_DEV_MXS_DCP 51515b59e7cSMarek Vasut tristate "Support for Freescale MXS DCP" 516a2712e6cSFabio Estevam depends on (ARCH_MXS || ARCH_MXC) 517dc97fa02SArnd Bergmann select STMP_DEVICE 51815b59e7cSMarek Vasut select CRYPTO_CBC 51915b59e7cSMarek Vasut select CRYPTO_ECB 52015b59e7cSMarek Vasut select CRYPTO_AES 52115b59e7cSMarek Vasut select CRYPTO_BLKCIPHER 522596103cfSHerbert Xu select CRYPTO_HASH 52315b59e7cSMarek Vasut help 52415b59e7cSMarek Vasut The Freescale i.MX23/i.MX28 has SHA1/SHA256 and AES128 CBC/ECB 52515b59e7cSMarek Vasut co-processor on the die. 52615b59e7cSMarek Vasut 52715b59e7cSMarek Vasut To compile this driver as a module, choose M here: the module 52815b59e7cSMarek Vasut will be called mxs-dcp. 52915b59e7cSMarek Vasut 530cea4001aSTadeusz Struksource "drivers/crypto/qat/Kconfig" 53162ad8b5cSGeorge Cheriansource "drivers/crypto/cavium/cpt/Kconfig" 532c672752dSStanimir Varbanov 533640035a2SMahipal Challaconfig CRYPTO_DEV_CAVIUM_ZIP 534640035a2SMahipal Challa tristate "Cavium ZIP driver" 535640035a2SMahipal Challa depends on PCI && 64BIT && (ARM64 || COMPILE_TEST) 536640035a2SMahipal Challa ---help--- 537640035a2SMahipal Challa Select this option if you want to enable compression/decompression 538640035a2SMahipal Challa acceleration on Cavium's ARM based SoCs 539640035a2SMahipal Challa 540c672752dSStanimir Varbanovconfig CRYPTO_DEV_QCE 541c672752dSStanimir Varbanov tristate "Qualcomm crypto engine accelerator" 54271d932d9SChen Gang depends on (ARCH_QCOM || COMPILE_TEST) && HAS_DMA && HAS_IOMEM 543c672752dSStanimir Varbanov select CRYPTO_AES 544c672752dSStanimir Varbanov select CRYPTO_DES 545c672752dSStanimir Varbanov select CRYPTO_ECB 546c672752dSStanimir Varbanov select CRYPTO_CBC 547c672752dSStanimir Varbanov select CRYPTO_XTS 548c672752dSStanimir Varbanov select CRYPTO_CTR 549c672752dSStanimir Varbanov select CRYPTO_BLKCIPHER 550c672752dSStanimir Varbanov help 551c672752dSStanimir Varbanov This driver supports Qualcomm crypto engine accelerator 552c672752dSStanimir Varbanov hardware. To compile this driver as a module, choose M here. The 553c672752dSStanimir Varbanov module will be called qcrypto. 554c672752dSStanimir Varbanov 555d2e3ae6fSLeonidas S. Barbosaconfig CRYPTO_DEV_VMX 556d2e3ae6fSLeonidas S. Barbosa bool "Support for VMX cryptographic acceleration instructions" 557f1ab4287SMichael Ellerman depends on PPC64 && VSX 558d2e3ae6fSLeonidas S. Barbosa help 559d2e3ae6fSLeonidas S. Barbosa Support for VMX cryptographic acceleration instructions. 560d2e3ae6fSLeonidas S. Barbosa 561d2e3ae6fSLeonidas S. Barbosasource "drivers/crypto/vmx/Kconfig" 562d2e3ae6fSLeonidas S. Barbosa 563d358f1abSJames Hartleyconfig CRYPTO_DEV_IMGTEC_HASH 564d358f1abSJames Hartley tristate "Imagination Technologies hardware hash accelerator" 5658c98ebd7SGeert Uytterhoeven depends on MIPS || COMPILE_TEST 5668c98ebd7SGeert Uytterhoeven depends on HAS_DMA 567d358f1abSJames Hartley select CRYPTO_MD5 568d358f1abSJames Hartley select CRYPTO_SHA1 569d358f1abSJames Hartley select CRYPTO_SHA256 570d358f1abSJames Hartley select CRYPTO_HASH 571d358f1abSJames Hartley help 572d358f1abSJames Hartley This driver interfaces with the Imagination Technologies 573d358f1abSJames Hartley hardware hash accelerator. Supporting MD5/SHA1/SHA224/SHA256 574d358f1abSJames Hartley hashing algorithms. 575d358f1abSJames Hartley 5766298e948SLABBE Corentinconfig CRYPTO_DEV_SUN4I_SS 5776298e948SLABBE Corentin tristate "Support for Allwinner Security System cryptographic accelerator" 578f823ab93SAndre Przywara depends on ARCH_SUNXI && !64BIT 5796298e948SLABBE Corentin select CRYPTO_MD5 5806298e948SLABBE Corentin select CRYPTO_SHA1 5816298e948SLABBE Corentin select CRYPTO_AES 5826298e948SLABBE Corentin select CRYPTO_DES 5836298e948SLABBE Corentin select CRYPTO_BLKCIPHER 5846298e948SLABBE Corentin help 5856298e948SLABBE Corentin Some Allwinner SoC have a crypto accelerator named 5866298e948SLABBE Corentin Security System. Select this if you want to use it. 5876298e948SLABBE Corentin The Security System handle AES/DES/3DES ciphers in CBC mode 5886298e948SLABBE Corentin and SHA1 and MD5 hash algorithms. 5896298e948SLABBE Corentin 5906298e948SLABBE Corentin To compile this driver as a module, choose M here: the module 5916298e948SLABBE Corentin will be called sun4i-ss. 5926298e948SLABBE Corentin 593433cd2c6SZain Wangconfig CRYPTO_DEV_ROCKCHIP 594433cd2c6SZain Wang tristate "Rockchip's Cryptographic Engine driver" 595433cd2c6SZain Wang depends on OF && ARCH_ROCKCHIP 596433cd2c6SZain Wang select CRYPTO_AES 597433cd2c6SZain Wang select CRYPTO_DES 598bfd927ffSZain Wang select CRYPTO_MD5 599bfd927ffSZain Wang select CRYPTO_SHA1 600bfd927ffSZain Wang select CRYPTO_SHA256 601bfd927ffSZain Wang select CRYPTO_HASH 602433cd2c6SZain Wang select CRYPTO_BLKCIPHER 603433cd2c6SZain Wang 604433cd2c6SZain Wang help 605433cd2c6SZain Wang This driver interfaces with the hardware crypto accelerator. 606433cd2c6SZain Wang Supporting cbc/ecb chainmode, and aes/des/des3_ede cipher mode. 607433cd2c6SZain Wang 608785e5c61SRyder Leeconfig CRYPTO_DEV_MEDIATEK 609785e5c61SRyder Lee tristate "MediaTek's EIP97 Cryptographic Engine driver" 610c884b368SGeert Uytterhoeven depends on HAS_DMA 6117dee9f61SArnd Bergmann depends on (ARM && ARCH_MEDIATEK) || COMPILE_TEST 612785e5c61SRyder Lee select CRYPTO_AES 613d03f7b0dSRyder Lee select CRYPTO_AEAD 614785e5c61SRyder Lee select CRYPTO_BLKCIPHER 615d03f7b0dSRyder Lee select CRYPTO_CTR 6167dee9f61SArnd Bergmann select CRYPTO_SHA1 6177dee9f61SArnd Bergmann select CRYPTO_SHA256 6187dee9f61SArnd Bergmann select CRYPTO_SHA512 619785e5c61SRyder Lee select CRYPTO_HMAC 620785e5c61SRyder Lee help 621785e5c61SRyder Lee This driver allows you to utilize the hardware crypto accelerator 622785e5c61SRyder Lee EIP97 which can be found on the MT7623 MT2701, MT8521p, etc .... 623785e5c61SRyder Lee Select this if you want to use it for AES/SHA1/SHA2 algorithms. 624785e5c61SRyder Lee 62502038fd6SHariprasad Shenaisource "drivers/crypto/chelsio/Kconfig" 62602038fd6SHariprasad Shenai 627dbaf0624SGongleisource "drivers/crypto/virtio/Kconfig" 628dbaf0624SGonglei 6299d12ba86SRob Riceconfig CRYPTO_DEV_BCM_SPU 6309d12ba86SRob Rice tristate "Broadcom symmetric crypto/hash acceleration support" 6319d12ba86SRob Rice depends on ARCH_BCM_IPROC 6329d12ba86SRob Rice depends on BCM_PDC_MBOX 6339d12ba86SRob Rice default m 6349d12ba86SRob Rice select CRYPTO_DES 6359d12ba86SRob Rice select CRYPTO_MD5 6369d12ba86SRob Rice select CRYPTO_SHA1 6379d12ba86SRob Rice select CRYPTO_SHA256 6389d12ba86SRob Rice select CRYPTO_SHA512 6399d12ba86SRob Rice help 6409d12ba86SRob Rice This driver provides support for Broadcom crypto acceleration using the 6419d12ba86SRob Rice Secure Processing Unit (SPU). The SPU driver registers ablkcipher, 6429d12ba86SRob Rice ahash, and aead algorithms with the kernel cryptographic API. 6439d12ba86SRob Rice 644b51dbe90SFabien DESSENNEsource "drivers/crypto/stm32/Kconfig" 645b51dbe90SFabien DESSENNE 646b511431dSJan Engelhardtendif # CRYPTO_HW 647