173 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			173 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # SPDX-License-Identifier: GPL-2.0
 | |
| 
 | |
| menu "Accelerated Cryptographic Algorithms for CPU (powerpc)"
 | |
| 
 | |
| config CRYPTO_CURVE25519_PPC64
 | |
| 	tristate "Public key crypto: Curve25519 (PowerPC64)"
 | |
| 	depends on PPC64 && CPU_LITTLE_ENDIAN
 | |
| 	select CRYPTO_LIB_CURVE25519_GENERIC
 | |
| 	select CRYPTO_ARCH_HAVE_LIB_CURVE25519
 | |
| 	help
 | |
| 	  Curve25519 algorithm
 | |
| 
 | |
| 	  Architecture: PowerPC64
 | |
| 	  - Little-endian
 | |
| 
 | |
| config CRYPTO_CRC32C_VPMSUM
 | |
| 	tristate "CRC32c"
 | |
| 	depends on PPC64 && ALTIVEC
 | |
| 	select CRYPTO_HASH
 | |
| 	select CRC32
 | |
| 	help
 | |
| 	  CRC32c CRC algorithm with the iSCSI polynomial (RFC 3385 and RFC 3720)
 | |
| 
 | |
| 	  Architecture: powerpc64 using
 | |
| 	  - AltiVec extensions
 | |
| 
 | |
| 	  Enable on POWER8 and newer processors for improved performance.
 | |
| 
 | |
| config CRYPTO_CRCT10DIF_VPMSUM
 | |
| 	tristate "CRC32T10DIF"
 | |
| 	depends on PPC64 && ALTIVEC && CRC_T10DIF
 | |
| 	select CRYPTO_HASH
 | |
| 	help
 | |
| 	  CRC16 CRC algorithm used for the T10 (SCSI) Data Integrity Field (DIF)
 | |
| 
 | |
| 	  Architecture: powerpc64 using
 | |
| 	  - AltiVec extensions
 | |
| 
 | |
| 	  Enable on POWER8 and newer processors for improved performance.
 | |
| 
 | |
| config CRYPTO_VPMSUM_TESTER
 | |
| 	tristate "CRC32c and CRC32T10DIF hardware acceleration tester"
 | |
| 	depends on CRYPTO_CRCT10DIF_VPMSUM && CRYPTO_CRC32C_VPMSUM
 | |
| 	help
 | |
| 	  Stress test for CRC32c and CRCT10DIF algorithms implemented with
 | |
| 	  powerpc64 AltiVec extensions (POWER8 vpmsum instructions).
 | |
| 	  Unless you are testing these algorithms, you don't need this.
 | |
| 
 | |
| config CRYPTO_MD5_PPC
 | |
| 	tristate "Digests: MD5"
 | |
| 	depends on PPC
 | |
| 	select CRYPTO_HASH
 | |
| 	help
 | |
| 	  MD5 message digest algorithm (RFC1321)
 | |
| 
 | |
| 	  Architecture: powerpc
 | |
| 
 | |
| config CRYPTO_SHA1_PPC
 | |
| 	tristate "Hash functions: SHA-1"
 | |
| 	depends on PPC
 | |
| 	help
 | |
| 	  SHA-1 secure hash algorithm (FIPS 180)
 | |
| 
 | |
| 	  Architecture: powerpc
 | |
| 
 | |
| config CRYPTO_SHA1_PPC_SPE
 | |
| 	tristate "Hash functions: SHA-1 (SPE)"
 | |
| 	depends on PPC && SPE
 | |
| 	help
 | |
| 	  SHA-1 secure hash algorithm (FIPS 180)
 | |
| 
 | |
| 	  Architecture: powerpc using
 | |
| 	  - SPE (Signal Processing Engine) extensions
 | |
| 
 | |
| config CRYPTO_SHA256_PPC_SPE
 | |
| 	tristate "Hash functions: SHA-224 and SHA-256 (SPE)"
 | |
| 	depends on PPC && SPE
 | |
| 	select CRYPTO_SHA256
 | |
| 	select CRYPTO_HASH
 | |
| 	help
 | |
| 	  SHA-224 and SHA-256 secure hash algorithms (FIPS 180)
 | |
| 
 | |
| 	  Architecture: powerpc using
 | |
| 	  - SPE (Signal Processing Engine) extensions
 | |
| 
 | |
| config CRYPTO_AES_PPC_SPE
 | |
| 	tristate "Ciphers: AES, modes: ECB/CBC/CTR/XTS (SPE)"
 | |
| 	depends on PPC && SPE
 | |
| 	select CRYPTO_SKCIPHER
 | |
| 	help
 | |
| 	  Block ciphers: AES cipher algorithms (FIPS-197)
 | |
| 	  Length-preserving ciphers: AES with ECB, CBC, CTR, and XTS modes
 | |
| 
 | |
| 	  Architecture: powerpc using:
 | |
| 	  - SPE (Signal Processing Engine) extensions
 | |
| 
 | |
| 	  SPE is available for:
 | |
| 	  - Processor Type: Freescale 8500
 | |
| 	  - CPU selection: e500 (8540)
 | |
| 
 | |
| 	  This module should only be used for low power (router) devices
 | |
| 	  without hardware AES acceleration (e.g. caam crypto). It reduces the
 | |
| 	  size of the AES tables from 16KB to 8KB + 256 bytes and mitigates
 | |
| 	  timining attacks. Nevertheless it might be not as secure as other
 | |
| 	  architecture specific assembler implementations that work on 1KB
 | |
| 	  tables or 256 bytes S-boxes.
 | |
| 
 | |
| config CRYPTO_AES_GCM_P10
 | |
| 	tristate "Stitched AES/GCM acceleration support on P10 or later CPU (PPC)"
 | |
| 	depends on PPC64 && CPU_LITTLE_ENDIAN && VSX
 | |
| 	select CRYPTO_LIB_AES
 | |
| 	select CRYPTO_ALGAPI
 | |
| 	select CRYPTO_AEAD
 | |
| 	select CRYPTO_SKCIPHER
 | |
| 	select CRYPTO_SIMD
 | |
| 	help
 | |
| 	  AEAD cipher: AES cipher algorithms (FIPS-197)
 | |
| 	  GCM (Galois/Counter Mode) authenticated encryption mode (NIST SP800-38D)
 | |
| 	  Architecture: powerpc64 using:
 | |
| 	    - little-endian
 | |
| 	    - Power10 or later features
 | |
| 
 | |
| 	  Support for cryptographic acceleration instructions on Power10 or
 | |
| 	  later CPU. This module supports stitched acceleration for AES/GCM.
 | |
| 
 | |
| config CRYPTO_CHACHA20_P10
 | |
| 	tristate "Ciphers: ChaCha20, XChacha20, XChacha12 (P10 or later)"
 | |
| 	depends on PPC64 && CPU_LITTLE_ENDIAN && VSX
 | |
| 	select CRYPTO_SKCIPHER
 | |
| 	select CRYPTO_LIB_CHACHA_GENERIC
 | |
| 	select CRYPTO_ARCH_HAVE_LIB_CHACHA
 | |
| 	help
 | |
| 	  Length-preserving ciphers: ChaCha20, XChaCha20, and XChaCha12
 | |
| 	  stream cipher algorithms
 | |
| 
 | |
| 	  Architecture: PowerPC64
 | |
| 	  - Power10 or later
 | |
| 	  - Little-endian
 | |
| 
 | |
| config CRYPTO_POLY1305_P10
 | |
| 	tristate "Hash functions: Poly1305 (P10 or later)"
 | |
| 	depends on PPC64 && CPU_LITTLE_ENDIAN && VSX
 | |
| 	select CRYPTO_HASH
 | |
| 	select CRYPTO_LIB_POLY1305_GENERIC
 | |
| 	help
 | |
| 	  Poly1305 authenticator algorithm (RFC7539)
 | |
| 
 | |
| 	  Architecture: PowerPC64
 | |
| 	  - Power10 or later
 | |
| 	  - Little-endian
 | |
| 
 | |
| config CRYPTO_DEV_VMX
 | |
|         bool "Support for VMX cryptographic acceleration instructions"
 | |
|         depends on PPC64 && VSX
 | |
|         help
 | |
|           Support for VMX cryptographic acceleration instructions.
 | |
| 
 | |
| config CRYPTO_DEV_VMX_ENCRYPT
 | |
| 	tristate "Encryption acceleration support on P8 CPU"
 | |
| 	depends on CRYPTO_DEV_VMX
 | |
| 	select CRYPTO_AES
 | |
| 	select CRYPTO_CBC
 | |
| 	select CRYPTO_CTR
 | |
| 	select CRYPTO_GHASH
 | |
| 	select CRYPTO_XTS
 | |
| 	default m
 | |
| 	help
 | |
| 	  Support for VMX cryptographic acceleration instructions on Power8 CPU.
 | |
| 	  This module supports acceleration for AES and GHASH in hardware. If you
 | |
| 	  choose 'M' here, this module will be called vmx-crypto.
 | |
| 
 | |
| endmenu
 |