]>
Commit | Line | Data |
---|---|---|
beda3f76 JW |
1 | /** @file\r |
2 | PPI to describe stored hash digest for FVs.\r | |
3 | \r | |
4 | Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>\r | |
5 | SPDX-License-Identifier: BSD-2-Clause-Patent\r | |
6 | \r | |
7 | **/\r | |
8 | \r | |
9 | #ifndef __PEI_FIRMWARE_VOLUME_INFO_STORED_HASH_FV_H__\r | |
10 | #define __PEI_FIRMWARE_VOLUME_INFO_STORED_HASH_FV_H__\r | |
11 | \r | |
12 | #include <Ppi/FirmwareVolumeInfoPrehashedFV.h>\r | |
13 | \r | |
14 | // {7F5E4E31-81B1-47E5-9E21-1E4B5BC2F61D}\r | |
15 | #define EDKII_PEI_FIRMWARE_VOLUME_INFO_STORED_HASH_FV_PPI_GUID \\r | |
16 | {0x7f5e4e31, 0x81b1, 0x47e5, {0x9e, 0x21, 0x1e, 0x4b, 0x5b, 0xc2, 0xf6, 0x1d}}\r | |
17 | \r | |
18 | //\r | |
19 | // Hashed FV flags.\r | |
20 | //\r | |
21 | #define HASHED_FV_FLAG_REPORT_FV_INFO_PPI 0x0000000000000001\r | |
22 | #define HASHED_FV_FLAG_REPORT_FV_HOB 0x0000000000000002\r | |
23 | #define HASHED_FV_FLAG_VERIFIED_BOOT 0x0000000000000010\r | |
24 | #define HASHED_FV_FLAG_MEASURED_BOOT 0x0000000000000020\r | |
25 | #define HASHED_FV_FLAG_SKIP_ALL 0xFFFFFFFFFFFFFF00\r | |
26 | #define HASHED_FV_FLAG_SKIP_BOOT_MODE(Mode) LShiftU64 (0x100, (Mode))\r | |
27 | \r | |
28 | //\r | |
29 | // FV hash flags\r | |
30 | //\r | |
31 | #define FV_HASH_FLAG_BOOT_MODE(Mode) LShiftU64 (0x100, (Mode))\r | |
32 | \r | |
33 | typedef struct _EDKII_PEI_FIRMWARE_VOLUME_INFO_STORED_HASH_FV_PPI\r | |
34 | EDKII_PEI_FIRMWARE_VOLUME_INFO_STORED_HASH_FV_PPI;\r | |
35 | \r | |
36 | typedef struct _HASHED_FV_INFO {\r | |
37 | UINT64 Base;\r | |
38 | UINT64 Length;\r | |
39 | UINT64 Flag;\r | |
40 | } HASHED_FV_INFO;\r | |
41 | \r | |
42 | typedef struct _FV_HASH_INFO {\r | |
43 | UINT64 HashFlag;\r | |
44 | UINT16 HashAlgoId;\r | |
45 | UINT16 HashSize;\r | |
46 | UINT8 Hash[64];\r | |
47 | } FV_HASH_INFO;\r | |
48 | \r | |
49 | //\r | |
50 | // PPI used to convey FVs and hash information of a specific platform. Only one\r | |
51 | // instance of this PPI is allowed in the platform.\r | |
52 | //\r | |
53 | struct _EDKII_PEI_FIRMWARE_VOLUME_INFO_STORED_HASH_FV_PPI {\r | |
54 | FV_HASH_INFO HashInfo;\r | |
55 | UINTN FvNumber;\r | |
56 | HASHED_FV_INFO FvInfo[1];\r | |
57 | };\r | |
58 | \r | |
59 | extern EFI_GUID gEdkiiPeiFirmwareVolumeInfoStoredHashFvPpiGuid;\r | |
60 | \r | |
61 | #endif\r | |
62 | \r |