GNU Linux-libre 5.16.19-gnu
[releases.git] / drivers / crypto / keembay / Kconfig
1 config CRYPTO_DEV_KEEMBAY_OCS_AES_SM4
2         tristate "Support for Intel Keem Bay OCS AES/SM4 HW acceleration"
3         depends on HAS_IOMEM
4         depends on ARCH_KEEMBAY || COMPILE_TEST
5         select CRYPTO_SKCIPHER
6         select CRYPTO_AEAD
7         select CRYPTO_ENGINE
8         help
9           Support for Intel Keem Bay Offload and Crypto Subsystem (OCS) AES and
10           SM4 cipher hardware acceleration for use with Crypto API.
11
12           Provides HW acceleration for the following transformations:
13           cbc(aes), ctr(aes), ccm(aes), gcm(aes), cbc(sm4), ctr(sm4), ccm(sm4)
14           and gcm(sm4).
15
16           Optionally, support for the following transformations can also be
17           enabled: ecb(aes), cts(cbc(aes)), ecb(sm4) and cts(cbc(sm4)).
18
19 config CRYPTO_DEV_KEEMBAY_OCS_AES_SM4_ECB
20         bool "Support for Intel Keem Bay OCS AES/SM4 ECB HW acceleration"
21         depends on CRYPTO_DEV_KEEMBAY_OCS_AES_SM4
22         help
23           Support for Intel Keem Bay Offload and Crypto Subsystem (OCS)
24           AES/SM4 ECB mode hardware acceleration for use with Crypto API.
25
26           Provides OCS version of ecb(aes) and ecb(sm4)
27
28           Intel does not recommend use of ECB mode with AES/SM4.
29
30 config CRYPTO_DEV_KEEMBAY_OCS_AES_SM4_CTS
31         bool "Support for Intel Keem Bay OCS AES/SM4 CTS HW acceleration"
32         depends on CRYPTO_DEV_KEEMBAY_OCS_AES_SM4
33         help
34           Support for Intel Keem Bay Offload and Crypto Subsystem (OCS)
35           AES/SM4 CBC with CTS mode hardware acceleration for use with
36           Crypto API.
37
38           Provides OCS version of cts(cbc(aes)) and cts(cbc(sm4)).
39
40           Intel does not recommend use of CTS mode with AES/SM4.
41
42 config CRYPTO_DEV_KEEMBAY_OCS_ECC
43         tristate "Support for Intel Keem Bay OCS ECC HW acceleration"
44         depends on ARCH_KEEMBAY || COMPILE_TEST
45         depends on OF || COMPILE_TEST
46         depends on HAS_IOMEM
47         select CRYPTO_ECDH
48         select CRYPTO_ENGINE
49         help
50           Support for Intel Keem Bay Offload and Crypto Subsystem (OCS)
51           Elliptic Curve Cryptography (ECC) hardware acceleration for use with
52           Crypto API.
53
54           Provides OCS acceleration for ECDH-256 and ECDH-384.
55
56           Say Y or M if you are compiling for the Intel Keem Bay SoC. The
57           module will be called keembay-ocs-ecc.
58
59           If unsure, say N.
60
61 config CRYPTO_DEV_KEEMBAY_OCS_HCU
62         tristate "Support for Intel Keem Bay OCS HCU HW acceleration"
63         select CRYPTO_HASH
64         select CRYPTO_ENGINE
65         depends on HAS_IOMEM
66         depends on ARCH_KEEMBAY || COMPILE_TEST
67         depends on OF || COMPILE_TEST
68         help
69           Support for Intel Keem Bay Offload and Crypto Subsystem (OCS) Hash
70           Control Unit (HCU) hardware acceleration for use with Crypto API.
71
72           Provides OCS HCU hardware acceleration of sha256, sha384, sha512, and
73           sm3, as well as the HMAC variant of these algorithms.
74
75           Say Y or M if you're building for the Intel Keem Bay SoC. If compiled
76           as a module, the module will be called keembay-ocs-hcu.
77
78           If unsure, say N.
79
80 config CRYPTO_DEV_KEEMBAY_OCS_HCU_HMAC_SHA224
81         bool "Enable sha224 and hmac(sha224) support in Intel Keem Bay OCS HCU"
82         depends on CRYPTO_DEV_KEEMBAY_OCS_HCU
83         help
84           Enables support for sha224 and hmac(sha224) algorithms in the Intel
85           Keem Bay OCS HCU driver. Intel recommends not to use these
86           algorithms.
87
88           Provides OCS HCU hardware acceleration of sha224 and hmac(224).
89
90           If unsure, say N.