Add a config option to exclude DebugFS support in the CCP driver.

Signed-off-by: Gary R Hook <gary.h...@amd.com>
---
 drivers/crypto/ccp/Kconfig      |    8 ++++++++
 drivers/crypto/ccp/Makefile     |    4 ++--
 drivers/crypto/ccp/ccp-dev-v5.c |    4 ++++
 3 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/ccp/Kconfig b/drivers/crypto/ccp/Kconfig
index b9dfae47aefd..51e46b57ad8e 100644
--- a/drivers/crypto/ccp/Kconfig
+++ b/drivers/crypto/ccp/Kconfig
@@ -44,3 +44,11 @@ config CRYPTO_DEV_SP_PSP
         management commands in Secure Encrypted Virtualization (SEV) mode,
         along with software-based Trusted Execution Environment (TEE) to
         enable third-party trusted applications.
+
+config CRYPTO_DEV_CCP_DEBUGFS
+       bool "Enable CCP Internals in DebugFS"
+       default n
+       depends on CRYPTO_DEV_SP_CCP
+       help
+         Expose CCP device information such as operation statistics, feature
+         information, and descriptor queue contents.
diff --git a/drivers/crypto/ccp/Makefile b/drivers/crypto/ccp/Makefile
index 51d1c0cf66c7..6b86f1e6d634 100644
--- a/drivers/crypto/ccp/Makefile
+++ b/drivers/crypto/ccp/Makefile
@@ -5,8 +5,8 @@ ccp-$(CONFIG_CRYPTO_DEV_SP_CCP) += ccp-dev.o \
            ccp-ops.o \
            ccp-dev-v3.o \
            ccp-dev-v5.o \
-           ccp-dmaengine.o \
-           ccp-debugfs.o
+           ccp-dmaengine.o
+ccp-$(CONFIG_CRYPTO_DEV_CCP_DEBUGFS) += ccp-debugfs.o
 ccp-$(CONFIG_PCI) += sp-pci.o
 ccp-$(CONFIG_CRYPTO_DEV_SP_PSP) += psp-dev.o
 
diff --git a/drivers/crypto/ccp/ccp-dev-v5.c b/drivers/crypto/ccp/ccp-dev-v5.c
index c76a9fa115b8..340d0984f8d7 100644
--- a/drivers/crypto/ccp/ccp-dev-v5.c
+++ b/drivers/crypto/ccp/ccp-dev-v5.c
@@ -970,8 +970,10 @@ static int ccp5_init(struct ccp_device *ccp)
        if (ret)
                goto e_hwrng;
 
+#ifdef CONFIG_CRYPTO_DEV_CCP_DEBUGFS
        /* Set up debugfs entries */
        ccp5_debugfs_setup(ccp);
+#endif
 
        return 0;
 
@@ -1009,11 +1011,13 @@ static void ccp5_destroy(struct ccp_device *ccp)
        /* Remove this device from the list of available units first */
        ccp_del_device(ccp);
 
+#ifdef CONFIG_CRYPTO_DEV_CCP_DEBUGFS
        /* We're in the process of tearing down the entire driver;
         * when all the devices are gone clean up debugfs
         */
        if (ccp_present())
                ccp5_debugfs_destroy();
+#endif
 
        /* Disable and clear interrupts */
        ccp5_disable_queue_interrupts(ccp);

Reply via email to