1 /** @file 2 This library is used by FSP modules to measure data to TPM. 3 4 Copyright (c) 2020, Intel Corporation. All rights reserved. <BR> 5 SPDX-License-Identifier: BSD-2-Clause-Patent 6 7 **/ 8 9 #ifndef _FSP_MEASUREMENT_LIB_H_ 10 #define _FSP_MEASUREMENT_LIB_H_ 11 12 #define FSP_MEASURE_FSP BIT0 13 #define FSP_MEASURE_FSPT BIT1 14 #define FSP_MEASURE_FSPM BIT2 15 #define FSP_MEASURE_FSPS BIT3 16 #define FSP_MEASURE_FSPUPD BIT31 17 18 /** 19 Measure a FSP FirmwareBlob. 20 21 @param[in] PcrIndex PCR Index. 22 @param[in] Description Description for this FirmwareBlob. 23 @param[in] FirmwareBlobBase Base address of this FirmwareBlob. 24 @param[in] FirmwareBlobLength Size in bytes of this FirmwareBlob. 25 26 @retval EFI_SUCCESS Operation completed successfully. 27 @retval EFI_UNSUPPORTED TPM device not available. 28 @retval EFI_OUT_OF_RESOURCES Out of memory. 29 @retval EFI_DEVICE_ERROR The operation was unsuccessful. 30 */ 31 EFI_STATUS 32 EFIAPI 33 MeasureFspFirmwareBlob ( 34 IN UINT32 PcrIndex, 35 IN CHAR8 *Description OPTIONAL, 36 IN EFI_PHYSICAL_ADDRESS FirmwareBlobBase, 37 IN UINT64 FirmwareBlobLength 38 ); 39 #endif 40