xref: /linux/drivers/crypto/ccp/Kconfig (revision b95bba5d01141ba919c99ea6fde206727f3b3eb4)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2f1147660STom Lendackyconfig CRYPTO_DEV_CCP_DD
3720419f0SBrijesh Singh	tristate "Secure Processor device driver"
4016db9c5SBorislav Petkov	depends on CPU_SUP_AMD || ARM64
5f1147660STom Lendacky	default m
6720419f0SBrijesh Singh	help
7720419f0SBrijesh Singh	  Provides AMD Secure Processor device driver.
8720419f0SBrijesh Singh	  If you choose 'M' here, this module will be called ccp.
9720419f0SBrijesh Singh
10720419f0SBrijesh Singhconfig CRYPTO_DEV_SP_CCP
11720419f0SBrijesh Singh	bool "Cryptographic Coprocessor device"
12720419f0SBrijesh Singh	default y
13720419f0SBrijesh Singh	depends on CRYPTO_DEV_CCP_DD
14d5aa8095STom Lendacky	select HW_RANDOM
1558ea8abfSGary R Hook	select DMA_ENGINE
16b3c2fee5SGary R Hook	select DMADEVICES
17bdd75064SLABBE Corentin	select CRYPTO_SHA1
18bdd75064SLABBE Corentin	select CRYPTO_SHA256
19f1147660STom Lendacky	help
20720419f0SBrijesh Singh	  Provides the support for AMD Cryptographic Coprocessor (CCP) device
21720419f0SBrijesh Singh	  which can be used to offload encryption operations such as SHA, AES
22720419f0SBrijesh Singh	  and more.
23f1147660STom Lendacky
24f1147660STom Lendackyconfig CRYPTO_DEV_CCP_CRYPTO
2521dc9e8fSTom Lendacky	tristate "Encryption and hashing offload support"
26f1147660STom Lendacky	default m
27720419f0SBrijesh Singh	depends on CRYPTO_DEV_CCP_DD
28720419f0SBrijesh Singh	depends on CRYPTO_DEV_SP_CCP
29f1147660STom Lendacky	select CRYPTO_HASH
30*b95bba5dSEric Biggers	select CRYPTO_SKCIPHER
31f1147660STom Lendacky	select CRYPTO_AUTHENC
32ac360fafSArnd Bergmann	select CRYPTO_RSA
336273fd7aSArd Biesheuvel	select CRYPTO_LIB_AES
34f1147660STom Lendacky	help
35f1147660STom Lendacky	  Support for using the cryptographic API with the AMD Cryptographic
3621dc9e8fSTom Lendacky	  Coprocessor. This module supports offload of SHA and AES algorithms.
3721dc9e8fSTom Lendacky	  If you choose 'M' here, this module will be called ccp_crypto.
382a6170dfSBrijesh Singh
392a6170dfSBrijesh Singhconfig CRYPTO_DEV_SP_PSP
402a6170dfSBrijesh Singh	bool "Platform Security Processor (PSP) device"
412a6170dfSBrijesh Singh	default y
422a6170dfSBrijesh Singh	depends on CRYPTO_DEV_CCP_DD && X86_64
432a6170dfSBrijesh Singh	help
442a6170dfSBrijesh Singh	 Provide support for the AMD Platform Security Processor (PSP).
452a6170dfSBrijesh Singh	 The PSP is a dedicated processor that provides support for key
462a6170dfSBrijesh Singh	 management commands in Secure Encrypted Virtualization (SEV) mode,
472a6170dfSBrijesh Singh	 along with software-based Trusted Execution Environment (TEE) to
482a6170dfSBrijesh Singh	 enable third-party trusted applications.
4993308bafSHook, Gary
5093308bafSHook, Garyconfig CRYPTO_DEV_CCP_DEBUGFS
5193308bafSHook, Gary	bool "Enable CCP Internals in DebugFS"
5293308bafSHook, Gary	default n
5393308bafSHook, Gary	depends on CRYPTO_DEV_SP_CCP
5493308bafSHook, Gary	help
5593308bafSHook, Gary	  Expose CCP device information such as operation statistics, feature
5693308bafSHook, Gary	  information, and descriptor queue contents.
57