1# SPDX-License-Identifier: GPL-2.0 2 3menu "Accelerated Cryptographic Algorithms for CPU (powerpc)" 4 5config CRYPTO_CURVE25519_PPC64 6 tristate 7 depends on PPC64 && CPU_LITTLE_ENDIAN 8 select CRYPTO_KPP 9 select CRYPTO_LIB_CURVE25519_GENERIC 10 select CRYPTO_ARCH_HAVE_LIB_CURVE25519 11 default CRYPTO_LIB_CURVE25519_INTERNAL 12 help 13 Curve25519 algorithm 14 15 Architecture: PowerPC64 16 - Little-endian 17 18config CRYPTO_MD5_PPC 19 tristate "Digests: MD5" 20 select CRYPTO_HASH 21 help 22 MD5 message digest algorithm (RFC1321) 23 24 Architecture: powerpc 25 26config CRYPTO_AES_PPC_SPE 27 tristate "Ciphers: AES, modes: ECB/CBC/CTR/XTS (SPE)" 28 depends on SPE 29 select CRYPTO_SKCIPHER 30 help 31 Block ciphers: AES cipher algorithms (FIPS-197) 32 Length-preserving ciphers: AES with ECB, CBC, CTR, and XTS modes 33 34 Architecture: powerpc using: 35 - SPE (Signal Processing Engine) extensions 36 37 SPE is available for: 38 - Processor Type: Freescale 8500 39 - CPU selection: e500 (8540) 40 41 This module should only be used for low power (router) devices 42 without hardware AES acceleration (e.g. caam crypto). It reduces the 43 size of the AES tables from 16KB to 8KB + 256 bytes and mitigates 44 timining attacks. Nevertheless it might be not as secure as other 45 architecture specific assembler implementations that work on 1KB 46 tables or 256 bytes S-boxes. 47 48config CRYPTO_AES_GCM_P10 49 tristate "Stitched AES/GCM acceleration support on P10 or later CPU (PPC)" 50 depends on PPC64 && CPU_LITTLE_ENDIAN && VSX 51 select CRYPTO_LIB_AES 52 select CRYPTO_ALGAPI 53 select CRYPTO_AEAD 54 select CRYPTO_SKCIPHER 55 select CRYPTO_SIMD 56 help 57 AEAD cipher: AES cipher algorithms (FIPS-197) 58 GCM (Galois/Counter Mode) authenticated encryption mode (NIST SP800-38D) 59 Architecture: powerpc64 using: 60 - little-endian 61 - Power10 or later features 62 63 Support for cryptographic acceleration instructions on Power10 or 64 later CPU. This module supports stitched acceleration for AES/GCM. 65 66config CRYPTO_DEV_VMX 67 bool "Support for VMX cryptographic acceleration instructions" 68 depends on PPC64 && VSX 69 help 70 Support for VMX cryptographic acceleration instructions. 71 72config CRYPTO_DEV_VMX_ENCRYPT 73 tristate "Encryption acceleration support on P8 CPU" 74 depends on CRYPTO_DEV_VMX 75 select CRYPTO_AES 76 select CRYPTO_CBC 77 select CRYPTO_CTR 78 select CRYPTO_GHASH 79 select CRYPTO_XTS 80 default m 81 help 82 Support for VMX cryptographic acceleration instructions on Power8 CPU. 83 This module supports acceleration for AES and GHASH in hardware. If you 84 choose 'M' here, this module will be called vmx-crypto. 85 86endmenu 87