0001 config CRYPTO_DEV_KEEMBAY_OCS_AES_SM4
0002 tristate "Support for Intel Keem Bay OCS AES/SM4 HW acceleration"
0003 depends on HAS_IOMEM
0004 depends on ARCH_KEEMBAY || COMPILE_TEST
0005 select CRYPTO_SKCIPHER
0006 select CRYPTO_AEAD
0007 select CRYPTO_ENGINE
0008 help
0009 Support for Intel Keem Bay Offload and Crypto Subsystem (OCS) AES and
0010 SM4 cipher hardware acceleration for use with Crypto API.
0011
0012 Provides HW acceleration for the following transformations:
0013 cbc(aes), ctr(aes), ccm(aes), gcm(aes), cbc(sm4), ctr(sm4), ccm(sm4)
0014 and gcm(sm4).
0015
0016 Optionally, support for the following transformations can also be
0017 enabled: ecb(aes), cts(cbc(aes)), ecb(sm4) and cts(cbc(sm4)).
0018
0019 config CRYPTO_DEV_KEEMBAY_OCS_AES_SM4_ECB
0020 bool "Support for Intel Keem Bay OCS AES/SM4 ECB HW acceleration"
0021 depends on CRYPTO_DEV_KEEMBAY_OCS_AES_SM4
0022 help
0023 Support for Intel Keem Bay Offload and Crypto Subsystem (OCS)
0024 AES/SM4 ECB mode hardware acceleration for use with Crypto API.
0025
0026 Provides OCS version of ecb(aes) and ecb(sm4)
0027
0028 Intel does not recommend use of ECB mode with AES/SM4.
0029
0030 config CRYPTO_DEV_KEEMBAY_OCS_AES_SM4_CTS
0031 bool "Support for Intel Keem Bay OCS AES/SM4 CTS HW acceleration"
0032 depends on CRYPTO_DEV_KEEMBAY_OCS_AES_SM4
0033 help
0034 Support for Intel Keem Bay Offload and Crypto Subsystem (OCS)
0035 AES/SM4 CBC with CTS mode hardware acceleration for use with
0036 Crypto API.
0037
0038 Provides OCS version of cts(cbc(aes)) and cts(cbc(sm4)).
0039
0040 Intel does not recommend use of CTS mode with AES/SM4.
0041
0042 config CRYPTO_DEV_KEEMBAY_OCS_ECC
0043 tristate "Support for Intel Keem Bay OCS ECC HW acceleration"
0044 depends on ARCH_KEEMBAY || COMPILE_TEST
0045 depends on OF || COMPILE_TEST
0046 depends on HAS_IOMEM
0047 select CRYPTO_ECDH
0048 select CRYPTO_ENGINE
0049 help
0050 Support for Intel Keem Bay Offload and Crypto Subsystem (OCS)
0051 Elliptic Curve Cryptography (ECC) hardware acceleration for use with
0052 Crypto API.
0053
0054 Provides OCS acceleration for ECDH-256 and ECDH-384.
0055
0056 Say Y or M if you are compiling for the Intel Keem Bay SoC. The
0057 module will be called keembay-ocs-ecc.
0058
0059 If unsure, say N.
0060
0061 config CRYPTO_DEV_KEEMBAY_OCS_HCU
0062 tristate "Support for Intel Keem Bay OCS HCU HW acceleration"
0063 select CRYPTO_HASH
0064 select CRYPTO_ENGINE
0065 depends on HAS_IOMEM
0066 depends on ARCH_KEEMBAY || COMPILE_TEST
0067 depends on OF || COMPILE_TEST
0068 help
0069 Support for Intel Keem Bay Offload and Crypto Subsystem (OCS) Hash
0070 Control Unit (HCU) hardware acceleration for use with Crypto API.
0071
0072 Provides OCS HCU hardware acceleration of sha256, sha384, sha512, and
0073 sm3, as well as the HMAC variant of these algorithms.
0074
0075 Say Y or M if you're building for the Intel Keem Bay SoC. If compiled
0076 as a module, the module will be called keembay-ocs-hcu.
0077
0078 If unsure, say N.
0079
0080 config CRYPTO_DEV_KEEMBAY_OCS_HCU_HMAC_SHA224
0081 bool "Enable sha224 and hmac(sha224) support in Intel Keem Bay OCS HCU"
0082 depends on CRYPTO_DEV_KEEMBAY_OCS_HCU
0083 help
0084 Enables support for sha224 and hmac(sha224) algorithms in the Intel
0085 Keem Bay OCS HCU driver. Intel recommends not to use these
0086 algorithms.
0087
0088 Provides OCS HCU hardware acceleration of sha224 and hmac(224).
0089
0090 If unsure, say N.