16a490a4eSRobert Elliott# SPDX-License-Identifier: GPL-2.0 26a490a4eSRobert Elliott 36a490a4eSRobert Elliottmenu "Accelerated Cryptographic Algorithms for CPU (powerpc)" 46a490a4eSRobert Elliott 56a490a4eSRobert Elliottconfig CRYPTO_AES_PPC_SPE 6cf514b2aSRobert Elliott tristate "Ciphers: AES, modes: ECB/CBC/CTR/XTS (SPE)" 7*d58a46dfSEric Biggers depends on SPE 86a490a4eSRobert Elliott select CRYPTO_SKCIPHER 96a490a4eSRobert Elliott help 10cf514b2aSRobert Elliott Block ciphers: AES cipher algorithms (FIPS-197) 11cf514b2aSRobert Elliott Length-preserving ciphers: AES with ECB, CBC, CTR, and XTS modes 12cf514b2aSRobert Elliott 13cf514b2aSRobert Elliott Architecture: powerpc using: 14cf514b2aSRobert Elliott - SPE (Signal Processing Engine) extensions 15cf514b2aSRobert Elliott 16cf514b2aSRobert Elliott SPE is available for: 17cf514b2aSRobert Elliott - Processor Type: Freescale 8500 18cf514b2aSRobert Elliott - CPU selection: e500 (8540) 19cf514b2aSRobert Elliott 206a490a4eSRobert Elliott This module should only be used for low power (router) devices 216a490a4eSRobert Elliott without hardware AES acceleration (e.g. caam crypto). It reduces the 226a490a4eSRobert Elliott size of the AES tables from 16KB to 8KB + 256 bytes and mitigates 236a490a4eSRobert Elliott timining attacks. Nevertheless it might be not as secure as other 246a490a4eSRobert Elliott architecture specific assembler implementations that work on 1KB 256a490a4eSRobert Elliott tables or 256 bytes S-boxes. 266a490a4eSRobert Elliott 2745a4672bSDanny Tsenconfig CRYPTO_AES_GCM_P10 2845a4672bSDanny Tsen tristate "Stitched AES/GCM acceleration support on P10 or later CPU (PPC)" 298133a3f0SMichael Ellerman depends on PPC64 && CPU_LITTLE_ENDIAN && VSX 3045a4672bSDanny Tsen select CRYPTO_LIB_AES 3145a4672bSDanny Tsen select CRYPTO_ALGAPI 3245a4672bSDanny Tsen select CRYPTO_AEAD 339d6e1c21SOmar Sandoval select CRYPTO_SKCIPHER 348b6c1e46SDanny Tsen select CRYPTO_SIMD 3545a4672bSDanny Tsen help 3645a4672bSDanny Tsen AEAD cipher: AES cipher algorithms (FIPS-197) 3745a4672bSDanny Tsen GCM (Galois/Counter Mode) authenticated encryption mode (NIST SP800-38D) 3845a4672bSDanny Tsen Architecture: powerpc64 using: 3945a4672bSDanny Tsen - little-endian 4045a4672bSDanny Tsen - Power10 or later features 4145a4672bSDanny Tsen 4245a4672bSDanny Tsen Support for cryptographic acceleration instructions on Power10 or 4345a4672bSDanny Tsen later CPU. This module supports stitched acceleration for AES/GCM. 4445a4672bSDanny Tsen 4510930333SDanny Tsenconfig CRYPTO_DEV_VMX 4610930333SDanny Tsen bool "Support for VMX cryptographic acceleration instructions" 4710930333SDanny Tsen depends on PPC64 && VSX 4810930333SDanny Tsen help 4910930333SDanny Tsen Support for VMX cryptographic acceleration instructions. 5010930333SDanny Tsen 5110930333SDanny Tsenconfig CRYPTO_DEV_VMX_ENCRYPT 5210930333SDanny Tsen tristate "Encryption acceleration support on P8 CPU" 5310930333SDanny Tsen depends on CRYPTO_DEV_VMX 5410930333SDanny Tsen select CRYPTO_AES 5510930333SDanny Tsen select CRYPTO_CBC 5610930333SDanny Tsen select CRYPTO_CTR 5710930333SDanny Tsen select CRYPTO_GHASH 5810930333SDanny Tsen select CRYPTO_XTS 5910930333SDanny Tsen default m 6010930333SDanny Tsen help 6110930333SDanny Tsen Support for VMX cryptographic acceleration instructions on Power8 CPU. 6210930333SDanny Tsen This module supports acceleration for AES and GHASH in hardware. If you 6310930333SDanny Tsen choose 'M' here, this module will be called vmx-crypto. 6410930333SDanny Tsen 656a490a4eSRobert Elliottendmenu 66