1 # SPDX-License-Identifier: GPL-2.0
3 menuconfig ARM64_CRYPTO
4 bool "ARM64 Accelerated Cryptographic Algorithms"
7 Say Y here to choose from a selection of cryptographic algorithms
8 implemented using ARM64 specific CPU features or instructions.
12 config CRYPTO_SHA256_ARM64
13 tristate "SHA-224/SHA-256 digest algorithm for arm64"
16 config CRYPTO_SHA512_ARM64
17 tristate "SHA-384/SHA-512 digest algorithm for arm64"
20 config CRYPTO_SHA1_ARM64_CE
21 tristate "SHA-1 digest algorithm (ARMv8 Crypto Extensions)"
22 depends on KERNEL_MODE_NEON
26 config CRYPTO_SHA2_ARM64_CE
27 tristate "SHA-224/SHA-256 digest algorithm (ARMv8 Crypto Extensions)"
28 depends on KERNEL_MODE_NEON
30 select CRYPTO_SHA256_ARM64
32 config CRYPTO_GHASH_ARM64_CE
33 tristate "GHASH/AES-GCM using ARMv8 Crypto Extensions"
34 depends on KERNEL_MODE_NEON
36 select CRYPTO_GF128MUL
38 select CRYPTO_AES_ARM64
40 config CRYPTO_CRCT10DIF_ARM64_CE
41 tristate "CRCT10DIF digest algorithm using PMULL instructions"
42 depends on KERNEL_MODE_NEON && CRC_T10DIF
45 config CRYPTO_CRC32_ARM64_CE
46 tristate "CRC32 and CRC32C digest algorithms using ARMv8 extensions"
50 config CRYPTO_AES_ARM64
51 tristate "AES core cipher using scalar instructions"
54 config CRYPTO_AES_ARM64_CE
55 tristate "AES core cipher using ARMv8 Crypto Extensions"
56 depends on ARM64 && KERNEL_MODE_NEON
58 select CRYPTO_AES_ARM64
60 config CRYPTO_AES_ARM64_CE_CCM
61 tristate "AES in CCM mode using ARMv8 Crypto Extensions"
62 depends on ARM64 && KERNEL_MODE_NEON
64 select CRYPTO_AES_ARM64_CE
65 select CRYPTO_AES_ARM64
68 config CRYPTO_AES_ARM64_CE_BLK
69 tristate "AES in ECB/CBC/CTR/XTS modes using ARMv8 Crypto Extensions"
70 depends on KERNEL_MODE_NEON
71 select CRYPTO_BLKCIPHER
72 select CRYPTO_AES_ARM64_CE
73 select CRYPTO_AES_ARM64
76 config CRYPTO_AES_ARM64_NEON_BLK
77 tristate "AES in ECB/CBC/CTR/XTS modes using NEON instructions"
78 depends on KERNEL_MODE_NEON
79 select CRYPTO_BLKCIPHER
80 select CRYPTO_AES_ARM64
84 config CRYPTO_CHACHA20_NEON
85 tristate "NEON accelerated ChaCha20 symmetric cipher"
86 depends on KERNEL_MODE_NEON
87 select CRYPTO_BLKCIPHER
88 select CRYPTO_CHACHA20
90 config CRYPTO_AES_ARM64_BS
91 tristate "AES in ECB/CBC/CTR/XTS modes using bit-sliced NEON algorithm"
92 depends on KERNEL_MODE_NEON
93 select CRYPTO_BLKCIPHER
94 select CRYPTO_AES_ARM64_NEON_BLK
95 select CRYPTO_AES_ARM64