]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Guid/CapsuleReport.h
MdePkg: Restore SetupMode macro definition
[mirror_edk2.git] / MdePkg / Include / Guid / CapsuleReport.h
CommitLineData
bbcf6351
CZ
1/** @file\r
2 Guid & data structure used for Capsule process result variables\r
3 \r
4 Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
5 This program and the accompanying materials\r
6 are licensed and made available under the terms and conditions of the BSD License\r
7 which accompanies this distribution. The full text of the license may be found at\r
8 http://opensource.org/licenses/bsd-license.php\r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13 @par Revision Reference:\r
14 GUIDs defined in UEFI 2.4 spec.\r
15\r
16**/\r
17\r
18\r
19#ifndef _CAPSULE_REPORT_GUID_H__\r
20#define _CAPSULE_REPORT_GUID_H__\r
21\r
22//\r
23// This is the GUID for capsule result variable.\r
24//\r
25#define EFI_CAPSULE_REPORT_GUID \\r
26 { \\r
27 0x39b68c46, 0xf7fb, 0x441b, {0xb6, 0xec, 0x16, 0xb0, 0xf6, 0x98, 0x21, 0xf3 } \\r
28 }\r
29\r
30\r
31typedef struct {\r
32\r
33 ///\r
34 /// Size in bytes of the variable including any data beyond header as specified by CapsuleGuid\r
35 ///\r
36 UINT32 VariableTotalSize;\r
37\r
38 ///\r
39 /// For alignment\r
40 ///\r
41 UINT32 Reserved;\r
42\r
43 ///\r
44 /// Guid from EFI_CAPSULE_HEADER\r
45 ///\r
46 EFI_GUID CapsuleGuid;\r
47\r
48 ///\r
49 /// Timestamp using system time when processing completed\r
50 ///\r
51 EFI_TIME CapsuleProcessed;\r
52\r
53 ///\r
54 /// Result of the capsule processing. Exact interpretation of any error code may depend\r
55 /// upon type of capsule processed\r
56 ///\r
57 EFI_STATUS CapsuleStatus;\r
58} EFI_CAPSULE_RESULT_VARIABLE_HEADER;\r
59\r
60\r
61typedef struct {\r
62\r
63 ///\r
64 /// Version of this structure, currently 0x00000001\r
65 ///\r
66 UINT16 Version;\r
67\r
68 ///\r
69 /// The index of the payload within the FMP capsule which was processed to generate this report\r
70 /// Starting from zero\r
71 ///\r
72 UINT8 PayloadIndex;\r
73\r
74 ///\r
75 /// The UpdateImageIndex from EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER\r
76 /// (after unsigned conversion from UINT8 to UINT16).\r
77 ///\r
78 UINT8 UpdateImageIndex;\r
79\r
80 ///\r
81 /// The UpdateImageTypeId Guid from EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER.\r
82 ///\r
83 EFI_GUID UpdateImageTypeId;\r
84\r
85 ///\r
86 /// In case of capsule loaded from disk, the zero-terminated array containing file name of capsule that was processed.\r
87 /// In case of capsule submitted directly to UpdateCapsule() there is no file name, and this field is required to contain a single 16-bit zero character \r
88 /// which is included in VariableTotalSize.\r
89 ///\r
90 /// CHAR16 CapsuleFileName[];\r
91 ///\r
92\r
93 ///\r
94 /// This field will contain a zero-terminated CHAR16 string containing the text representation of the device path of device publishing Firmware Management Protocol \r
95 /// (if present). In case where device path is not present and the target is not otherwise known to firmware, or when payload was blocked by policy, or skipped,\r
96 /// this field is required to contain a single 16-bit zero character which is included in VariableTotalSize.\r
97 ///\r
98 /// CHAR16 CapsuleTarget[];\r
99 ///\r
100} EFI_CAPSULE_RESULT_VARIABLE_FMP;\r
101\r
102\r
103extern EFI_GUID gEfiCapsuleReportGuid;\r
104\r
105#endif\r