]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFsp2WrapperPkg/Include/Library/FspMeasurementLib.h
IntelFsp2WrapperPkg/FspMeasurementLib: Add header file.
[mirror_edk2.git] / IntelFsp2WrapperPkg / Include / Library / FspMeasurementLib.h
diff --git a/IntelFsp2WrapperPkg/Include/Library/FspMeasurementLib.h b/IntelFsp2WrapperPkg/Include/Library/FspMeasurementLib.h
new file mode 100644 (file)
index 0000000..4620b4b
--- /dev/null
@@ -0,0 +1,39 @@
+/** @file\r
+  This library is used by FSP modules to measure data to TPM.\r
+\r
+Copyright (c) 2020, Intel Corporation. All rights reserved. <BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
+\r
+**/\r
+\r
+#ifndef _FSP_MEASUREMENT_LIB_H_\r
+#define _FSP_MEASUREMENT_LIB_H_\r
+\r
+#define FSP_MEASURE_FSP       BIT0\r
+#define FSP_MEASURE_FSPT      BIT1\r
+#define FSP_MEASURE_FSPM      BIT2\r
+#define FSP_MEASURE_FSPS      BIT3\r
+#define FSP_MEASURE_FSPUPD    BIT31\r
+\r
+/**\r
+  Measure a FSP FirmwareBlob.\r
+\r
+  @param[in]  PcrIndex                PCR Index.\r
+  @param[in]  Description             Description for this FirmwareBlob.\r
+  @param[in]  FirmwareBlobBase        Base address of this FirmwareBlob.\r
+  @param[in]  FirmwareBlobLength      Size in bytes of this FirmwareBlob.\r
+\r
+  @retval EFI_SUCCESS           Operation completed successfully.\r
+  @retval EFI_UNSUPPORTED       TPM device not available.\r
+  @retval EFI_OUT_OF_RESOURCES  Out of memory.\r
+  @retval EFI_DEVICE_ERROR      The operation was unsuccessful.\r
+*/\r
+EFI_STATUS\r
+EFIAPI\r
+MeasureFspFirmwareBlob (\r
+  IN UINT32                         PcrIndex,\r
+  IN CHAR8                          *Description OPTIONAL,\r
+  IN EFI_PHYSICAL_ADDRESS           FirmwareBlobBase,\r
+  IN UINT64                         FirmwareBlobLength\r
+  );\r
+#endif\r