[SeaBIOS] [PATCH v2 5/6] Remove usage of PP_CMD_ENABLE from all but one place
Stefan Berger
stefanb at us.ibm.com
Thu Jan 7 13:55:40 CET 2016
From: Stefan Berger <stefanb at linux.vnet.ibm.com>
Remove the usage of PhysicalPresence_CMD_ENABLE from all but
the assert_physical_presence function.
Signed-off-by: Stefan Berger <stefanb at linux.vnet.ibm.com>
---
src/tcgbios.c | 36 +++++++++---------------------------
1 file changed, 9 insertions(+), 27 deletions(-)
diff --git a/src/tcgbios.c b/src/tcgbios.c
index d14468e..ccf5486 100644
--- a/src/tcgbios.c
+++ b/src/tcgbios.c
@@ -38,7 +38,6 @@ static const u8 CommandFlag_TRUE[1] = { 0x01 };
typedef u8 tpm_ppi_code;
-
/****************************************************************
* ACPI TCPA table interface
****************************************************************/
@@ -213,16 +212,10 @@ tpm_set_failure(void)
{
dprintf(DEBUG_tcg, "TCGBIOS: TPM malfunctioning.\n");
- /* we will try to deactivate the TPM now - ignoring all errors */
- tpm_send_cmd(0, TPM_ORD_PhysicalPresence,
- PhysicalPresence_CMD_ENABLE,
- sizeof(PhysicalPresence_CMD_ENABLE),
- TPM_DURATION_TYPE_SHORT);
-
- tpm_send_cmd(0, TPM_ORD_PhysicalPresence,
- PhysicalPresence_PRESENT,
- sizeof(PhysicalPresence_PRESENT),
- TPM_DURATION_TYPE_SHORT);
+ /*
+ * We will try to deactivate the TPM now - ignoring all errors
+ * Physical presence is asserted.
+ */
tpm_send_cmd(0, TPM_ORD_SetTempDeactivated,
NULL, 0, TPM_DURATION_TYPE_SHORT);
@@ -545,22 +538,11 @@ tpm_setup(void)
void
tpm_prepboot(void)
{
- if (!tpm_is_working())
- return;
-
- int ret = tpm_send_check_cmd(0, TPM_ORD_PhysicalPresence,
- PhysicalPresence_CMD_ENABLE,
- sizeof(PhysicalPresence_CMD_ENABLE),
- TPM_DURATION_TYPE_SHORT);
- if (ret)
- return;
-
- ret = tpm_send_check_cmd(0, TPM_ORD_PhysicalPresence,
- PhysicalPresence_NOT_PRESENT_LOCK,
- sizeof(PhysicalPresence_NOT_PRESENT_LOCK),
- TPM_DURATION_TYPE_SHORT);
- if (ret)
- return;
+ if (TPM_has_physical_presence)
+ tpm_send_cmd(0, TPM_ORD_PhysicalPresence,
+ PhysicalPresence_NOT_PRESENT_LOCK,
+ sizeof(PhysicalPresence_NOT_PRESENT_LOCK),
+ TPM_DURATION_TYPE_SHORT);
tpm_add_action(4, "Calling INT 19h");
tpm_add_event_separators();
--
2.4.3
More information about the SeaBIOS
mailing list