3 * the capsule vendor GUID for capsule variables and the HOB.
4 * the capsule variable name.
5 * the capsule GUID HOB data structure.
6 The capsule HOB and variable can be used to store the capsule image start address and length.
7 They are used by EDKII implementation of capsule update across a system reset.
9 @par Note: EDKII implementation of capsule updating has discarded this capsule GUID HOB data
10 structure and used one UEFI Capsule HOB (defined in PI Specification 1.2) instead.
12 Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
13 SPDX-License-Identifier: BSD-2-Clause-Patent
17 #ifndef __EFI_CAPSULE_VENDOR_GUID_H__
18 #define __EFI_CAPSULE_VENDOR_GUID_H__
21 /// This guid is used as a variable GUID for the capsule variable
22 /// if the capsule pointer is passed through reset via a variable.
24 /// This guid is also used as a hob GUID for the capsule data
25 /// when the capsule pointer is passed from PEI phase to DXE phase.
27 #define EFI_CAPSULE_VENDOR_GUID \
28 { 0x711C703F, 0xC285, 0x4B10, { 0xA3, 0xB0, 0x36, 0xEC, 0xBD, 0x3C, 0x8B, 0xE2 } }
31 /// Name of capsule variable.
33 #define EFI_CAPSULE_VARIABLE_NAME L"CapsuleUpdateData"
36 /// The data structure of the capsule guid hob entry.
37 /// Note: EDKII implementation has discarded this structure and used
38 /// UEFI_CAPSULE_HOB instead.
41 EFI_PHYSICAL_ADDRESS BaseAddress
; ///< Capsule data start address.
42 UINT32 Length
; ///< Length of capsule data.
46 // The variable describes the long mode buffer used by IA32 Capsule PEIM
47 // to call X64 CapsuleCoalesce code to handle >4GB capsule blocks.
49 #define EFI_CAPSULE_LONG_MODE_BUFFER_NAME L"CapsuleLongModeBuffer"
52 EFI_PHYSICAL_ADDRESS PageTableAddress
;
53 EFI_PHYSICAL_ADDRESS StackBaseAddress
;
55 } EFI_CAPSULE_LONG_MODE_BUFFER
;
57 extern EFI_GUID gEfiCapsuleVendorGuid
;
59 #endif // #ifndef _EFI_CAPSULE_VENDOR_GUID_H_