mirror of
https://git.proxmox.com/git/grub2
synced 2025-07-27 09:19:51 +00:00
efi/tpm: Add debug information for device protocol and eventlog
Add a number of debug logs to the tpm module. The condition tag for opening debugging is "tpm". On TPM machines, this will bring great convenience to diagnosis and debugging. Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
parent
a195dbb677
commit
3ccbaf36d4
@ -56,9 +56,13 @@ grub_tpm1_present (grub_efi_tpm_protocol_t *tpm)
|
|||||||
|
|
||||||
if (status != GRUB_EFI_SUCCESS || caps.TPMDeactivatedFlag
|
if (status != GRUB_EFI_SUCCESS || caps.TPMDeactivatedFlag
|
||||||
|| !caps.TPMPresentFlag)
|
|| !caps.TPMPresentFlag)
|
||||||
return tpm1_present = 0;
|
tpm1_present = 0;
|
||||||
|
else
|
||||||
|
tpm1_present = 1;
|
||||||
|
|
||||||
return tpm1_present = 1;
|
grub_dprintf ("tpm", "tpm1%s present\n", tpm1_present ? "" : " NOT");
|
||||||
|
|
||||||
|
return (grub_efi_boolean_t) tpm1_present;
|
||||||
}
|
}
|
||||||
|
|
||||||
static grub_efi_boolean_t
|
static grub_efi_boolean_t
|
||||||
@ -75,9 +79,13 @@ grub_tpm2_present (grub_efi_tpm2_protocol_t *tpm)
|
|||||||
status = efi_call_2 (tpm->get_capability, tpm, &caps);
|
status = efi_call_2 (tpm->get_capability, tpm, &caps);
|
||||||
|
|
||||||
if (status != GRUB_EFI_SUCCESS || !caps.TPMPresentFlag)
|
if (status != GRUB_EFI_SUCCESS || !caps.TPMPresentFlag)
|
||||||
return tpm2_present = 0;
|
tpm2_present = 0;
|
||||||
|
else
|
||||||
|
tpm2_present = 1;
|
||||||
|
|
||||||
return tpm2_present = 1;
|
grub_dprintf ("tpm", "tpm2%s present\n", tpm2_present ? "" : " NOT");
|
||||||
|
|
||||||
|
return (grub_efi_boolean_t) tpm2_present;
|
||||||
}
|
}
|
||||||
|
|
||||||
static grub_efi_boolean_t
|
static grub_efi_boolean_t
|
||||||
@ -102,6 +110,7 @@ grub_tpm_handle_find (grub_efi_handle_t *tpm_handle,
|
|||||||
*tpm_handle = handles[0];
|
*tpm_handle = handles[0];
|
||||||
grub_tpm_version = 1;
|
grub_tpm_version = 1;
|
||||||
*protocol_version = 1;
|
*protocol_version = 1;
|
||||||
|
grub_dprintf ("tpm", "TPM handle Found, version: 1\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -113,6 +122,7 @@ grub_tpm_handle_find (grub_efi_handle_t *tpm_handle,
|
|||||||
*tpm_handle = handles[0];
|
*tpm_handle = handles[0];
|
||||||
grub_tpm_version = 2;
|
grub_tpm_version = 2;
|
||||||
*protocol_version = 2;
|
*protocol_version = 2;
|
||||||
|
grub_dprintf ("tpm", "TPM handle Found, version: 2\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -231,6 +241,9 @@ grub_tpm_measure (unsigned char *buf, grub_size_t size, grub_uint8_t pcr,
|
|||||||
if (!grub_tpm_handle_find (&tpm_handle, &protocol_version))
|
if (!grub_tpm_handle_find (&tpm_handle, &protocol_version))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
grub_dprintf ("tpm", "log_event, pcr = %d, size = 0x%" PRIxGRUB_SIZE ", %s\n",
|
||||||
|
pcr, size, description);
|
||||||
|
|
||||||
if (protocol_version == 1)
|
if (protocol_version == 1)
|
||||||
return grub_tpm1_log_event (tpm_handle, buf, size, pcr, description);
|
return grub_tpm1_log_event (tpm_handle, buf, size, pcr, description);
|
||||||
else
|
else
|
||||||
|
Loading…
Reference in New Issue
Block a user