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" 15b00296fbSAl Viro depends on X86_32 && !UML 16cce9e06dSHerbert Xu select CRYPTO_ALGAPI 171da177e4SLinus Torvalds help 181da177e4SLinus Torvalds Some VIA processors come with an integrated crypto engine 191da177e4SLinus Torvalds (so called VIA PadLock ACE, Advanced Cryptography Engine) 201191f0a4SMichal Ludvig that provides instructions for very fast cryptographic 211191f0a4SMichal Ludvig operations with supported algorithms. 221da177e4SLinus Torvalds 231da177e4SLinus Torvalds The instructions are used only when the CPU supports them. 245644bda5SMichal Ludvig Otherwise software encryption is used. 255644bda5SMichal Ludvig 261da177e4SLinus Torvaldsconfig CRYPTO_DEV_PADLOCK_AES 271191f0a4SMichal Ludvig tristate "PadLock driver for AES algorithm" 281da177e4SLinus Torvalds depends on CRYPTO_DEV_PADLOCK 2928ce728aSHerbert Xu select CRYPTO_BLKCIPHER 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 361191f0a4SMichal Ludvig called padlock-aes.ko 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 416c833275SMichal Ludvig select CRYPTO_SHA1 426c833275SMichal Ludvig select CRYPTO_SHA256 436c833275SMichal Ludvig help 446c833275SMichal Ludvig Use VIA PadLock for SHA1/SHA256 algorithms. 456c833275SMichal Ludvig 466c833275SMichal Ludvig Available in VIA C7 and newer processors. 476c833275SMichal Ludvig 486c833275SMichal Ludvig If unsure say M. The compiled module will be 496c833275SMichal Ludvig called padlock-sha.ko 506c833275SMichal Ludvig 519fe757b0SJordan Crouseconfig CRYPTO_DEV_GEODE 529fe757b0SJordan Crouse tristate "Support for the Geode LX AES engine" 53f6259deaSSimon Arlott depends on X86_32 && PCI 549fe757b0SJordan Crouse select CRYPTO_ALGAPI 559fe757b0SJordan Crouse select CRYPTO_BLKCIPHER 569fe757b0SJordan Crouse help 579fe757b0SJordan Crouse Say 'Y' here to use the AMD Geode LX processor on-board AES 583dde6ad8SDavid Sterba engine for the CryptoAPI AES algorithm. 599fe757b0SJordan Crouse 609fe757b0SJordan Crouse To compile this driver as a module, choose M here: the module 619fe757b0SJordan Crouse will be called geode-aes. 629fe757b0SJordan Crouse 6361d48c2cSMartin Schwidefskyconfig ZCRYPT 6461d48c2cSMartin Schwidefsky tristate "Support for PCI-attached cryptographic adapters" 6561d48c2cSMartin Schwidefsky depends on S390 6661d48c2cSMartin Schwidefsky select ZCRYPT_MONOLITHIC if ZCRYPT="y" 6761d48c2cSMartin Schwidefsky help 6861d48c2cSMartin Schwidefsky Select this option if you want to use a PCI-attached cryptographic 6961d48c2cSMartin Schwidefsky adapter like: 7061d48c2cSMartin Schwidefsky + PCI Cryptographic Accelerator (PCICA) 7161d48c2cSMartin Schwidefsky + PCI Cryptographic Coprocessor (PCICC) 7261d48c2cSMartin Schwidefsky + PCI-X Cryptographic Coprocessor (PCIXCC) 7361d48c2cSMartin Schwidefsky + Crypto Express2 Coprocessor (CEX2C) 7461d48c2cSMartin Schwidefsky + Crypto Express2 Accelerator (CEX2A) 7561d48c2cSMartin Schwidefsky 7661d48c2cSMartin Schwidefskyconfig ZCRYPT_MONOLITHIC 7761d48c2cSMartin Schwidefsky bool "Monolithic zcrypt module" 7861d48c2cSMartin Schwidefsky depends on ZCRYPT="m" 7961d48c2cSMartin Schwidefsky help 8061d48c2cSMartin Schwidefsky Select this option if you want to have a single module z90crypt.ko 8161d48c2cSMartin Schwidefsky that contains all parts of the crypto device driver (ap bus, 8261d48c2cSMartin Schwidefsky request router and all the card drivers). 8361d48c2cSMartin Schwidefsky 84*3f5615e0SJan Glauberconfig CRYPTO_SHA1_S390 85*3f5615e0SJan Glauber tristate "SHA1 digest algorithm" 86*3f5615e0SJan Glauber depends on S390 87*3f5615e0SJan Glauber select CRYPTO_ALGAPI 88*3f5615e0SJan Glauber help 89*3f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 90*3f5615e0SJan Glauber SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2). 91*3f5615e0SJan Glauber 92*3f5615e0SJan Glauberconfig CRYPTO_SHA256_S390 93*3f5615e0SJan Glauber tristate "SHA256 digest algorithm" 94*3f5615e0SJan Glauber depends on S390 95*3f5615e0SJan Glauber select CRYPTO_ALGAPI 96*3f5615e0SJan Glauber help 97*3f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 98*3f5615e0SJan Glauber SHA256 secure hash standard (DFIPS 180-2). 99*3f5615e0SJan Glauber 100*3f5615e0SJan Glauber This version of SHA implements a 256 bit hash with 128 bits of 101*3f5615e0SJan Glauber security against collision attacks. 102*3f5615e0SJan Glauber 103*3f5615e0SJan Glauberconfig CRYPTO_DES_S390 104*3f5615e0SJan Glauber tristate "DES and Triple DES cipher algorithms" 105*3f5615e0SJan Glauber depends on S390 106*3f5615e0SJan Glauber select CRYPTO_ALGAPI 107*3f5615e0SJan Glauber select CRYPTO_BLKCIPHER 108*3f5615e0SJan Glauber help 109*3f5615e0SJan Glauber This us the s390 hardware accelerated implementation of the 110*3f5615e0SJan Glauber DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3). 111*3f5615e0SJan Glauber 112*3f5615e0SJan Glauberconfig CRYPTO_AES_S390 113*3f5615e0SJan Glauber tristate "AES cipher algorithms" 114*3f5615e0SJan Glauber depends on S390 115*3f5615e0SJan Glauber select CRYPTO_ALGAPI 116*3f5615e0SJan Glauber select CRYPTO_BLKCIPHER 117*3f5615e0SJan Glauber help 118*3f5615e0SJan Glauber This is the s390 hardware accelerated implementation of the 119*3f5615e0SJan Glauber AES cipher algorithms (FIPS-197). AES uses the Rijndael 120*3f5615e0SJan Glauber algorithm. 121*3f5615e0SJan Glauber 122*3f5615e0SJan Glauber Rijndael appears to be consistently a very good performer in 123*3f5615e0SJan Glauber both hardware and software across a wide range of computing 124*3f5615e0SJan Glauber environments regardless of its use in feedback or non-feedback 125*3f5615e0SJan Glauber modes. Its key setup time is excellent, and its key agility is 126*3f5615e0SJan Glauber good. Rijndael's very low memory requirements make it very well 127*3f5615e0SJan Glauber suited for restricted-space environments, in which it also 128*3f5615e0SJan Glauber demonstrates excellent performance. Rijndael's operations are 129*3f5615e0SJan Glauber among the easiest to defend against power and timing attacks. 130*3f5615e0SJan Glauber 131*3f5615e0SJan Glauber On s390 the System z9-109 currently only supports the key size 132*3f5615e0SJan Glauber of 128 bit. 133*3f5615e0SJan Glauber 134*3f5615e0SJan Glauberconfig S390_PRNG 135*3f5615e0SJan Glauber tristate "Pseudo random number generator device driver" 136*3f5615e0SJan Glauber depends on S390 137*3f5615e0SJan Glauber default "m" 138*3f5615e0SJan Glauber help 139*3f5615e0SJan Glauber Select this option if you want to use the s390 pseudo random number 140*3f5615e0SJan Glauber generator. The PRNG is part of the cryptographic processor functions 141*3f5615e0SJan Glauber and uses triple-DES to generate secure random numbers like the 142*3f5615e0SJan Glauber ANSI X9.17 standard. The PRNG is usable via the char device 143*3f5615e0SJan Glauber /dev/prandom. 144*3f5615e0SJan Glauber 145f7d0561eSEvgeniy Polyakovconfig CRYPTO_DEV_HIFN_795X 146f7d0561eSEvgeniy Polyakov tristate "Driver HIFN 795x crypto accelerator chips" 147c3041f9cSEvgeniy Polyakov select CRYPTO_DES 148f7d0561eSEvgeniy Polyakov select CRYPTO_ALGAPI 149653ebd9cSHerbert Xu select CRYPTO_BLKCIPHER 150946fef4eSHerbert Xu select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG 1512707b937SJan Glauber depends on PCI 152f7d0561eSEvgeniy Polyakov help 153f7d0561eSEvgeniy Polyakov This option allows you to have support for HIFN 795x crypto adapters. 154f7d0561eSEvgeniy Polyakov 155946fef4eSHerbert Xuconfig CRYPTO_DEV_HIFN_795X_RNG 156946fef4eSHerbert Xu bool "HIFN 795x random number generator" 157946fef4eSHerbert Xu depends on CRYPTO_DEV_HIFN_795X 158946fef4eSHerbert Xu help 159946fef4eSHerbert Xu Select this option if you want to enable the random number generator 160946fef4eSHerbert Xu on the HIFN 795x crypto adapters. 161f7d0561eSEvgeniy Polyakov 162b511431dSJan Engelhardtendif # CRYPTO_HW 163