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 31774ed87e7STero Kristoconfig CRYPTO_DEV_OMAP 31874ed87e7STero Kristo tristate "Support for OMAP crypto HW accelerators" 31974ed87e7STero Kristo depends on ARCH_OMAP2PLUS 32074ed87e7STero Kristo help 32174ed87e7STero Kristo OMAP processors have various crypto HW accelerators. Select this if 32274ed87e7STero Kristo you want to use the OMAP modules for any of the crypto algorithms. 32374ed87e7STero Kristo 32474ed87e7STero Kristoif CRYPTO_DEV_OMAP 32574ed87e7STero Kristo 3268628e7c8SDmitry Kasatkinconfig CRYPTO_DEV_OMAP_SHAM 327eaef7e3fSLokesh Vutla tristate "Support for OMAP MD5/SHA1/SHA2 hw accelerator" 328eaef7e3fSLokesh Vutla depends on ARCH_OMAP2PLUS 3298628e7c8SDmitry Kasatkin select CRYPTO_SHA1 3308628e7c8SDmitry Kasatkin select CRYPTO_MD5 331eaef7e3fSLokesh Vutla select CRYPTO_SHA256 332eaef7e3fSLokesh Vutla select CRYPTO_SHA512 333eaef7e3fSLokesh Vutla select CRYPTO_HMAC 3348628e7c8SDmitry Kasatkin help 335eaef7e3fSLokesh Vutla OMAP processors have MD5/SHA1/SHA2 hw accelerator. Select this if you 336eaef7e3fSLokesh Vutla want to use the OMAP module for MD5/SHA1/SHA2 algorithms. 3378628e7c8SDmitry Kasatkin 338537559a5SDmitry Kasatkinconfig CRYPTO_DEV_OMAP_AES 339537559a5SDmitry Kasatkin tristate "Support for OMAP AES hw engine" 3401bbf6437SJoel Fernandes depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP2PLUS 341537559a5SDmitry Kasatkin select CRYPTO_AES 342596103cfSHerbert Xu select CRYPTO_BLKCIPHER 3430529900aSBaolin Wang select CRYPTO_ENGINE 3449fcb191aSLokesh Vutla select CRYPTO_CBC 3459fcb191aSLokesh Vutla select CRYPTO_ECB 3469fcb191aSLokesh Vutla select CRYPTO_CTR 347ad18cc9dSTero Kristo select CRYPTO_AEAD 348537559a5SDmitry Kasatkin help 349537559a5SDmitry Kasatkin OMAP processors have AES module accelerator. Select this if you 350537559a5SDmitry Kasatkin want to use the OMAP module for AES algorithms. 351537559a5SDmitry Kasatkin 352701d0f19SJoel Fernandesconfig CRYPTO_DEV_OMAP_DES 35397ee7ed3SPeter Meerwald tristate "Support for OMAP DES/3DES hw engine" 354701d0f19SJoel Fernandes depends on ARCH_OMAP2PLUS 355701d0f19SJoel Fernandes select CRYPTO_DES 356596103cfSHerbert Xu select CRYPTO_BLKCIPHER 357f1b77aacSBaolin Wang select CRYPTO_ENGINE 358701d0f19SJoel Fernandes help 359701d0f19SJoel Fernandes OMAP processors have DES/3DES module accelerator. Select this if you 360701d0f19SJoel Fernandes want to use the OMAP module for DES and 3DES algorithms. Currently 36197ee7ed3SPeter Meerwald the ECB and CBC modes of operation are supported by the driver. Also 36297ee7ed3SPeter Meerwald accesses made on unaligned boundaries are supported. 363701d0f19SJoel Fernandes 36474ed87e7STero Kristoendif # CRYPTO_DEV_OMAP 36574ed87e7STero Kristo 366ce921368SJamie Ilesconfig CRYPTO_DEV_PICOXCELL 367ce921368SJamie Iles tristate "Support for picoXcell IPSEC and Layer2 crypto engines" 3684f44d86dSJavier Martinez Canillas depends on (ARCH_PICOXCELL || COMPILE_TEST) && HAVE_CLK 369596103cfSHerbert Xu select CRYPTO_AEAD 370ce921368SJamie Iles select CRYPTO_AES 371ce921368SJamie Iles select CRYPTO_AUTHENC 372596103cfSHerbert Xu select CRYPTO_BLKCIPHER 373ce921368SJamie Iles select CRYPTO_DES 374ce921368SJamie Iles select CRYPTO_CBC 375ce921368SJamie Iles select CRYPTO_ECB 376ce921368SJamie Iles select CRYPTO_SEQIV 377ce921368SJamie Iles help 378ce921368SJamie Iles This option enables support for the hardware offload engines in the 379ce921368SJamie Iles Picochip picoXcell SoC devices. Select this for IPSEC ESP offload 380ce921368SJamie Iles and for 3gpp Layer 2 ciphering support. 381ce921368SJamie Iles 382ce921368SJamie Iles Saying m here will build a module named pipcoxcell_crypto. 383ce921368SJamie Iles 3845de88752SJavier Martinconfig CRYPTO_DEV_SAHARA 3855de88752SJavier Martin tristate "Support for SAHARA crypto accelerator" 38674d24d83SPaul Bolle depends on ARCH_MXC && OF 3875de88752SJavier Martin select CRYPTO_BLKCIPHER 3885de88752SJavier Martin select CRYPTO_AES 3895de88752SJavier Martin select CRYPTO_ECB 3905de88752SJavier Martin help 3915de88752SJavier Martin This option enables support for the SAHARA HW crypto accelerator 3925de88752SJavier Martin found in some Freescale i.MX chips. 3935de88752SJavier Martin 394d293b640SSteffen Trumtrarconfig CRYPTO_DEV_MXC_SCC 395d293b640SSteffen Trumtrar tristate "Support for Freescale Security Controller (SCC)" 396d293b640SSteffen Trumtrar depends on ARCH_MXC && OF 397d293b640SSteffen Trumtrar select CRYPTO_BLKCIPHER 398d293b640SSteffen Trumtrar select CRYPTO_DES 399d293b640SSteffen Trumtrar help 400d293b640SSteffen Trumtrar This option enables support for the Security Controller (SCC) 401d293b640SSteffen Trumtrar found in Freescale i.MX25 chips. 402d293b640SSteffen Trumtrar 403c46ea13fSKrzysztof Kozlowskiconfig CRYPTO_DEV_EXYNOS_RNG 404c46ea13fSKrzysztof Kozlowski tristate "EXYNOS HW pseudo random number generator support" 405c46ea13fSKrzysztof Kozlowski depends on ARCH_EXYNOS || COMPILE_TEST 406c46ea13fSKrzysztof Kozlowski depends on HAS_IOMEM 407c46ea13fSKrzysztof Kozlowski select CRYPTO_RNG 408c46ea13fSKrzysztof Kozlowski ---help--- 409c46ea13fSKrzysztof Kozlowski This driver provides kernel-side support through the 410c46ea13fSKrzysztof Kozlowski cryptographic API for the pseudo random number generator hardware 411c46ea13fSKrzysztof Kozlowski found on Exynos SoCs. 412c46ea13fSKrzysztof Kozlowski 413c46ea13fSKrzysztof Kozlowski To compile this driver as a module, choose M here: the 414c46ea13fSKrzysztof Kozlowski module will be called exynos-rng. 415c46ea13fSKrzysztof Kozlowski 416c46ea13fSKrzysztof Kozlowski If unsure, say Y. 417c46ea13fSKrzysztof Kozlowski 418a49e490cSVladimir Zapolskiyconfig CRYPTO_DEV_S5P 419e922e96fSNaveen Krishna Chatradhi tristate "Support for Samsung S5PV210/Exynos crypto accelerator" 420dc1d9deeSKrzysztof Kozlowski depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST 421dc1d9deeSKrzysztof Kozlowski depends on HAS_IOMEM && HAS_DMA 422a49e490cSVladimir Zapolskiy select CRYPTO_AES 423a49e490cSVladimir Zapolskiy select CRYPTO_BLKCIPHER 424a49e490cSVladimir Zapolskiy help 425a49e490cSVladimir Zapolskiy This option allows you to have support for S5P crypto acceleration. 426e922e96fSNaveen Krishna Chatradhi Select this to offload Samsung S5PV210 or S5PC110, Exynos from AES 427a49e490cSVladimir Zapolskiy algorithms execution. 428a49e490cSVladimir Zapolskiy 429aef7b31cSKent Yoderconfig CRYPTO_DEV_NX 4307011a122SDan Streetman bool "Support for IBM PowerPC Nest (NX) cryptographic acceleration" 4317011a122SDan Streetman depends on PPC64 432aef7b31cSKent Yoder help 4337011a122SDan Streetman This enables support for the NX hardware cryptographic accelerator 4347011a122SDan Streetman coprocessor that is in IBM PowerPC P7+ or later processors. This 4357011a122SDan Streetman does not actually enable any drivers, it only allows you to select 4367011a122SDan Streetman which acceleration type (encryption and/or compression) to enable. 437322cacceSSeth Jennings 438322cacceSSeth Jenningsif CRYPTO_DEV_NX 439322cacceSSeth Jennings source "drivers/crypto/nx/Kconfig" 440322cacceSSeth Jenningsendif 441aef7b31cSKent Yoder 4422789c08fSAndreas Westinconfig CRYPTO_DEV_UX500 4432789c08fSAndreas Westin tristate "Driver for ST-Ericsson UX500 crypto hardware acceleration" 4442789c08fSAndreas Westin depends on ARCH_U8500 4452789c08fSAndreas Westin help 4462789c08fSAndreas Westin Driver for ST-Ericsson UX500 crypto engine. 4472789c08fSAndreas Westin 4482789c08fSAndreas Westinif CRYPTO_DEV_UX500 4492789c08fSAndreas Westin source "drivers/crypto/ux500/Kconfig" 4502789c08fSAndreas Westinendif # if CRYPTO_DEV_UX500 4512789c08fSAndreas Westin 452b8840098SSonic Zhangconfig CRYPTO_DEV_BFIN_CRC 453b8840098SSonic Zhang tristate "Support for Blackfin CRC hardware" 454b8840098SSonic Zhang depends on BF60x 455b8840098SSonic Zhang help 456b8840098SSonic Zhang Newer Blackfin processors have CRC hardware. Select this if you 457b8840098SSonic Zhang want to use the Blackfin CRC module. 458b8840098SSonic Zhang 45989a82ef8SCyrille Pitchenconfig CRYPTO_DEV_ATMEL_AUTHENC 46089a82ef8SCyrille Pitchen tristate "Support for Atmel IPSEC/SSL hw accelerator" 461ceb4afb3SArnd Bergmann depends on HAS_DMA 462ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 46389a82ef8SCyrille Pitchen select CRYPTO_AUTHENC 46489a82ef8SCyrille Pitchen select CRYPTO_DEV_ATMEL_AES 46589a82ef8SCyrille Pitchen select CRYPTO_DEV_ATMEL_SHA 46689a82ef8SCyrille Pitchen help 46789a82ef8SCyrille Pitchen Some Atmel processors can combine the AES and SHA hw accelerators 46889a82ef8SCyrille Pitchen to enhance support of IPSEC/SSL. 46989a82ef8SCyrille Pitchen Select this if you want to use the Atmel modules for 47089a82ef8SCyrille Pitchen authenc(hmac(shaX),Y(cbc)) algorithms. 47189a82ef8SCyrille Pitchen 472bd3c7b5cSNicolas Royerconfig CRYPTO_DEV_ATMEL_AES 473bd3c7b5cSNicolas Royer tristate "Support for Atmel AES hw accelerator" 474cbafd643SGeert Uytterhoeven depends on HAS_DMA 475ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 476bd3c7b5cSNicolas Royer select CRYPTO_AES 477d4419548SCyrille Pitchen select CRYPTO_AEAD 478bd3c7b5cSNicolas Royer select CRYPTO_BLKCIPHER 479bd3c7b5cSNicolas Royer help 480bd3c7b5cSNicolas Royer Some Atmel processors have AES hw accelerator. 481bd3c7b5cSNicolas Royer Select this if you want to use the Atmel module for 482bd3c7b5cSNicolas Royer AES algorithms. 483bd3c7b5cSNicolas Royer 484bd3c7b5cSNicolas Royer To compile this driver as a module, choose M here: the module 485bd3c7b5cSNicolas Royer will be called atmel-aes. 486bd3c7b5cSNicolas Royer 48713802005SNicolas Royerconfig CRYPTO_DEV_ATMEL_TDES 48813802005SNicolas Royer tristate "Support for Atmel DES/TDES hw accelerator" 489f7f9482eSGeert Uytterhoeven depends on HAS_DMA 490ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 49113802005SNicolas Royer select CRYPTO_DES 49213802005SNicolas Royer select CRYPTO_BLKCIPHER 49313802005SNicolas Royer help 49413802005SNicolas Royer Some Atmel processors have DES/TDES hw accelerator. 49513802005SNicolas Royer Select this if you want to use the Atmel module for 49613802005SNicolas Royer DES/TDES algorithms. 49713802005SNicolas Royer 49813802005SNicolas Royer To compile this driver as a module, choose M here: the module 49913802005SNicolas Royer will be called atmel-tdes. 50013802005SNicolas Royer 501ebc82efaSNicolas Royerconfig CRYPTO_DEV_ATMEL_SHA 502d4905b38SNicolas Royer tristate "Support for Atmel SHA hw accelerator" 503f7f9482eSGeert Uytterhoeven depends on HAS_DMA 504ceb4afb3SArnd Bergmann depends on ARCH_AT91 || COMPILE_TEST 505596103cfSHerbert Xu select CRYPTO_HASH 506ebc82efaSNicolas Royer help 507d4905b38SNicolas Royer Some Atmel processors have SHA1/SHA224/SHA256/SHA384/SHA512 508d4905b38SNicolas Royer hw accelerator. 509ebc82efaSNicolas Royer Select this if you want to use the Atmel module for 510d4905b38SNicolas Royer SHA1/SHA224/SHA256/SHA384/SHA512 algorithms. 511ebc82efaSNicolas Royer 512ebc82efaSNicolas Royer To compile this driver as a module, choose M here: the module 513ebc82efaSNicolas Royer will be called atmel-sha. 514ebc82efaSNicolas Royer 515f1147660STom Lendackyconfig CRYPTO_DEV_CCP 516f1147660STom Lendacky bool "Support for AMD Cryptographic Coprocessor" 5176c506343STom Lendacky depends on ((X86 && PCI) || (ARM64 && (OF_ADDRESS || ACPI))) && HAS_IOMEM 518f1147660STom Lendacky help 51921dc9e8fSTom Lendacky The AMD Cryptographic Coprocessor provides hardware offload support 520f1147660STom Lendacky for encryption, hashing and related operations. 521f1147660STom Lendacky 522f1147660STom Lendackyif CRYPTO_DEV_CCP 523f1147660STom Lendacky source "drivers/crypto/ccp/Kconfig" 524f1147660STom Lendackyendif 525f1147660STom Lendacky 52615b59e7cSMarek Vasutconfig CRYPTO_DEV_MXS_DCP 52715b59e7cSMarek Vasut tristate "Support for Freescale MXS DCP" 528a2712e6cSFabio Estevam depends on (ARCH_MXS || ARCH_MXC) 529dc97fa02SArnd Bergmann select STMP_DEVICE 53015b59e7cSMarek Vasut select CRYPTO_CBC 53115b59e7cSMarek Vasut select CRYPTO_ECB 53215b59e7cSMarek Vasut select CRYPTO_AES 53315b59e7cSMarek Vasut select CRYPTO_BLKCIPHER 534596103cfSHerbert Xu select CRYPTO_HASH 53515b59e7cSMarek Vasut help 53615b59e7cSMarek Vasut The Freescale i.MX23/i.MX28 has SHA1/SHA256 and AES128 CBC/ECB 53715b59e7cSMarek Vasut co-processor on the die. 53815b59e7cSMarek Vasut 53915b59e7cSMarek Vasut To compile this driver as a module, choose M here: the module 54015b59e7cSMarek Vasut will be called mxs-dcp. 54115b59e7cSMarek Vasut 542cea4001aSTadeusz Struksource "drivers/crypto/qat/Kconfig" 54362ad8b5cSGeorge Cheriansource "drivers/crypto/cavium/cpt/Kconfig" 54414fa93cdSSrikanth Jampalasource "drivers/crypto/cavium/nitrox/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 6591b44c5a6SAntoine Ténartconfig CRYPTO_DEV_SAFEXCEL 6601b44c5a6SAntoine Ténart tristate "Inside Secure's SafeXcel cryptographic engine driver" 6611b44c5a6SAntoine Ténart depends on HAS_DMA && OF 6621b44c5a6SAntoine Ténart depends on (ARM64 && ARCH_MVEBU) || (COMPILE_TEST && 64BIT) 6631b44c5a6SAntoine Ténart select CRYPTO_AES 6641b44c5a6SAntoine Ténart select CRYPTO_BLKCIPHER 6651b44c5a6SAntoine Ténart select CRYPTO_HASH 6661b44c5a6SAntoine Ténart select CRYPTO_HMAC 6671b44c5a6SAntoine Ténart select CRYPTO_SHA1 6681b44c5a6SAntoine Ténart select CRYPTO_SHA256 6691b44c5a6SAntoine Ténart select CRYPTO_SHA512 6701b44c5a6SAntoine Ténart help 6711b44c5a6SAntoine Ténart This driver interfaces with the SafeXcel EIP-197 cryptographic engine 6721b44c5a6SAntoine Ténart designed by Inside Secure. Select this if you want to use CBC/ECB 6731b44c5a6SAntoine Ténart chain mode, AES cipher mode and SHA1/SHA224/SHA256/SHA512 hash 6741b44c5a6SAntoine Ténart algorithms. 6751b44c5a6SAntoine Ténart 676b511431dSJan Engelhardtendif # CRYPTO_HW 677