1# SPDX-License-Identifier: GPL-2.0-only
2config CRYPTO_DEV_CCP_DD
3	tristate "Secure Processor device driver"
4	depends on CPU_SUP_AMD || ARM64
5	default m
6	help
7	  Provides AMD Secure Processor device driver.
8	  If you choose 'M' here, this module will be called ccp.
9
10config CRYPTO_DEV_SP_CCP
11	bool "Cryptographic Coprocessor device"
12	default y
13	depends on CRYPTO_DEV_CCP_DD && DMADEVICES
14	select HW_RANDOM
15	select DMA_ENGINE
16	select CRYPTO_SHA1
17	select CRYPTO_SHA256
18	help
19	  Provides the support for AMD Cryptographic Coprocessor (CCP) device
20	  which can be used to offload encryption operations such as SHA, AES
21	  and more.
22
23config CRYPTO_DEV_CCP_CRYPTO
24	tristate "Encryption and hashing offload support"
25	default m
26	depends on CRYPTO_DEV_CCP_DD
27	depends on CRYPTO_DEV_SP_CCP
28	select CRYPTO_HASH
29	select CRYPTO_SKCIPHER
30	select CRYPTO_AUTHENC
31	select CRYPTO_RSA
32	select CRYPTO_LIB_AES
33	help
34	  Support for using the cryptographic API with the AMD Cryptographic
35	  Coprocessor. This module supports offload of SHA and AES algorithms.
36	  If you choose 'M' here, this module will be called ccp_crypto.
37
38config CRYPTO_DEV_SP_PSP
39	bool "Platform Security Processor (PSP) device"
40	default y
41	depends on CRYPTO_DEV_CCP_DD && X86_64 && AMD_IOMMU
42	help
43	 Provide support for the AMD Platform Security Processor (PSP).
44	 The PSP is a dedicated processor that provides support for key
45	 management commands in Secure Encrypted Virtualization (SEV) mode,
46	 along with software-based Trusted Execution Environment (TEE) to
47	 enable third-party trusted applications.
48
49config CRYPTO_DEV_CCP_DEBUGFS
50	bool "Enable CCP Internals in DebugFS"
51	default n
52	depends on CRYPTO_DEV_SP_CCP
53	help
54	  Expose CCP device information such as operation statistics, feature
55	  information, and descriptor queue contents.
56