1# SPDX-License-Identifier: GPL-2.0 2 3config CRYPTO_LIB_AES 4 tristate 5 6config CRYPTO_LIB_ARC4 7 tristate 8 9config CRYPTO_ARCH_HAVE_LIB_BLAKE2S 10 bool 11 help 12 Declares whether the architecture provides an arch-specific 13 accelerated implementation of the Blake2s library interface, 14 either builtin or as a module. 15 16config CRYPTO_LIB_BLAKE2S_GENERIC 17 def_bool !CRYPTO_ARCH_HAVE_LIB_BLAKE2S 18 help 19 This symbol can be depended upon by arch implementations of the 20 Blake2s library interface that require the generic code as a 21 fallback, e.g., for SIMD implementations. If no arch specific 22 implementation is enabled, this implementation serves the users 23 of CRYPTO_LIB_BLAKE2S. 24 25config CRYPTO_ARCH_HAVE_LIB_CHACHA 26 tristate 27 help 28 Declares whether the architecture provides an arch-specific 29 accelerated implementation of the ChaCha library interface, 30 either builtin or as a module. 31 32config CRYPTO_LIB_CHACHA_GENERIC 33 tristate 34 select CRYPTO_ALGAPI 35 help 36 This symbol can be depended upon by arch implementations of the 37 ChaCha library interface that require the generic code as a 38 fallback, e.g., for SIMD implementations. If no arch specific 39 implementation is enabled, this implementation serves the users 40 of CRYPTO_LIB_CHACHA. 41 42config CRYPTO_LIB_CHACHA 43 tristate 44 depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA 45 select CRYPTO_LIB_CHACHA_GENERIC if CRYPTO_ARCH_HAVE_LIB_CHACHA=n 46 help 47 Enable the ChaCha library interface. This interface may be fulfilled 48 by either the generic implementation or an arch-specific one, if one 49 is available and enabled. 50 51config CRYPTO_ARCH_HAVE_LIB_CURVE25519 52 tristate 53 help 54 Declares whether the architecture provides an arch-specific 55 accelerated implementation of the Curve25519 library interface, 56 either builtin or as a module. 57 58config CRYPTO_LIB_CURVE25519_GENERIC 59 tristate 60 help 61 This symbol can be depended upon by arch implementations of the 62 Curve25519 library interface that require the generic code as a 63 fallback, e.g., for SIMD implementations. If no arch specific 64 implementation is enabled, this implementation serves the users 65 of CRYPTO_LIB_CURVE25519. 66 67config CRYPTO_LIB_CURVE25519 68 tristate 69 depends on CRYPTO_ARCH_HAVE_LIB_CURVE25519 || !CRYPTO_ARCH_HAVE_LIB_CURVE25519 70 select CRYPTO_LIB_CURVE25519_GENERIC if CRYPTO_ARCH_HAVE_LIB_CURVE25519=n 71 help 72 Enable the Curve25519 library interface. This interface may be 73 fulfilled by either the generic implementation or an arch-specific 74 one, if one is available and enabled. 75 76config CRYPTO_LIB_DES 77 tristate 78 79config CRYPTO_LIB_POLY1305_RSIZE 80 int 81 default 2 if MIPS 82 default 11 if X86_64 83 default 9 if ARM || ARM64 84 default 1 85 86config CRYPTO_ARCH_HAVE_LIB_POLY1305 87 tristate 88 help 89 Declares whether the architecture provides an arch-specific 90 accelerated implementation of the Poly1305 library interface, 91 either builtin or as a module. 92 93config CRYPTO_LIB_POLY1305_GENERIC 94 tristate 95 help 96 This symbol can be depended upon by arch implementations of the 97 Poly1305 library interface that require the generic code as a 98 fallback, e.g., for SIMD implementations. If no arch specific 99 implementation is enabled, this implementation serves the users 100 of CRYPTO_LIB_POLY1305. 101 102config CRYPTO_LIB_POLY1305 103 tristate 104 depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305 105 select CRYPTO_LIB_POLY1305_GENERIC if CRYPTO_ARCH_HAVE_LIB_POLY1305=n 106 help 107 Enable the Poly1305 library interface. This interface may be fulfilled 108 by either the generic implementation or an arch-specific one, if one 109 is available and enabled. 110 111config CRYPTO_LIB_CHACHA20POLY1305 112 tristate 113 depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA 114 depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305 115 select CRYPTO_LIB_CHACHA 116 select CRYPTO_LIB_POLY1305 117 118config CRYPTO_LIB_SHA256 119 tristate 120 121config CRYPTO_LIB_SM4 122 tristate 123