# SPDX-License-Identifier: GPL-2.0

menuconfig ARM64_CRYPTO
	bool "ARM64 Accelerated Cryptographic Algorithms"
	depends on ARM64
	help
	  Say Y here to choose from a selection of cryptographic algorithms
	  implemented using ARM64 specific CPU features or instructions.

if ARM64_CRYPTO

config CRYPTO_SHA256_ARM64
	tristate "SHA-224/SHA-256 digest algorithm for arm64"
	select CRYPTO_HASH

config CRYPTO_SHA512_ARM64
	tristate "SHA-384/SHA-512 digest algorithm for arm64"
	select CRYPTO_HASH

config CRYPTO_SHA1_ARM64_CE
	tristate "SHA-1 digest algorithm (ARMv8 Crypto Extensions)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_SHA1

config CRYPTO_SHA2_ARM64_CE
	tristate "SHA-224/SHA-256 digest algorithm (ARMv8 Crypto Extensions)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_SHA256_ARM64

config CRYPTO_SHA512_ARM64_CE
	tristate "SHA-384/SHA-512 digest algorithm (ARMv8 Crypto Extensions)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_SHA512_ARM64

config CRYPTO_SHA3_ARM64
	tristate "SHA3 digest algorithm (ARMv8.2 Crypto Extensions)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_SHA3

config CRYPTO_SM3_ARM64_CE
	tristate "SM3 digest algorithm (ARMv8.2 Crypto Extensions)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_SM3

config CRYPTO_SM4_ARM64_CE
	tristate "SM4 symmetric cipher (ARMv8.2 Crypto Extensions)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_ALGAPI
	select CRYPTO_SM4

config CRYPTO_GHASH_ARM64_CE
	tristate "GHASH/AES-GCM using ARMv8 Crypto Extensions"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_GF128MUL
	select CRYPTO_LIB_AES
	select CRYPTO_AEAD

config CRYPTO_CRCT10DIF_ARM64_CE
	tristate "CRCT10DIF digest algorithm using PMULL instructions"
	depends on KERNEL_MODE_NEON && CRC_T10DIF
	select CRYPTO_HASH

config CRYPTO_AES_ARM64
	tristate "AES core cipher using scalar instructions"
	select CRYPTO_AES

config CRYPTO_AES_ARM64_CE
	tristate "AES core cipher using ARMv8 Crypto Extensions"
	depends on ARM64 && KERNEL_MODE_NEON
	select CRYPTO_ALGAPI
	select CRYPTO_LIB_AES

config CRYPTO_AES_ARM64_CE_CCM
	tristate "AES in CCM mode using ARMv8 Crypto Extensions"
	depends on ARM64 && KERNEL_MODE_NEON
	select CRYPTO_ALGAPI
	select CRYPTO_AES_ARM64_CE
	select CRYPTO_AEAD
	select CRYPTO_LIB_AES

config CRYPTO_AES_ARM64_CE_BLK
	tristate "AES in ECB/CBC/CTR/XTS modes using ARMv8 Crypto Extensions"
	depends on KERNEL_MODE_NEON
	select CRYPTO_BLKCIPHER
	select CRYPTO_AES_ARM64_CE
	select CRYPTO_AES_ARM64
	select CRYPTO_SIMD

config CRYPTO_AES_ARM64_NEON_BLK
	tristate "AES in ECB/CBC/CTR/XTS modes using NEON instructions"
	depends on KERNEL_MODE_NEON
	select CRYPTO_BLKCIPHER
	select CRYPTO_AES_ARM64
	select CRYPTO_LIB_AES
	select CRYPTO_SIMD

config CRYPTO_CHACHA20_NEON
	tristate "ChaCha20, XChaCha20, and XChaCha12 stream ciphers using NEON instructions"
	depends on KERNEL_MODE_NEON
	select CRYPTO_BLKCIPHER
	select CRYPTO_LIB_CHACHA_GENERIC
	select CRYPTO_ARCH_HAVE_LIB_CHACHA

config CRYPTO_POLY1305_NEON
	tristate "Poly1305 hash function using scalar or NEON instructions"
	depends on KERNEL_MODE_NEON
	select CRYPTO_HASH
	select CRYPTO_ARCH_HAVE_LIB_POLY1305

config CRYPTO_NHPOLY1305_NEON
	tristate "NHPoly1305 hash function using NEON instructions (for Adiantum)"
	depends on KERNEL_MODE_NEON
	select CRYPTO_NHPOLY1305

config CRYPTO_AES_ARM64_BS
	tristate "AES in ECB/CBC/CTR/XTS modes using bit-sliced NEON algorithm"
	depends on KERNEL_MODE_NEON
	select CRYPTO_BLKCIPHER
	select CRYPTO_AES_ARM64_NEON_BLK
	select CRYPTO_AES_ARM64
	select CRYPTO_LIB_AES
	select CRYPTO_SIMD

endif
