xref: /linux/drivers/crypto/ccp/Kconfig (revision 93308baf075039dccf347391491773f272cc24f6)
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
30f1147660STom Lendacky	select CRYPTO_BLKCIPHER
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.
49*93308bafSHook, Gary
50*93308bafSHook, Garyconfig CRYPTO_DEV_CCP_DEBUGFS
51*93308bafSHook, Gary	bool "Enable CCP Internals in DebugFS"
52*93308bafSHook, Gary	default n
53*93308bafSHook, Gary	depends on CRYPTO_DEV_SP_CCP
54*93308bafSHook, Gary	help
55*93308bafSHook, Gary	  Expose CCP device information such as operation statistics, feature
56*93308bafSHook, Gary	  information, and descriptor queue contents.
57