[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240528210712.1268-6-mario.limonciello@amd.com>
Date: Tue, 28 May 2024 16:07:12 -0500
From: Mario Limonciello <mario.limonciello@....com>
To: Herbert Xu <herbert@...dor.apana.org.au>
CC: Mario Limonciello <mario.limonciello@....com>, Tom Lendacky
<thomas.lendacky@....com>, "open list:AMD CRYPTOGRAPHIC COPROCESSOR (CCP)
DRIVER - DB..." <linux-crypto@...r.kernel.org>, Richard Hughes
<hughsient@...il.com>, open list <linux-kernel@...r.kernel.org>
Subject: [PATCH v2 5/5] crypto: ccp: Move message about TSME being enabled later in init
Some of the security attributes data is now populated from an HSTI
command on some processors, so show the message after it has been
populated.
Signed-off-by: Mario Limonciello <mario.limonciello@....com>
---
v1->v2:
* Move code from patch 4
---
drivers/crypto/ccp/hsti.c | 15 +++++++++++++++
drivers/crypto/ccp/psp-dev.c | 8 --------
2 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/drivers/crypto/ccp/hsti.c b/drivers/crypto/ccp/hsti.c
index 8b99bbd4efe2..1b39a4fb55c0 100644
--- a/drivers/crypto/ccp/hsti.c
+++ b/drivers/crypto/ccp/hsti.c
@@ -119,5 +119,20 @@ int psp_init_hsti(struct psp_device *psp)
return ret;
}
+ /*
+ * At this stage, if security information hasn't been populated by
+ * either the PSP or by the driver through the platform command,
+ * then there is nothing more to do.
+ */
+ if (!psp->capability.security_reporting)
+ return 0;
+
+ if (psp->capability.tsme_status) {
+ if (cc_platform_has(CC_ATTR_HOST_MEM_ENCRYPT))
+ dev_notice(psp->dev, "psp: Both TSME and SME are active, SME is unnecessary when TSME is active.\n");
+ else
+ dev_notice(psp->dev, "psp: TSME enabled\n");
+ }
+
return 0;
}
diff --git a/drivers/crypto/ccp/psp-dev.c b/drivers/crypto/ccp/psp-dev.c
index 0a01ad134609..1c5a7189631e 100644
--- a/drivers/crypto/ccp/psp-dev.c
+++ b/drivers/crypto/ccp/psp-dev.c
@@ -157,14 +157,6 @@ static unsigned int psp_get_capability(struct psp_device *psp)
}
psp->capability.raw = val;
- /* Detect TSME and/or SME status */
- if (psp->capability.security_reporting && psp->capability.tsme_status) {
- if (cc_platform_has(CC_ATTR_HOST_MEM_ENCRYPT))
- dev_notice(psp->dev, "psp: Both TSME and SME are active, SME is unnecessary when TSME is active.\n");
- else
- dev_notice(psp->dev, "psp: TSME enabled\n");
- }
-
return 0;
}
--
2.43.0
Powered by blists - more mailing lists