161 lines
4.6 KiB
Plaintext
161 lines
4.6 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
menu "Accelerated Cryptographic Algorithms for CPU (powerpc)"
|
|
|
|
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
|
|
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
|