]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Guid/CapsuleReport.h
MdePkg: Replace BSD License with BSD+Patent License
[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
9095d37b
LG
3\r
4 Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>\r
9344f092 5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
bbcf6351
CZ
6\r
7 @par Revision Reference:\r
8 GUIDs defined in UEFI 2.4 spec.\r
9\r
10**/\r
11\r
12\r
13#ifndef _CAPSULE_REPORT_GUID_H__\r
14#define _CAPSULE_REPORT_GUID_H__\r
15\r
16//\r
17// This is the GUID for capsule result variable.\r
18//\r
19#define EFI_CAPSULE_REPORT_GUID \\r
20 { \\r
21 0x39b68c46, 0xf7fb, 0x441b, {0xb6, 0xec, 0x16, 0xb0, 0xf6, 0x98, 0x21, 0xf3 } \\r
22 }\r
23\r
24\r
25typedef struct {\r
26\r
27 ///\r
28 /// Size in bytes of the variable including any data beyond header as specified by CapsuleGuid\r
29 ///\r
30 UINT32 VariableTotalSize;\r
31\r
32 ///\r
33 /// For alignment\r
34 ///\r
35 UINT32 Reserved;\r
36\r
37 ///\r
38 /// Guid from EFI_CAPSULE_HEADER\r
39 ///\r
40 EFI_GUID CapsuleGuid;\r
41\r
42 ///\r
43 /// Timestamp using system time when processing completed\r
44 ///\r
45 EFI_TIME CapsuleProcessed;\r
46\r
47 ///\r
48 /// Result of the capsule processing. Exact interpretation of any error code may depend\r
49 /// upon type of capsule processed\r
50 ///\r
51 EFI_STATUS CapsuleStatus;\r
52} EFI_CAPSULE_RESULT_VARIABLE_HEADER;\r
53\r
54\r
55typedef struct {\r
56\r
57 ///\r
58 /// Version of this structure, currently 0x00000001\r
59 ///\r
60 UINT16 Version;\r
61\r
62 ///\r
63 /// The index of the payload within the FMP capsule which was processed to generate this report\r
64 /// Starting from zero\r
65 ///\r
66 UINT8 PayloadIndex;\r
67\r
68 ///\r
69 /// The UpdateImageIndex from EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER\r
70 /// (after unsigned conversion from UINT8 to UINT16).\r
71 ///\r
72 UINT8 UpdateImageIndex;\r
73\r
74 ///\r
75 /// The UpdateImageTypeId Guid from EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER.\r
76 ///\r
77 EFI_GUID UpdateImageTypeId;\r
78\r
79 ///\r
80 /// In case of capsule loaded from disk, the zero-terminated array containing file name of capsule that was processed.\r
9095d37b 81 /// 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
bbcf6351
CZ
82 /// which is included in VariableTotalSize.\r
83 ///\r
84 /// CHAR16 CapsuleFileName[];\r
85 ///\r
86\r
87 ///\r
9095d37b 88 /// This field will contain a zero-terminated CHAR16 string containing the text representation of the device path of device publishing Firmware Management Protocol\r
bbcf6351
CZ
89 /// (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
90 /// this field is required to contain a single 16-bit zero character which is included in VariableTotalSize.\r
91 ///\r
92 /// CHAR16 CapsuleTarget[];\r
93 ///\r
94} EFI_CAPSULE_RESULT_VARIABLE_FMP;\r
95\r
96\r
97extern EFI_GUID gEfiCapsuleReportGuid;\r
98\r
99#endif\r