1698 lines
88 KiB
C
1698 lines
88 KiB
C
/** @file
|
|
Definitions for H2O check point
|
|
|
|
;******************************************************************************
|
|
;* Copyright (c) 2017 - 2021, Insyde Software Corp. All Rights Reserved.
|
|
;*
|
|
;* You may not reproduce, distribute, publish, display, perform, modify, adapt,
|
|
;* transmit, broadcast, present, recite, release, license or otherwise exploit
|
|
;* any part of this publication in any form, by any means, without the prior
|
|
;* written permission of Insyde Software Corporation.
|
|
;*
|
|
;******************************************************************************
|
|
*/
|
|
|
|
#ifndef __H2O_CHECK_POINT_H__
|
|
#define __H2O_CHECK_POINT_H__
|
|
|
|
#include <Uefi.h>
|
|
#include <Pi/PiBootMode.h>
|
|
#include <Pi/PiFirmwareVolume.h>
|
|
#include <Pi/PiPeiCis.h>
|
|
#include <IndustryStandard/Acpi.h>
|
|
#include <IndustryStandard/Pci.h>
|
|
#include <Protocol/GraphicsOutput.h>
|
|
#include <Protocol/HiiImage.h>
|
|
#include <Protocol/SimpleTextInEx.h>
|
|
#include <Protocol/SimplePointer.h>
|
|
#include <Protocol/AbsolutePointer.h>
|
|
#include <Protocol/OEMBadgingSupport.h>
|
|
#include <Protocol/AcpiTable.h>
|
|
#include <Protocol/AcpiSystemDescriptionTable.h>
|
|
#include <Protocol/PciIo.h>
|
|
#include <Protocol/BusSpecificDriverOverride.h>
|
|
#include <Protocol/DevicePath.h>
|
|
#include <Protocol/PciRootBridgeIo.h>
|
|
#include <Protocol/LoadFile2.h>
|
|
#include <Protocol/PciHotPlugInit.h>
|
|
#include <Protocol/Smbios.h>
|
|
#include <Protocol/H2OBdsServices.h>
|
|
#include <Protocol/LegacyBios.h>
|
|
#include <Protocol/HiiConfigAccess.h>
|
|
#include <Protocol/FormBrowser2.h>
|
|
#include <Guid/AuthenticatedVariableFormat.h>
|
|
#include <Guid/H2OSecurityEventHob.h>
|
|
#include <Library/FdSupportLib.h>
|
|
#include <IndustryStandard/Acpi62.h>
|
|
#include <Guid/HddPasswordVariable.h>
|
|
|
|
//
|
|
// Task behavior for H2O_CP_XXXX_DATA structure Status member
|
|
//
|
|
#define H2O_CP_TASK_NORMAL 0x00
|
|
#define H2O_CP_TASK_SKIP 0x01
|
|
#define H2O_CP_TASK_UPDATE 0x02
|
|
#define H2O_CP_TASK_BOOT_FAIL 0x03
|
|
#define H2O_CP_TASK_SKIP_UPDATE 0x04
|
|
|
|
#define H2O_CP_TASK_BREAK 0x80
|
|
#define H2O_CP_TASK_BREAK_NORMAL (H2O_CP_TASK_BREAK | H2O_CP_TASK_NORMAL)
|
|
#define H2O_CP_TASK_BREAK_SKIP (H2O_CP_TASK_BREAK | H2O_CP_TASK_SKIP)
|
|
#define H2O_CP_TASK_BREAK_UPDATE (H2O_CP_TASK_BREAK | H2O_CP_TASK_UPDATE)
|
|
#define H2O_CP_TASK_BREAK_BOOT_FAIL (H2O_CP_TASK_BREAK | H2O_CP_TASK_BOOT_FAIL)
|
|
#define H2O_CP_TASK_BREAK_SKIP_UPDATE (H2O_CP_TASK_BREAK | H2O_CP_TASK_SKIP_UPDATE)
|
|
//
|
|
// Task behavior for H2O_BDS_CP_XXXX_DATA structure Status member
|
|
//
|
|
#define H2O_BDS_TASK_NORMAL H2O_CP_TASK_NORMAL
|
|
#define H2O_BDS_TASK_SKIP H2O_CP_TASK_SKIP
|
|
#define H2O_BDS_TASK_UPDATE H2O_CP_TASK_UPDATE
|
|
#define H2O_BDS_TASK_BOOT_FAIL H2O_CP_TASK_BOOT_FAIL
|
|
|
|
//
|
|
// Note: Please follow below policy to add new checkpoint.
|
|
// 1. Check points should be grouped 1st by phase (PEI, DXE, SMM or BDS)
|
|
// If check points can be triggered in all phases, the phase name should be BASE. For example: post code checkpoint.
|
|
// 2. Where possible, check points should be grouped by common topic, such as the driver where they are
|
|
// located or the technology they implement. For example: BdsDxe checkpoints together, or Setup
|
|
// 3. Checkpoints together. Where possible, check points should be in execution order. For example: "before"
|
|
// checkpoints should appear before "after", "init" checkpoints before "shutdown" checkpoints.
|
|
//
|
|
|
|
//
|
|
// BASE CP GUID definitions
|
|
//
|
|
#define H2O_BASE_CP_POST_CODE_GUID \
|
|
{ \
|
|
0x3cbdd55b, 0x9ad7, 0x4f86, 0x89, 0x57, 0x80, 0xe4, 0x81, 0x91, 0xfc, 0x28 \
|
|
}
|
|
|
|
#define H2O_BASE_CP_CPU_EXCEPTION_GUID \
|
|
{ \
|
|
0xc5883a0c, 0xcb76, 0x4998, 0x85, 0x07, 0x15, 0x3b, 0x38, 0x96, 0xc4, 0x11 \
|
|
}
|
|
|
|
#define H2O_BASE_CP_SECURITY_EVENT_REPORT_GUID \
|
|
{ \
|
|
0x97052ece, 0x3b8b, 0x4771, 0x89, 0xf5, 0xc5, 0xa7, 0xc1, 0xd8, 0xe1, 0xeb \
|
|
}
|
|
|
|
#define H2O_BASE_CP_VERIFY_FV_GUID \
|
|
{ \
|
|
0xc975364e, 0xddd8, 0x4ef4, 0x94, 0x2c, 0x8a, 0xbd, 0xf5, 0xcb, 0x75, 0x74 \
|
|
}
|
|
|
|
|
|
#define H2O_BASE_CP_HDD_PASSWORD_GET_TABLE_GUID \
|
|
{ \
|
|
0x267fdd34, 0x8ad7, 0x49e9, 0xab, 0x89, 0x8b, 0x36, 0x1b, 0xff, 0x63, 0xd5 \
|
|
}
|
|
|
|
#define H2O_BASE_CP_HDD_PASSWORD_SET_TABLE_GUID \
|
|
{ \
|
|
0xce8ce878, 0xea53, 0x4996, 0x86, 0x8f, 0x61, 0x63, 0x49, 0x64, 0x27, 0x13 \
|
|
}
|
|
|
|
//
|
|
// PEI CP GUID definitions
|
|
//
|
|
#define H2O_PEI_CP_FORCE_VARIABLE_DEFAULTS_GUID \
|
|
{ \
|
|
0x97796b25, 0x43bb, 0x4281, 0x9f, 0x05, 0x11, 0x0b, 0x86, 0xe3, 0x49, 0xa4 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_INIT_CHIPSET_POLICY_GUID \
|
|
{ \
|
|
0x88b6a6d0, 0x073e, 0x428e, 0xad, 0xb5, 0x17, 0x12, 0x99, 0x14, 0x92, 0x24 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_INIT_PLATFORM_STAGE_1_GUID \
|
|
{ \
|
|
0x3b9c6cd9, 0xde0c, 0x4401, 0xa3, 0xc5, 0x12, 0x4b, 0x61, 0xd1, 0x9d, 0x3d \
|
|
}
|
|
|
|
#define H2O_PEI_CP_SET_BOOT_MODE_BEFORE_GUID \
|
|
{ \
|
|
0xedc49749, 0x1d69, 0x4d6a, 0xa6, 0xab, 0x27, 0x3f, 0x06, 0xf9, 0x74, 0x58 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_INIT_PLATFORM_STAGE_2_GUID \
|
|
{ \
|
|
0x20b242dd, 0x0d63, 0x4949, 0xad, 0x0a, 0x1c, 0xfa, 0xf9, 0x3d, 0x12, 0x44 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_SECURITY_EVENT_DETECT_GUID \
|
|
{ \
|
|
0x5fe76de4, 0x493d, 0x4e68, 0xbb, 0xc5, 0xf8, 0x96, 0x8b, 0xdb, 0x92, 0x05 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_PCI_ENUM_UPDATE_DEV_RESOURCES_GUID \
|
|
{ \
|
|
0x8efc26f0, 0x276e, 0x48ae, 0xad, 0x9a, 0x90, 0x4d, 0xa0, 0x7e, 0xb5, 0x53 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_CRISIS_RECOVERY_PUBLISH_FV_GUID \
|
|
{ \
|
|
0xdb38b706, 0x7ea2, 0x41f1, 0x90, 0x8a, 0xba, 0xbe, 0x73, 0xf7, 0x01, 0x45 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_CRISIS_RECOVERY_GET_PROTECT_TABLE_GUID \
|
|
{ \
|
|
0xfbb92f55, 0x9dba, 0x4144, 0xaf, 0x42, 0xfc, 0x69, 0xe9, 0x24, 0x82, 0xa9 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_CRISIS_RECOVERY_FLASH_GUID \
|
|
{ \
|
|
0x0e83fba0, 0xade2, 0x42cc, 0x90, 0xbe, 0x90, 0xe4, 0xee, 0x44, 0xba, 0x18 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_DXE_FV_CORRUPTED_GUID \
|
|
{ \
|
|
0xfcef1b85, 0xed9, 0x45af, 0xa9, 0x63, 0xca, 0xfe, 0x2e, 0x84, 0x10, 0x59 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_END_OF_PEI_BEFORE_GUID \
|
|
{ \
|
|
0xc3caccf2, 0x6a32, 0x48b3, 0xb7, 0x4f, 0xae, 0x33, 0x56, 0xef, 0xe8, 0x04 \
|
|
}
|
|
|
|
#define H2O_PEI_CP_END_OF_PEI_AFTER_GUID \
|
|
{ \
|
|
0x53ef893c, 0x890f, 0x44a2, 0x8b, 0x37, 0x62, 0x1e, 0x1e, 0xd4, 0xaf, 0xde \
|
|
}
|
|
|
|
//
|
|
// DXE CP GUID definitions
|
|
//
|
|
#define H2O_DXE_CP_WRITE_VARIABLE_DEFAULTS_GUID \
|
|
{ \
|
|
0x549b7cc1, 0x2059, 0x4ba6, 0x90, 0x4a, 0xac, 0x26, 0xb9, 0x5f, 0xa6, 0x94 \
|
|
}
|
|
|
|
#define H2O_DXE_CP_UPDATE_ACPI_DESC_HDR_GUID \
|
|
{ \
|
|
0x8b7bd4f9, 0x11e1, 0x43e0, 0x83, 0xf3, 0xf1, 0x04, 0x2c, 0x6a, 0xac, 0x54 \
|
|
}
|
|
|
|
#define H2O_DXE_CP_PCI_CHECK_SYSTEM_OPTION_ROM_GUID \
|
|
{ \
|
|
0xaf9a2514, 0x474b, 0x40e8, 0xa8, 0xb5, 0x50, 0x6c, 0x0e, 0x5d, 0x48, 0x33 \
|
|
}
|
|
|
|
#define H2O_DXE_CP_UPDATE_SMBIOS_RECORD_GUID \
|
|
{ \
|
|
0x1b39dac9, 0xd4cd, 0x450a, 0xb7, 0xbb, 0x96, 0x86, 0x18, 0x51, 0x8e, 0x6d \
|
|
}
|
|
|
|
#define H2O_DXE_CP_RESET_SYSTEM_GUID \
|
|
{ \
|
|
0x4ec6f877, 0x13fc, 0x4adc, 0xaf, 0xe4, 0x14, 0x28, 0xcb, 0xc5, 0xf1, 0x77 \
|
|
}
|
|
|
|
#define H2O_DXE_CP_PCI_GET_BRIDGE_INFO_GUID \
|
|
{ \
|
|
0xdedf7529, 0xaa91, 0x4eb7, 0xb5, 0x7c, 0xcb, 0x4b, 0x01, 0x08, 0xbc, 0x67 \
|
|
}
|
|
|
|
#define H2O_DXE_CP_PCI_HPC_GET_RESOURCE_PADDING_GUID \
|
|
{ \
|
|
0x45df04f4, 0x596c, 0x4149, 0x8e, 0xd1, 0xba, 0xb1, 0x65, 0xf0, 0x23, 0xd0 \
|
|
}
|
|
|
|
#define H2O_DXE_CP_UPDATE_ACPI_ESRT_TPM_FW_VERSION_GUID \
|
|
{ \
|
|
0x5400031b, 0xe93d, 0x45bf, 0x90, 0x11, 0xed, 0x20, 0x09, 0x5f, 0x96, 0x6c \
|
|
}
|
|
|
|
//
|
|
// SMM CP GUID definitions
|
|
//
|
|
#define H2O_SMM_CP_IHISI_AUTH_STATUS_GUID \
|
|
{ \
|
|
0x725cff90, 0x6bb0, 0x4566, 0xbb, 0x12, 0xd9, 0x3d, 0x18, 0x62, 0xcf, 0x66 \
|
|
}
|
|
|
|
#define H2O_SMM_CP_IHISI_AUTH_CHECK_GUID \
|
|
{ \
|
|
0xd2a08ed5, 0xe171, 0x4492, 0x85, 0x7a, 0x2d, 0xf5, 0x8c, 0x96, 0x46, 0x86 \
|
|
}
|
|
//
|
|
// BDS CP GUID definitions
|
|
//
|
|
#define H2O_BDS_CP_INIT_GUID \
|
|
{ \
|
|
0xd74ef78e, 0xc75b, 0x4786, 0xba, 0x79, 0xd2, 0xc2, 0xb6, 0x72, 0x52, 0x50 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_END_OF_DXE_BEFORE_GUID \
|
|
{ \
|
|
0x6adc6c22, 0x72e1, 0x410b, 0xa9, 0xf2, 0x9a, 0xc6, 0xed, 0xe9, 0xfe, 0x5e \
|
|
}
|
|
|
|
#define H2O_BDS_CP_END_OF_DXE_AFTER_GUID \
|
|
{ \
|
|
0x5b02c9e2, 0x7ce3, 0x403a, 0x99, 0x7c, 0xca, 0x10, 0xd8, 0x66, 0x50, 0x7d \
|
|
}
|
|
|
|
#define H2O_BDS_CP_PLATFORM_INIT_GUID \
|
|
{ \
|
|
0xe0f365e4, 0xa8c0, 0x4766, 0x99, 0x05, 0xb5, 0x34, 0xd7, 0x80, 0xf9, 0x03 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_DRIVER_CONNECT_BEFORE_GUID \
|
|
{ \
|
|
0x3faf7df3, 0x9b55, 0x46f8, 0xad, 0xfa, 0x12, 0x8e, 0x9d, 0x90, 0x7a, 0x1c \
|
|
}
|
|
|
|
#define H2O_BDS_CP_DRIVER_CONNECT_AFTER_GUID \
|
|
{ \
|
|
0x64b0026a, 0x6886, 0x4ca3, 0xa4, 0xa8, 0x95, 0xed, 0x36, 0x68, 0x1f, 0x54 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_PCI_ENUM_BEGIN_GUID \
|
|
{ \
|
|
0x88e3dfe8, 0x4c1c, 0x44c8, 0x94, 0xde, 0xcd, 0xdb, 0x17, 0x7f, 0x23, 0x6b \
|
|
}
|
|
|
|
#define H2O_BDS_CP_PCI_ENUM_UPDATE_DEV_INFO_GUID \
|
|
{ \
|
|
0x24678487, 0x87cc, 0x4f7e, 0x97, 0x98, 0xdd, 0xc5, 0x58, 0x29, 0x12, 0x82 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_PCI_ENUM_UPDATE_DEV_RESOURCES_GUID \
|
|
{ \
|
|
0x82996373, 0xbc18, 0x4dc5, 0x93, 0xf2, 0xf9, 0xe1, 0x51, 0xf6, 0x9b, 0xa1 \
|
|
}
|
|
|
|
|
|
#define H2O_BDS_CP_PCI_ENUM_COMPLETE_BEFORE_GUID \
|
|
{ \
|
|
0x8e68f0ed, 0x1c72, 0x4786, 0xab, 0xaa, 0x09, 0x64, 0x94, 0x07, 0x27, 0x28 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_PCI_ENUM_COMPLETE_AFTER_GUID \
|
|
{ \
|
|
0x9fac5ad2, 0xe513, 0x4d16, 0xa8, 0x88, 0x64, 0x70, 0x1e, 0x1d, 0x47, 0xb9 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CON_IN_CONNECT_BEFORE_GUID \
|
|
{ \
|
|
0x8a1a9798, 0xadfb, 0x4483, 0xa1, 0xc3, 0x29, 0x9d, 0xab, 0x99, 0x46, 0xdb \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CON_IN_CONNECT_AFTER_GUID \
|
|
{ \
|
|
0xf32791c1, 0x6551, 0x449d, 0xbe, 0x5a, 0x99, 0xbe, 0x0, 0xe, 0xe6, 0x6b \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CON_OUT_CONNECT_BEFORE_GUID \
|
|
{ \
|
|
0x68655f09, 0x464a, 0x4642, 0xa7, 0x22, 0xd1, 0x18, 0x93, 0xbd, 0x3f, 0x7b \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CON_OUT_CONNECT_AFTER_GUID \
|
|
{ \
|
|
0xd2c4a682, 0xa6ef, 0x4410, 0xb1, 0x2d, 0x58, 0xd6, 0xdd, 0xc1, 0xf0, 0xb2 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_HOT_KEY_DETECTED_GUID \
|
|
{ \
|
|
0x1168f79a, 0x7841, 0x417b, 0xad, 0x9a, 0x91, 0xbd, 0x3d, 0x57, 0x52, 0xe4 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_DXE_SMM_READY_TO_LOCK_BEFORE_GUID \
|
|
{ \
|
|
0x191c1ba0, 0x18bb, 0x4ed5, 0x8b, 0x3, 0x45, 0xc8, 0x57, 0xc8, 0xb5, 0xa6 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_DXE_SMM_READY_TO_LOCK_AFTER_GUID \
|
|
{ \
|
|
0xa03514ea, 0x127b, 0x4cd1, 0x86, 0xfa, 0xe4, 0xd3, 0xe6, 0xa, 0x6b, 0x92 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_DISPLAY_BEFORE_GUID \
|
|
{ \
|
|
0xc5d30c2c, 0xd1f6, 0x401b, 0xbb, 0xd3, 0x74, 0xe6, 0xde, 0x1b, 0x4f, 0xf \
|
|
}
|
|
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_GUID \
|
|
{ \
|
|
0x14d717c9, 0xaf3e, 0x4aff, 0x90, 0xcb, 0x3b, 0x03, 0x65, 0xbe, 0xbc, 0x1b \
|
|
}
|
|
|
|
#define H2O_BDS_CP_DISPLAY_STRING_BEFORE_GUID \
|
|
{ \
|
|
0x9ba004e5, 0xf300, 0x453a, 0xb3, 0xbe, 0x3b, 0x7c, 0xeb, 0x21, 0xb7, 0x74 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CONNECT_ALL_BEFORE_GUID \
|
|
{ \
|
|
0x10b1ae5f, 0xf4d1, 0x4c15, 0x89, 0xd0, 0xa8, 0xc2, 0x67, 0x28, 0xf5, 0x80 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_NETWORK_UPDATE_MAC_ADDR_GUID \
|
|
{ \
|
|
0x6efd5d42, 0x7951, 0x4396, 0xb2, 0x23, 0x7f, 0x6c, 0xdc, 0x60, 0x66, 0xd8 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CONNECT_ALL_AFTER_GUID \
|
|
{ \
|
|
0xadd30d8b, 0xda29, 0x40fe, 0x9b, 0x5e, 0x54, 0x3c, 0xda, 0xa3, 0x25, 0xe7 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_DEVICE_ENUM_BEFORE_GUID \
|
|
{ \
|
|
0xe94da155, 0x331a, 0x4944, 0xb8, 0x21, 0xe1, 0x68, 0xdd, 0x30, 0xdc, 0xbc \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_DEVICE_REGISTER_LEGACY_BOOT_OPTION_GUID \
|
|
{ \
|
|
0xd9787a56, 0x7282, 0x42e7, 0x80, 0x8b, 0x39, 0xb2, 0x18, 0x7a, 0x2a, 0xd1 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_DEVICE_ENUM_CHECK_BOOT_OPTION_GUID \
|
|
{ \
|
|
0x5a5c6d88, 0x3ad9, 0x4e43, 0xb1, 0xb7, 0x98, 0x31, 0x57, 0x42, 0xad, 0x4c \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_DEVICE_REGISTER_EFI_BOOT_OPTION_GUID \
|
|
{ \
|
|
0xfd68b83d, 0xc2dd, 0x4582, 0xb8, 0x0d, 0x43, 0xca, 0xc1, 0xa0, 0x36, 0x1f \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_DEVICE_ENUM_AFTER_GUID \
|
|
{ \
|
|
0x16bb17c5, 0x5757, 0x46fc, 0xa3, 0xef, 0xdb, 0x00, 0xbd, 0xc0, 0xab, 0xb1 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_RECOVERY_COMPLETE_GUID \
|
|
{ \
|
|
0xb2d6ab51, 0x8f12, 0x49a6, 0x97, 0xa6, 0x8e, 0x41, 0x4c, 0x8b, 0xb3, 0x29 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_SYSPREP_GUID \
|
|
{ \
|
|
0x1536c670, 0x7cb6, 0x437e, 0xa8, 0xca, 0xce, 0x06, 0xcf, 0xff, 0xe6, 0x3a \
|
|
}
|
|
|
|
#define H2O_BDS_CP_OS_RECOVERY_GUID \
|
|
{ \
|
|
0x4e66c7e8, 0x08f4, 0x49b1, 0x82, 0x11, 0xb7, 0x22, 0xd7, 0x24, 0x7e, 0xac \
|
|
}
|
|
|
|
#define H2O_BDS_CP_PLATFORM_RECOVERY_GUID \
|
|
{ \
|
|
0x0814d9f4, 0x4ef9, 0x4c8e, 0xb1, 0x90, 0x28, 0xe5, 0x63, 0x34, 0x90, 0xf2 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_DEVICE_SELECT_GUID \
|
|
{ \
|
|
0x633370f0, 0x4b8c, 0x4100, 0x84, 0xb7, 0x3b, 0x41, 0x8a, 0x5d, 0xc5, 0xba \
|
|
}
|
|
|
|
#define H2O_BDS_CP_SEND_FORM_BEFORE_GUID \
|
|
{ \
|
|
0xf513ba71, 0x652e, 0x41f9, 0x8c, 0x99, 0x48, 0x65, 0x5f, 0xb0, 0x40, 0x96 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_CALLBACK_BEFORE_GUID \
|
|
{ \
|
|
0x7324b318, 0xd0a7, 0x4104, 0xa9, 0xff, 0xd6, 0xd1, 0x61, 0x00, 0x8e, 0xc0 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_CALLBACK_AFTER_GUID \
|
|
{ \
|
|
0x557d5c05, 0x533f, 0x4bf7, 0x88, 0xb9, 0xa6, 0x7c, 0x53, 0x9e, 0xb9, 0x64 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_EXTRACT_CONFIG_BEFORE_GUID \
|
|
{ \
|
|
0x872f7892, 0x02ab, 0x4345, 0x9b, 0x29, 0xe7, 0x15, 0x0f, 0xc0, 0x7b, 0x6f \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_EXTRACT_CONFIG_AFTER_GUID \
|
|
{ \
|
|
0xa4c351c6, 0xfdc2, 0x4e83, 0xb3, 0x9e, 0xdb, 0x58, 0x6e, 0x01, 0x93, 0xb6 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_ROUTE_CONFIG_BEFORE_GUID \
|
|
{ \
|
|
0xf4ad3273, 0x7689, 0x418a, 0x92, 0x44, 0xb5, 0xa8, 0x14, 0x39, 0xd7, 0xfa \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_ROUTE_CONFIG_AFTER_GUID \
|
|
{ \
|
|
0xac77a0d8, 0x1c01, 0x48a0, 0xac, 0x67, 0xe0, 0x9f, 0x2b, 0x33, 0x17, 0xa0 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_IDLE_BEFORE_GUID \
|
|
{ \
|
|
0x902e62c4, 0xe93b, 0x474c, 0x89, 0x0b, 0xe9, 0x39, 0xb6, 0x1c, 0x98, 0x77 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_IDLE_AFTER_GUID \
|
|
{ \
|
|
0x65555e1e, 0x5883, 0x4d17, 0x97, 0xc5, 0x40, 0xf3, 0xac, 0x0c, 0xd4, 0xc6 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_USER_INPUT_GUID \
|
|
{ \
|
|
0x4b01db42, 0x0284, 0x4754, 0xb4, 0x36, 0xa9, 0x9c, 0xa9, 0x7b, 0x50, 0x0a \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_INPUT_PASSWORD_TOO_LONG_GUID \
|
|
{ \
|
|
0x5e4a5f79, 0xa6b9, 0x444a, 0x95, 0xe2, 0xae, 0xfe, 0xa2, 0x23, 0x11, 0x8f \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_CHECK_PASSWORD_GUID \
|
|
{ \
|
|
0x5e08f31e, 0x926d, 0x4834, 0xbc, 0x3a, 0x82, 0x9f, 0xda, 0x59, 0x96, 0xd2 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_UPDATE_PASSWORD_DIALOG_MESSAGE_GUID \
|
|
{ \
|
|
0xaed40901, 0xe63b, 0x460f, 0x9c, 0xc8, 0x36, 0xdb, 0x7a, 0x71, 0xf7, 0x75 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_SEND_FORM_AFTER_GUID \
|
|
{ \
|
|
0x9afa9a40, 0x2e13, 0x49b6, 0x99, 0x40, 0xd7, 0x4e, 0x35, 0xb5, 0xe5, 0x65 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_NO_BOOT_DEVICE_GUID \
|
|
{ \
|
|
0xde22bc1a, 0x3499, 0x4207, 0xa0, 0xde, 0x3d, 0x70, 0x6a, 0xbe, 0x5f, 0xf1 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_READY_TO_BOOT_BEFORE_GUID \
|
|
{ \
|
|
0x463ee173, 0x1485, 0x4749, 0xb7, 0x82, 0x91, 0x30, 0xdd, 0xf2, 0x2e, 0xaa \
|
|
}
|
|
|
|
#define H2O_BDS_CP_UPDATE_ACPI_DESC_HDR_GUID \
|
|
{ \
|
|
0xa6f4cc46, 0x892b, 0x4021, 0xba, 0xfb, 0xbf, 0x6d, 0x3b, 0xab, 0x1a, 0x96 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_UPDATE_ACPI_FACS_GUID \
|
|
{ \
|
|
0x944a6f0b, 0xfa9a, 0x4ee3, 0x97, 0x03, 0x77, 0x29, 0xc5, 0x16, 0x07, 0xaf \
|
|
}
|
|
|
|
#define H2O_BDS_CP_UPDATE_ACPI_SDEV_GUID \
|
|
{ \
|
|
0xf9d1b3aa, 0xd8a1, 0x4a66, 0xa1, 0xf5, 0xab, 0x4a, 0xcc, 0x8b, 0xb5, 0x1d \
|
|
}
|
|
|
|
#define H2O_BDS_CP_READY_TO_BOOT_AFTER_GUID \
|
|
{ \
|
|
0xef208648, 0xb128, 0x4257, 0x9f, 0x21, 0xba, 0xaa, 0x51, 0x17, 0xef, 0xa8 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CAPSULE_UPDATE_PROGRESS_GUID \
|
|
{ \
|
|
0x66a9c3a7, 0x69be, 0x435c, 0x8a, 0xf1, 0x3e, 0x1d, 0xf4, 0x9, 0x9e, 0x66 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_UPDATE_MEMORY_TYPE_INFO_GUID \
|
|
{ \
|
|
0x52581db1, 0x7880, 0x4d9a, 0xa2, 0xa1, 0x7b, 0x34, 0x44, 0x4e, 0x36, 0x33 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_BEFORE_GUID \
|
|
{ \
|
|
0xe7e316d5, 0xffb9, 0x4cec, 0xba, 0x82, 0x3b, 0x0, 0xe5, 0x3e, 0x12, 0xa8 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_UPDATE_CAPABILITY_GUID \
|
|
{ \
|
|
0x8d2b6d59, 0x0adb, 0x4611, 0xb4, 0x1b, 0x22, 0xfa, 0x31, 0x78, 0x7a, 0x51 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_AFTER_GUID \
|
|
{ \
|
|
0x4173b6cd, 0x5711, 0x462c, 0x9c, 0x6e, 0x1f, 0x3c, 0x95, 0x49, 0xcc, 0x9f \
|
|
}
|
|
|
|
#define H2O_BDS_CP_EXIT_BOOT_SERVICES_BEFORE_GUID \
|
|
{ \
|
|
0x1dd55b9d, 0x3e0c, 0x41b1, 0xb0, 0xcf, 0x5b, 0xfd, 0x70, 0xb5, 0xc2, 0x12 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_LEGACY_PREPARE_TO_BOOT_BEFORE_GUID \
|
|
{ \
|
|
0xf1bda499, 0x437f, 0x4058, 0xb8, 0xb2, 0xed, 0xb7, 0x87, 0x5a, 0x58, 0x58 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_LEGACY_PREPARE_TO_BOOT_AFTER_GUID \
|
|
{ \
|
|
0xeed9baa0, 0xfc03, 0x4a3d, 0x92, 0xf2, 0x1b, 0x22, 0x71, 0x7f, 0xd0, 0x62 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_LEGACY_BOOT_BEFORE_GUID \
|
|
{ \
|
|
0xf9afcfac, 0x68bb, 0x4c3c, 0x9e, 0xe1, 0x33, 0x5a, 0x91, 0x2b, 0x30, 0xb5 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_LEGACY_BOOT_AFTER_GUID \
|
|
{ \
|
|
0xb96a8be, 0xb79b, 0x419e, 0x8b, 0x13, 0x70, 0x45, 0x37, 0xac, 0x3c, 0xdb \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_SUCCESS_GUID \
|
|
{ \
|
|
0x75f1ff71, 0xd7bb, 0x4225, 0xa8, 0xc8, 0xab, 0x4c, 0xeb, 0xe6, 0x1b, 0x52 \
|
|
}
|
|
|
|
#define H2O_BDS_CP_BOOT_FAILED_GUID \
|
|
{ \
|
|
0xd4e5b97d, 0xb7de, 0x469b, 0xb7, 0xe3, 0x2a, 0x9c, 0x27, 0x6a, 0x11, 0xe8 \
|
|
}
|
|
|
|
//
|
|
// BDS CP GUID definitions.
|
|
// NOTE: Below GUID defines are deprecated. Suggest using H2O_BDS_CP_XXX_YYY_GUID not Below
|
|
// H2O_BDS_CP_XXX_YYY_PROTOCOLGUID
|
|
//
|
|
#define H2O_BDS_CP_INIT_PROTOCOL_GUID H2O_BDS_CP_INIT_GUID
|
|
#define H2O_BDS_CP_END_OF_DXE_BEFORE_PROTOCOL_GUID H2O_BDS_CP_END_OF_DXE_BEFORE_GUID
|
|
#define H2O_BDS_CP_END_OF_DXE_AFTER_PROTOCOL_GUID H2O_BDS_CP_END_OF_DXE_AFTER_GUID
|
|
#define H2O_BDS_CP_DRIVER_CONNECT_BEFORE_PROTOCOL_GUID H2O_BDS_CP_DRIVER_CONNECT_BEFORE_GUID
|
|
#define H2O_BDS_CP_DRIVER_CONNECT_AFTER_PROTOCOL_GUID H2O_BDS_CP_DRIVER_CONNECT_AFTER_GUID
|
|
#define H2O_BDS_CP_CON_IN_CONNECT_BEFORE_PROTOCOL_GUID H2O_BDS_CP_CON_IN_CONNECT_BEFORE_GUID
|
|
#define H2O_BDS_CP_CON_IN_CONNECT_AFTER_PROTOCOL_GUID H2O_BDS_CP_CON_IN_CONNECT_AFTER_GUID
|
|
#define H2O_BDS_CP_CON_OUT_CONNECT_BEFORE_PROTOCOL_GUID H2O_BDS_CP_CON_OUT_CONNECT_BEFORE_GUID
|
|
#define H2O_BDS_CP_CON_OUT_CONNECT_AFTER_PROTOCOL_GUID H2O_BDS_CP_CON_OUT_CONNECT_AFTER_GUID
|
|
#define H2O_BDS_CP_DISPLAY_BEFORE_PROTOCOL_GUID H2O_BDS_CP_DISPLAY_BEFORE_GUID
|
|
#define H2O_BDS_CP_DISPLAY_STRING_BEFORE_PROTOCOL_GUID H2O_BDS_CP_DISPLAY_STRING_BEFORE_GUID
|
|
#define H2O_BDS_CP_CONNECT_ALL_BEFORE_PROTOCOL_GUID H2O_BDS_CP_CONNECT_ALL_BEFORE_GUID
|
|
#define H2O_BDS_CP_CONNECT_ALL_AFTER_PROTOCOL_GUID H2O_BDS_CP_CONNECT_ALL_AFTER_GUID
|
|
#define H2O_BDS_CP_SYSPREP_PROTOCOL_GUID H2O_BDS_CP_SYSPREP_GUID
|
|
#define H2O_BDS_CP_OS_RECOVERY_PROTOCOL_GUID H2O_BDS_CP_OS_RECOVERY_GUID
|
|
#define H2O_BDS_CP_PLATFORM_RECOVERY_PROTOCOL_GUID H2O_BDS_CP_PLATFORM_RECOVERY_GUID
|
|
#define H2O_BDS_CP_BOOT_DEVICE_SELECT_PROTOCOL_GUID H2O_BDS_CP_BOOT_DEVICE_SELECT_GUID
|
|
#define H2O_BDS_CP_NO_BOOT_DEVICE_PROTOCOL_GUID H2O_BDS_CP_NO_BOOT_DEVICE_GUID
|
|
#define H2O_BDS_CP_READY_TO_BOOT_BEFORE_PROTOCOL_GUID H2O_BDS_CP_READY_TO_BOOT_BEFORE_GUID
|
|
#define H2O_BDS_CP_READY_TO_BOOT_AFTER_PROTOCOL_GUID H2O_BDS_CP_READY_TO_BOOT_AFTER_GUID
|
|
#define H2O_BDS_CP_BOOT_BEFORE_PROTOCOL_GUID H2O_BDS_CP_BOOT_BEFORE_GUID
|
|
#define H2O_BDS_CP_BOOT_AFTER_PROTOCOL_GUID H2O_BDS_CP_BOOT_AFTER_GUID
|
|
#define H2O_BDS_CP_EXIT_BOOT_SERVICES_BEFORE_PROTOCOL_GUID H2O_BDS_CP_EXIT_BOOT_SERVICES_BEFORE_GUID
|
|
#define H2O_BDS_CP_BOOT_SUCCESS_PROTOCOL_GUID H2O_BDS_CP_BOOT_SUCCESS_GUID
|
|
#define H2O_BDS_CP_BOOT_FAILED_PROTOCOL_GUID H2O_BDS_CP_BOOT_FAILED_GUID
|
|
#define H2O_BDS_CP_LEGACY_BOOT_AFTER_PROTOCOL_GUID H2O_BDS_CP_LEGACY_BOOT_AFTER_GUID
|
|
#define H2O_BDS_CP_LEGACY_BOOT_BEFORE_PROTOCOL_GUID H2O_BDS_CP_LEGACY_BOOT_BEFORE_GUID
|
|
|
|
// @Prompt Structure definition for checkpoint data
|
|
typedef struct _H2O_CP_DATA {
|
|
UINT32 Size;
|
|
UINT32 Status;
|
|
} H2O_CP_DATA;
|
|
|
|
//
|
|
// BASE CP structure definitions
|
|
//
|
|
// @Prompt Structure definition for gH2OBaseCpPostCodeGuid checkpoint
|
|
typedef struct _H2O_BASE_CP_POST_CODE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
UINT32 PostCodeValue; /// The 32-bit value to write to the POST card.
|
|
} H2O_BASE_CP_POST_CODE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBaseCpCpuExceptionGuid checkpoint
|
|
typedef struct _H2O_BASE_CP_CPU_EXCEPTION_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN UINT32 Exception; /// Unsigned integer that specifies the exception that is being reported.
|
|
IN UINT32 ErrorCode; /// Unsigned integer that specifies the error code that is associated with the exception.
|
|
IN EFI_PHYSICAL_ADDRESS CodeIp; /// Points to the address of the instruction that caused the exception or that was being executed at the time of the exception.
|
|
IN UINT16 CodeSel; /// Points to the address of the instruction that caused the exception or that was being executed at the time of the exception.
|
|
IN UINT16 Reserved1; /// Reserved
|
|
IN UINT32 Reserved2; /// Reserved
|
|
IN UINT64 Data; /// Exception data
|
|
} H2O_BASE_CP_CPU_EXCEPTION_DATA;
|
|
|
|
#define H2O_SECURITY_EVENT_DESC_SIZE 256
|
|
|
|
// @Prompt Structure definition for gH2OBaseCpSecurityEventReportGuid checkpoint
|
|
typedef struct _H2O_BASE_CP_SECURITY_EVENT_REPORT_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN OUT H2O_SECURITY_EVENT Event; /// Detected event information.
|
|
} H2O_BASE_CP_SECURITY_EVENT_REPORT_DATA;
|
|
|
|
|
|
// @Prompt Structure definition for gH2OBaseCpHddPasswordGetTableGuid checkpoint
|
|
typedef struct _H2O_BASE_CP_HDD_PASSWORD_GET_TABLE_DATA {
|
|
IN UINT32 Size;
|
|
IN OUT UINT32 Status;
|
|
IN OUT UINT32 HddPasswordCount;
|
|
IN OUT HDD_PASSWORD_TABLE *HddPasswordTable;
|
|
IN OUT EFI_STATUS HddPasswordStatus;
|
|
} H2O_BASE_CP_HDD_PASSWORD_GET_TABLE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBaseCpHddPasswordSetTableGuid checkpoint
|
|
typedef struct _H2O_BASE_CP_HDD_PASSWORD_SET_TABLE_DATA {
|
|
IN UINT32 Size;
|
|
IN OUT UINT32 Status;
|
|
IN UINT32 HddPasswordCount;
|
|
IN HDD_PASSWORD_TABLE *HddPasswordTable;
|
|
IN OUT EFI_STATUS HddPasswordStatus;
|
|
} H2O_BASE_CP_HDD_PASSWORD_SET_TABLE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBaseCpVerifyFvGuid checkpoint
|
|
typedef struct _H2O_BASE_CP_VERIFY_FV_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_PHYSICAL_ADDRESS FvBase; /// Specifies Base address of FV image.
|
|
UINT64 FvLength; /// Specifies the length of FV image.
|
|
BOOLEAN Trusted; /// BOOLEAN that specifies the FV is whether verified passed
|
|
} H2O_BASE_CP_VERIFY_FV_DATA;
|
|
|
|
//
|
|
// PEI CP structure definitions
|
|
//
|
|
// @Prompt Structure definition for gH2OPeiCpGetVariableStoreStatusGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_FORCE_VARIABLE_DEFAULTS_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
VARIABLE_STORE_HEADER *VariableStoreHdr; /// Pointer to the variable store header.
|
|
BOOLEAN ForceVariableDefaults; /// Status of Variable Store Region.
|
|
} H2O_PEI_CP_FORCE_VARIABLE_DEFAULTS_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpInitChipsetPolicyGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_INIT_CHIPSET_POLICY_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the chipset behavior.
|
|
} H2O_PEI_CP_INIT_CHIPSET_POLICY_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpInitPlatformStage1Guid checkpoint
|
|
typedef struct _H2O_PEI_CP_INIT_PLATFORM_STAGE_1_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_PEI_CP_INIT_PLATFORM_STAGE_1_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpSetBootModeBeforeGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_SET_BOOT_MODE_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_BOOT_MODE BootMode; /// On entry, specifies the boot mode that the kernel is planning to set.
|
|
/// On exit, indicates the boot mode that the kernel should set (if the status
|
|
/// is H2O_CP_TASK_UPDATE)
|
|
BOOLEAN CustomBootModePolicy; /// Specifies that the boot mode has been prioritized using the Default Policy
|
|
/// (FALSE) or is the original value returned by the kernel or
|
|
/// OemSvcChangeBootMode() (TRUE).
|
|
} H2O_PEI_CP_SET_BOOT_MODE_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpInitPlatformStage2Guid checkpoint
|
|
typedef struct _H2O_PEI_CP_INIT_PLATFORM_STAGE_2_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_PEI_CP_INIT_PLATFORM_STAGE_2_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpSecurityEventDetectGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_SECURITY_EVENT_DETECT_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_PEI_CP_SECURITY_EVENT_DETECT_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpCrisisRecoveryPublishFvGuiid checkpoint
|
|
typedef struct _H2O_PEI_CP_CRISIS_RECOVERY_PUBLISH_FV_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN EFI_FIRMWARE_VOLUME_HEADER *FvHeader; /// Pointer to firmware volume header.
|
|
} H2O_PEI_CP_CRISIS_RECOVERY_PUBLISH_FV_DATA;
|
|
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpCrisisRecoveryGetProtectTableGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_CRISIS_RECOVERY_GET_PROTECT_TABLE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
UINT32 ProtectTableCount; /// Unsigned integer that specifies the number of entries in the protected region table ProtectTable.
|
|
FLASH_ENTRY *ProtectTable; /// Pointer to the protected region table.
|
|
} H2O_PEI_CP_CRISIS_RECOVERY_GET_PROTECT_TABLE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpCrisisRecoveryFlashGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_CRISIS_RECOVERY_FLASH_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
UINT32 RecoveryCapsuleSize; /// Unsigned integer that specifies the recovery capsule file size indicated by RecoveryCapsule.
|
|
UINT8 *RecoveryCapsule; /// Pointer to the recovery capsule file.
|
|
} H2O_PEI_CP_CRISIS_RECOVERY_FLASH_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpDxeFvCorruptedGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_DXE_FV_CORRUPTED_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
OUT BOOLEAN ResetSystem; /// Boolean value that specifies need reset system or not.
|
|
OUT EFI_PEI_FILE_HANDLE FileHandle; /// FileHandle to load DxeCore.
|
|
} H2O_PEI_CP_DXE_FV_CORRUPTED_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpEndOfPeiBeforeGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_END_OF_PEI_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_PEI_CP_END_OF_PEI_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpEndOfPeiAfterGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_END_OF_PEI_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_PEI_CP_END_OF_PEI_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OPeiCpPciEnumUpdateDevResourcesGuid checkpoint
|
|
typedef struct _H2O_PEI_CP_PCI_ENUM_UPDATE_DEV_RESOURCES {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN UINT32 NodeUid; /// Unsigned integer that specifies the PCI root bridge. This value matches the value used in the Acpi() device path node for the device.
|
|
IN UINT8 Bus; /// Unsigned integers that specifythe PCI bus number on which the PCI device resides.
|
|
IN UINT8 Device; /// Unsigned integers that specifythe PCI device number on which the PCI device resides.
|
|
IN UINT8 Function; /// Unsigned integers that specifythe PCI function number on which the PCI device resides.
|
|
IN OUT UINT32 PciBar[6]; /// Array of unsigned integers that specify the base address associated with each of the possible PCI base address registers. A value of 0 indicates that the PCI BAR should not be initialized.
|
|
} H2O_PEI_CP_PCI_ENUM_UPDATE_DEV_RESOURCES;
|
|
|
|
//
|
|
// DXE CP structure definitions
|
|
//
|
|
// @Prompt Structure definition for gH2ODxeCpWriteVariableDefaultsGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_WRITE_VARIABLE_DEFAULTS_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_DXE_CP_WRITE_VARIABLE_DEFAULTS_DATA;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpUpdateAcpiDescHdrGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_UPDATE_ACPI_DESC_HDR_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN OUT EFI_ACPI_SDT_HEADER *AcpiTableHeader; /// Pointer to the ACPI table header.
|
|
} H2O_DXE_CP_UPDATE_ACPI_DESC_HDR_DATA;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpPciCheckSysOptionRomGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_PCI_CHECK_SYSTEM_OPTION_ROM_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_GUID FileName; /// Option ROM file GUID.
|
|
UINT16 VendorId; /// Option ROM vendor ID.
|
|
UINT16 DeviceId; /// Option ROM device ID.
|
|
} H2O_DXE_CP_PCI_CHECK_SYSTEM_OPTION_ROM_DATA;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpUpdateSmbiosRecord checkpoint
|
|
typedef struct _H2O_DXE_CP_UPDATE_SMBIOS_RECORD_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_SMBIOS_TABLE_HEADER *SmbiosTableHeader; /// Pointer to the SMBIOS Table header
|
|
} H2O_DXE_CP_UPDATE_SMBIOS_RECORD_DATA;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpResetSystemGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_RESET_SYSTEM_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_RESET_TYPE ResetType; /// The type of reset to perform.
|
|
EFI_STATUS ResetStatus; /// The status code for the reset.
|
|
UINT32 ResetDataSize; /// The size, in bytes, of ResetData.
|
|
VOID *ResetData; /// For a ResetType of EfiResetCold, EfiResetWarm, or
|
|
/// EfiResetShutdown the data buffer starts with a Null-terminated
|
|
/// string, optionally followed by additional binary data.
|
|
/// The string is a description that the caller may use to further
|
|
/// indicate the reason for the system reset. ResetData is only
|
|
/// valid if ResetStatus is something other than EFI_SUCCESS
|
|
/// unless the ResetType is EfiResetPlatformSpecific
|
|
/// where a minimum amount of ResetData is always required.
|
|
} H2O_DXE_CP_RESET_SYSTEM_DATA;
|
|
|
|
#define IGNORE_DEVICE 0xFE
|
|
#define END_OF_TABLE 0xFF
|
|
|
|
typedef struct _HOT_PLUG_BRIDGE_INFO {
|
|
UINT8 NodeUID;
|
|
UINT8 DevNum;
|
|
UINT8 FuncNum;
|
|
UINT8 ReservedBusCount;
|
|
UINT16 ReservedIoRange;
|
|
UINT64 ReservedNonPrefetchableMmio;
|
|
UINT64 AlignemntOfReservedNonPrefetchableMmio;
|
|
UINT64 ReservedPrefetchableMmio;
|
|
UINT64 AlignemntOfReservedPrefetchableMmio;
|
|
} HOT_PLUG_BRIDGE_INFO;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpPciHpcGetBridgeInfoGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_PCI_HPC_GET_BRIDGE_INFO_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
HOT_PLUG_BRIDGE_INFO *HotPlugBridgeInfoTable; /// Pointer to start address of H2O_HOT_PLUG_BRIDGE_INFO array.
|
|
} H2O_DXE_CP_PCI_HPC_GET_BRIDGE_INFO_DATA;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpPciHpcGetResourcePaddingGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_PCI_HPC_GET_RESOURCE_PADDING_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
BOOLEAN Above4GbMmioSupported; /// Above 4G MMIO supported or not.
|
|
BOOLEAN ResourcePaddingFound; /// Resoure padding found or not
|
|
UINT64 PciAddress; /// PCI address parameter and the format is EFI PCI Configuration Address
|
|
EFI_DEVICE_PATH_PROTOCOL *PciDevicePath; /// The Device Path to the Hot Plug Controller.
|
|
UINT8 ReservedBusCount; /// Reserved PCI bus number.
|
|
UINT16 ReservedIoRange; /// Reserved IO ranges in bytes.
|
|
UINT64 ReservedNonPrefetchableMmio; /// Reserved non-prefetchable MMIO base address.
|
|
UINT64 AlignmentOfReservedNonPrefetchableMmio; /// Alignment for reserved non-prefetchable MMIO base address.
|
|
UINT64 ReservedPrefetchableMmio; /// Reserved prefetchable MMIO base address.
|
|
UINT64 AlignmentOfReservedPrefetchableMmio; /// Alignment for reserved prefetchable MMIO base address.
|
|
} H2O_DXE_CP_PCI_HPC_GET_RESOURCE_PADDING_DATA;
|
|
|
|
// @Prompt Structure definition for gH2ODxeCpUpdateAcpiEsrtTpmFwVersionGuid checkpoint
|
|
typedef struct _H2O_DXE_CP_UPDATE_ACPI_ESRT_TPM_FW_VERSION_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN UINT32 TpmVersion; /// Enumerated value that specifies the revision of the TPM interface specification that this is TPM complies with.
|
|
IN UINT32 ManufacturerId; /// Unsigned integer that specifies the vendor ID unique to each TPM manufacturer.
|
|
IN UINT64 FwVersion; /// Unsigned integer that specifies a TPM vendor-specific value indicating the version number of the firmware.
|
|
IN OUT UINT32 FwVersionInEsrt; /// Unsigned integer that specifies the firmware version field of ESRT which represents the current version of the firmware resource.
|
|
IN OUT UINT32 LowestSupportedFwVersionInEsrt; /// Unsigned integer that specifies the lowest firmware resource version field of ESRT to which a firmware resource can be rolled back for the given system/device.
|
|
} H2O_DXE_CP_UPDATE_ACPI_ESRT_TPM_FW_VERSION_DATA;
|
|
|
|
#define H2O_DXE_CP_TPM_1_2 0
|
|
#define H2O_DXE_CP_TPM_2_0 1
|
|
|
|
//
|
|
// SMM CP structure definitions
|
|
//
|
|
|
|
// @Prompt Structure definition for gH2OSmmCpIhisiAuthStatusGuid checkpoint
|
|
typedef struct _H2O_SMM_CP_IHISI_AUTH_STATUS_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN OUT UINT32 SupportedSecurityLevels; /// Bitmask that specifies the security level to use when opening the IHISI session.
|
|
} H2O_SMM_CP_IHISI_AUTH_STATUS_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OSmmCpIhisiAuthCheckGuid checkpoint
|
|
typedef struct _H2O_SMM_CP_IHISI_AUTH_CHECK_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN UINT32 SecurityLevel; /// Bitmask that specifies the security level to use when opening the IHISI session.
|
|
IN VOID *AuthData; /// A pointer to a buffer that specifies the credential data associated with the security level.
|
|
IN UINT32 AuthDataSize; /// An unsigned integer that specifies the size of the credential data in AuthData.
|
|
IN OUT BOOLEAN Authorized; /// On entry, a Boolean that specifies the result of the Kernel authorization check.
|
|
/// On exit, this indicates whether the security level should be allowed.
|
|
} H2O_SMM_CP_IHISI_AUTH_CHECK_DATA;
|
|
|
|
//
|
|
// BDS CP structure definitions
|
|
//
|
|
// @Prompt Structure definition for gH2OBdsCpInitGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_INIT_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_INIT_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpEndOfDxeBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_END_OF_DXE_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_END_OF_DXE_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpEndOfDxeAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_END_OF_DXE_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_END_OF_DXE_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPlatformInitGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PLATFORM_INIT_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_PLATFORM_INIT_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpDriverConnectBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_DRIVER_CONNECT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_DRIVER_CONNECT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpDriverConnectAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_DRIVER_CONNECT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_DRIVER_CONNECT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPciEnumBeginGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PCI_ENUM_BEGIN_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_PCI_ENUM_BEGIN_DATA;
|
|
|
|
typedef enum {
|
|
H2OPciBarTypeUnknown = 0,
|
|
H2OPciBarTypeIo16,
|
|
H2OPciBarTypeIo32,
|
|
H2OPciBarTypeMem32,
|
|
H2OPciBarTypePMem32,
|
|
H2OPciBarTypeMem64,
|
|
H2OPciBarTypePMem64,
|
|
H2OPciBarTypeIo,
|
|
H2OPciBarTypeMem,
|
|
H2OPciBarTypeMaxType
|
|
} H2O_PCI_BAR_TYPE;
|
|
|
|
typedef struct _H2O_PCI_BAR {
|
|
UINT64 BaseAddress;
|
|
UINT64 Length;
|
|
UINT64 Alignment;
|
|
H2O_PCI_BAR_TYPE BarType;
|
|
BOOLEAN BarTypeFixed;
|
|
UINT16 Offset;
|
|
} H2O_PCI_BAR;
|
|
|
|
typedef struct _H2O_PCI_IO_DEVICE H2O_PCI_IO_DEVICE;
|
|
|
|
struct _H2O_PCI_IO_DEVICE {
|
|
UINT32 Signature;
|
|
EFI_HANDLE Handle;
|
|
EFI_PCI_IO_PROTOCOL PciIo;
|
|
LIST_ENTRY Link;
|
|
EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL PciDriverOverride;
|
|
EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
|
EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL *PciRootBridgeIo;
|
|
EFI_LOAD_FILE2_PROTOCOL LoadFile2;
|
|
PCI_TYPE00 Pci;
|
|
UINT8 BusNumber;
|
|
UINT8 DeviceNumber;
|
|
UINT8 FunctionNumber;
|
|
H2O_PCI_BAR PciBar[PCI_MAX_BAR];
|
|
H2O_PCI_BAR OptionRomBar;
|
|
H2O_PCI_IO_DEVICE *Parent;
|
|
LIST_ENTRY ChildList;
|
|
BOOLEAN Registered;
|
|
BOOLEAN Allocated;
|
|
UINT64 Attributes;
|
|
UINT64 Supports;
|
|
UINT32 Decodes;
|
|
BOOLEAN EmbeddedRom;
|
|
UINT64 RomSize;
|
|
BOOLEAN AllOpRomProcessed;
|
|
BOOLEAN BusOverride;
|
|
LIST_ENTRY ReservedResourceList;
|
|
LIST_ENTRY OptionRomDriverList;
|
|
EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *ResourcePaddingDescriptors;
|
|
EFI_HPC_PADDING_ATTRIBUTES PaddingAttributes;
|
|
EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *BusNumberRanges;
|
|
BOOLEAN IsPciExp;
|
|
UINT8 PciExpressCapabilityOffset;
|
|
UINT32 AriCapabilityOffset;
|
|
UINT32 SrIovCapabilityOffset;
|
|
UINT32 MrIovCapabilityOffset;
|
|
H2O_PCI_BAR VfPciBar[PCI_MAX_BAR];
|
|
UINT32 SystemPageSize;
|
|
UINT16 InitialVFs;
|
|
UINT16 ReservedBusNum;
|
|
UINT16 BridgeIoAlignment;
|
|
};
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPciEnumUpdateDevInfoGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PCI_ENUM_UPDATE_DEV_INFO_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
H2O_PCI_IO_DEVICE *PciDevice; /// Points to information about the PCI device that was discovered during PCI enumeration.
|
|
} H2O_BDS_CP_PCI_ENUM_UPDATE_DEV_INFO_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPciEnumUpdateDevResourcesGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PCI_ENUM_UPDATE_DEV_RESOURCES_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
H2O_PCI_IO_DEVICE *PciDevice; /// Points to information about the PCI device that was discovered during PCI enumeration.
|
|
} H2O_BDS_CP_PCI_ENUM_UPDATE_DEV_RESOURCES_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPciEnumCompleteBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PCI_ENUM_COMPLETE_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_PCI_ENUM_COMPLETE_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPciEnumCompleteAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PCI_ENUM_COMPLETE_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_PCI_ENUM_COMPLETE_AFTER_DATA;
|
|
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpConInConnectBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CON_IN_CONNECT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_CON_IN_CONNECT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpConInConnectAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CON_IN_CONNECT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_CON_IN_CONNECT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpConOutConnectBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CON_OUT_CONNECT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_CON_OUT_CONNECT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpConOutConnectAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CON_OUT_CONNECT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_CON_OUT_CONNECT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpHotKeyDetectedGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_HOT_KEY_DETECTED_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
CONST CHAR8 *HotKey;
|
|
} H2O_BDS_CP_HOT_KEY_DETECTED_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpDxeSmmReadyToLockBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_DXE_SMM_READY_TO_LOCK_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_DXE_SMM_READY_TO_LOCK_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpDxeSmmReadyToLockAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_DXE_SMM_READY_TO_LOCK_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_DXE_SMM_READY_TO_LOCK_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpDisplayBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_DISPLAY_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
UINT32 Features; /// Bitmask that specifies the kernel's current policy concerning the primary display contents.
|
|
EFI_IMAGE_INPUT *Image; /// On input, this points to the read-only graphics image that the kernel intends to display on
|
|
/// the screen (if Features.H2O_BDS_CP_DISPLAY_LOGO is set) and place into the BGRT table
|
|
/// (if Features.H2O_BDS_CP_DISPLAY_BGRT is set). On output, this points to the graphics image
|
|
/// that the checkpoint handler will display as its final image.
|
|
} H2O_BDS_CP_DISPLAY_BEFORE_DATA;
|
|
|
|
//
|
|
// Bitmask that specifies the kernel's current policy concerning the primary display contents
|
|
//
|
|
#define H2O_BDS_CP_DISPLAY_LOGO 0x0000000000000001
|
|
#define H2O_BDS_CP_DISPLAY_INFO 0x0000000000000002
|
|
#define H2O_BDS_CP_DISPLAY_BGRT 0x0000000000000004
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpLogoDisplayUpdateGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_LOGO_DISPLAY_UPDATE_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN OUT UINT8 Id; /// Enumerated value that specifies the logo type. 0 = boot logo, 1 = CPU badge logo, 2 = chipset badge logo, 208-223 for silicon vendor and 224-255 = OEM.
|
|
IN OUT INT16 PosX; /// Integer that specifies the horizontal position of the logo, relative to the origin specified by OriginX.
|
|
IN OUT UINT8 PosXUnit; /// Integer that specify the unit of PosX. 0 = pixel, 1 = percentage of the total screen width.
|
|
IN OUT INT16 PosY; /// Integer that specifies the vertical position of the logo, relative to the origin specified by OriginY.
|
|
IN OUT UINT8 PosYUnit; /// Integer that specify the unit of PosY. 0 = pixel, 1 = percentage of the total screen height.
|
|
IN OUT UINT8 OriginX; /// Enumerated value that specifies the horizontal origin of the logo. 0 = left, 1 = right, 2 = center.
|
|
IN OUT UINT8 OriginY; /// Enumerated value that specifies the vertical origin of the logo. 0 = top, 1 = bottom, 2 = center.
|
|
IN OUT UINT8 Format; /// Enumerated value that specifies the format of the logo. 0 = BMP, 1 = JPEG, 2 = GIF, 3 = PNG.
|
|
IN OUT INT8 Priority; /// Signed integer (-127 ~ 128) that specifies the relative order of display for logos of the same Id. Higher priority values are displayed first.
|
|
IN OUT UINT8 *ImageData; /// Pointer to logo image data.
|
|
IN OUT UINT32 ImageSize; /// The size, in bytes, of ImageData.
|
|
} H2O_BDS_CP_LOGO_DISPLAY_UPDATE_DATA;
|
|
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_POS_X_UNIT_PIXEL H2O_FLASH_MAP_REGION_LOGO_POS_X_PIXEL
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_POS_X_UNIT_PERCENTAGE H2O_FLASH_MAP_REGION_LOGO_POS_X_PERCENTAGE
|
|
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_POS_Y_UNIT_PIXEL H2O_FLASH_MAP_REGION_LOGO_POS_Y_PIXEL
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_POS_Y_UNIT_PERCENTAGE H2O_FLASH_MAP_REGION_LOGO_POS_Y_PERCENTAGE
|
|
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_ORIGIN_X_LEFT H2O_FLASH_MAP_REGION_LOGO_ORIGIN_X_LEFT
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_ORIGIN_X_RIGHT H2O_FLASH_MAP_REGION_LOGO_ORIGIN_X_RIGHT
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_ORIGIN_X_CENTER H2O_FLASH_MAP_REGION_LOGO_ORIGIN_X_CENTER
|
|
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_ORIGIN_Y_TOP H2O_FLASH_MAP_REGION_LOGO_ORIGIN_Y_TOP
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_ORIGIN_Y_BOTTOM H2O_FLASH_MAP_REGION_LOGO_ORIGIN_Y_BOTTOM
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_ORIGIN_Y_CENTER H2O_FLASH_MAP_REGION_LOGO_ORIGIN_Y_CENTER
|
|
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_FORMAT_BMP H2O_FLASH_MAP_REGION_LOGO_FORMAT_BMP
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_FORMAT_JPEG H2O_FLASH_MAP_REGION_LOGO_FORMAT_JPEG
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_FORMAT_GIF H2O_FLASH_MAP_REGION_LOGO_FORMAT_GIF
|
|
#define H2O_BDS_CP_LOGO_DISPLAY_UPDATE_FORMAT_PNG H2O_FLASH_MAP_REGION_LOGO_FORMAT_PNG
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpDisplayStringBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_DISPLAY_STRING_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_OEM_BADGING_SUPPORT_PROTOCOL *Badging; /// Optional pointer to an instance of the EFI_OEM_BADGING_SUPPORT_PROTOCOL.
|
|
BOOLEAN AfterSelect; /// Boolean that specifies after user presses hotkey or not.
|
|
UINT8 SelectedStringNum; /// Unsigned integer that specifies the string in rows that will be displayed.
|
|
} H2O_BDS_CP_DISPLAY_STRING_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpConnectAllBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CONNECT_ALL_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_CONNECT_ALL_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpNetworkUpdateMacAddrGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_NETWORK_UPDATE_MAC_ADDR_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN EFI_HANDLE NicHandle; /// UNDI card device handle.
|
|
IN OUT EFI_MAC_ADDRESS NicMacAddr; /// Output is MAC address in all zero, INPUT MAC will replace the original MAC address on that device.
|
|
} H2O_BDS_CP_NETWORK_UPDATE_MAC_ADDR_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpNetworkEnableAllEnableNicGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_NETWORK_ENABLE_ALL_ENABLE_NIC_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN EFI_DEVICE_PATH_PROTOCOL *NicDevicePath; /// NIC device path.
|
|
} H2O_BDS_CP_NETWORK_ENABLE_ALL_ENABLE_NIC_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpConnectAllAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CONNECT_ALL_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_CONNECT_ALL_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootDeviceEnumBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_DEVICE_ENUM_BEFORE_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_BOOT_DEVICE_ENUM_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootDeviceEnumCheckBootOptionGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_DEVICE_ENUM_CHECK_BOOT_OPTION_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN CONST H2O_BDS_LOAD_OPTION *BootOption;
|
|
IN OUT BOOLEAN Valid; /// Boolean that specifies whether this boot option is valid or not.
|
|
} H2O_BDS_CP_BOOT_DEVICE_ENUM_CHECK_BOOT_OPTION_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootDeviceRegisterLegacyBootOptionGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_DEVICE_REGISTER_LEGACY_BOOT_OPTION_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN BBS_TABLE *BbsTable; /// Pointer to BBS table of current legacy boot option.
|
|
IN OUT H2O_BDS_LOAD_OPTION *BootOption;
|
|
} H2O_BDS_CP_BOOT_DEVICE_REGISTER_LEGACY_BOOT_OPTION_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootDeviceRegisterEfiBootOptionGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_DEVICE_REGISTER_EFI_BOOT_OPTION_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN OUT H2O_BDS_LOAD_OPTION *BootOption;
|
|
} H2O_BDS_CP_BOOT_DEVICE_REGISTER_EFI_BOOT_OPTION_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootDeviceEnumAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_DEVICE_ENUM_AFTER_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_BOOT_DEVICE_ENUM_AFTER_DATA;
|
|
|
|
#define H2O_BDS_CP_RECOVERY_COMPLETE_DO_NOTHING 0x00
|
|
#define H2O_BDS_CP_RECOVERY_COMPLETE_SHUTDOWN 0x01
|
|
#define H2O_BDS_CP_RECOVERY_COMPLETE_REBOOT 0x02
|
|
#define H2O_BDS_CP_RECOVERY_COMPLETE_WARM_RESET 0x03
|
|
#define H2O_BDS_CP_RECOVERY_COMPLETE_PLATFORM_SPECIFIC_RESET 0x04
|
|
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpRecoveryCompleteGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_RECOVERY_COMPLETE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
UINT8 RequestAction; /// Request action from Flash tool.
|
|
UINT8 *ResetData;
|
|
UINTN ResetDataSize;
|
|
} H2O_BDS_CP_RECOVERY_COMPLETE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpSysPrepGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_SYSPREP_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
LIST_ENTRY *SysPrepList; /// Pointer to a pointer to the first load option in the System Preparation load option list.
|
|
} H2O_BDS_CP_SYSPREP_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpOsRecoveryGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_OS_RECOVERY_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
LIST_ENTRY *OsRecoveryList; /// Pointer to a pointer to the first load option in the OS Recovery load option list.
|
|
} H2O_BDS_CP_OS_RECOVERY_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpPlatformRecoveryGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_PLATFORM_RECOVERY_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
LIST_ENTRY *PlatformRecoveryList; /// Pointer to a pointer to the first load option in the Platform Recovery load option list.
|
|
} H2O_BDS_CP_PLATFORM_RECOVERY_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootDeviceSelectGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_DEVICE_SELECT_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
LIST_ENTRY **BootList; /// Pointer to a pointer to the first load option in the Boot load option list.
|
|
} H2O_BDS_CP_BOOT_DEVICE_SELECT_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpSendFormBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_SEND_FORM_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_GUID *FormSetGuid; /// points to the EFI_GUID which match the Guid field or one of the elements of the ClassId field in
|
|
/// the EFI_IFR_FORM_SET op-code. If FormsetGuid is NULL, then this function will display the form set
|
|
/// class EFI_HII_PLATFORM_SETUP_FORMSET_GUID.
|
|
UINT16 FormId; /// Specifies the identifier of the form
|
|
} H2O_BDS_CP_SEND_FORM_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserCallbackBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_CALLBACK_BEFORE_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN EFI_BROWSER_ACTION Action;
|
|
IN EFI_QUESTION_ID QuestionId;
|
|
IN UINT8 Type;
|
|
IN OUT EFI_IFR_TYPE_VALUE *Value;
|
|
OUT EFI_BROWSER_ACTION_REQUEST ActionRequest;
|
|
IN OUT EFI_STATUS CallbackStatus;
|
|
|
|
IN EFI_GUID FormsetGuid;
|
|
IN EFI_FORM_ID FormId;
|
|
} H2O_BDS_CP_FORM_BROWSER_CALLBACK_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserCallbackAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_CALLBACK_AFTER_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN EFI_BROWSER_ACTION Action;
|
|
IN EFI_QUESTION_ID QuestionId;
|
|
IN UINT8 Type;
|
|
IN OUT EFI_IFR_TYPE_VALUE *Value;
|
|
IN OUT EFI_BROWSER_ACTION_REQUEST ActionRequest;
|
|
IN OUT EFI_STATUS CallbackStatus;
|
|
|
|
IN EFI_GUID FormsetGuid;
|
|
IN EFI_FORM_ID FormId;
|
|
} H2O_BDS_CP_FORM_BROWSER_CALLBACK_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserExtractConfigBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_EXTRACT_CONFIG_BEFORE_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN CONST CHAR16 *Request;
|
|
IN OUT CHAR16 *Progress;
|
|
IN OUT CHAR16 *Results;
|
|
IN OUT EFI_STATUS CallbackStatus;
|
|
} H2O_BDS_CP_FORM_BROWSER_EXTRACT_CONFIG_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserExtractConfigAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_EXTRACT_CONFIG_AFTER_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN CONST CHAR16 *Request;
|
|
IN OUT CHAR16 *Progress;
|
|
IN OUT CHAR16 *Results;
|
|
IN OUT EFI_STATUS CallbackStatus;
|
|
} H2O_BDS_CP_FORM_BROWSER_EXTRACT_CONFIG_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserRouteConfigBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_ROUTE_CONFIG_BEFORE_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN OUT CHAR16 *Configuration;
|
|
IN OUT CHAR16 *Progress;
|
|
IN OUT EFI_STATUS CallbackStatus;
|
|
} H2O_BDS_CP_FORM_BROWSER_ROUTE_CONFIG_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserRouteConfigAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_ROUTE_CONFIG_AFTER_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN CONST CHAR16 *Configuration;
|
|
IN OUT CHAR16 *Progress;
|
|
IN OUT EFI_STATUS CallbackStatus;
|
|
} H2O_BDS_CP_FORM_BROWSER_ROUTE_CONFIG_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserIdleBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_IDLE_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_FORM_BROWSER_IDLE_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserIdleAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_IDLE_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_FORM_BROWSER_IDLE_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserUserInputGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_USER_INPUT_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
UINT32 UserInputType; /// Enumerated value that specifies the user input type.
|
|
EFI_KEY_DATA KeyData; /// Key data is about to be sent to display engine.
|
|
EFI_SIMPLE_POINTER_STATE SimplePtrState; /// Simple pointer data is about to be sent to display engine.
|
|
EFI_ABSOLUTE_POINTER_STATE AbsPtrState; /// Absolute pointer data is about to be sent to display engine.
|
|
} H2O_BDS_CP_FORM_BROWSER_USER_INPUT_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserInputPasswordTooLongGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_INPUT_PASSWORD_TOO_LONG_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_FORM_BROWSER_INPUT_PASSWORD_TOO_LONG_DATA;
|
|
|
|
#define H2O_BDS_CP_FORM_BROWSER_USER_INPUT_KEYPRESS 0x00000001
|
|
#define H2O_BDS_CP_FORM_BROWSER_USER_INPUT_SIMPLE_POINTER 0x00000002
|
|
#define H2O_BDS_CP_FORM_BROWSER_USER_INPUT_ABSOLUTE_POINTER 0x00000003
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserCheckPasswordGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_CHECK_PASSWORD_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN EFI_GUID FormsetGuid; /// FormsetGuid of password question.
|
|
IN EFI_QUESTION_ID QuestionId; /// QuestionId of password question.
|
|
IN CONST CHAR16 *PasswordStr; /// Password string
|
|
IN OUT EFI_STATUS PasswordStrCheckStatus; /// Password string check status
|
|
} H2O_BDS_CP_FORM_BROWSER_CHECK_PASSWORD_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpFormBrowserUpdatePasswordDialogMessageGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_FORM_BROWSER_UPDATE_PASSWORD_DIALOG_MESSAGE_DATA {
|
|
IN UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
IN OUT UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
|
|
IN EFI_STATUS PasswordStrCheckStatus; /// Password string check status
|
|
IN OUT CHAR16 *TitleStr; /// Dialog title string
|
|
IN OUT UINT32 ButtonCount; /// Dialog button count
|
|
IN OUT UINT32 BodyCount; /// Dialog body string count
|
|
IN OUT CHAR16 **BodyStrArray; /// Dialog body string array
|
|
} H2O_BDS_CP_FORM_BROWSER_UPDATE_PASSWORD_DIALOG_MESSAGE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpSendFormAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_SEND_FORM_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_GUID *FormSetGuid; /// points to the EFI_GUID which match the Guid field or one of the elements of the ClassId field in
|
|
/// the EFI_IFR_FORM_SET op-code. If FormsetGuid is NULL, then this function will display the form set
|
|
/// class EFI_HII_PLATFORM_SETUP_FORMSET_GUID.
|
|
UINT16 FormId; /// Specifies the identifier of the form
|
|
UINTN ActionRequest; /// The action recommended by the form.
|
|
EFI_STATUS ReturnStatus; /// The return status from SendForm function.
|
|
} H2O_BDS_CP_SEND_FORM_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpNoBootDeviceGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_NO_BOOT_DEVICE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_NO_BOOT_DEVICE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpReadyToBootBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_READY_TO_BOOT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_READY_TO_BOOT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpUpdateAcpiDescHdrGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_UPDATE_ACPI_DESC_HDR_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_ACPI_SDT_HEADER *AcpiTableHeader; /// Pointer to the ACPI table header.
|
|
} H2O_BDS_CP_UPDATE_ACPI_DESC_HDR_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpUpdateAcpiFacsGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_UPDATE_ACPI_FACS_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_ACPI_1_0_FIRMWARE_ACPI_CONTROL_STRUCTURE *AcpiFacs; /// Pointer to the ACPI FACS table.
|
|
} H2O_BDS_CP_UPDATE_ACPI_FACS_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpUpdateAcpiSdevGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_UPDATE_ACPI_SDEV_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_ACPI_6_2_SDEV_STRUCTURE_HEADER *SdevStructureHeader; /// Pointer to the Secure Device Structures header.
|
|
/// Checkpoint handlers must check the SdevStructureSize to know
|
|
/// the current size of secure device structures.
|
|
/// If the buffer size is not enough to update secure device
|
|
/// structures or the SdevStructureSize is zero, or the
|
|
/// SdevStructureHeader is NULL, checkpoint handlers need to
|
|
/// allocate new buffer of type EfiBootServicesData before
|
|
/// updating the secure device structures. If the original
|
|
/// buffer size is not zero, and original buffer is not NULL,
|
|
/// checkpoint handlers need to free the original buffer by
|
|
/// FreePool, and checkpoint handlers need update new allocate
|
|
/// buffer size to SdevStructureSize and the new buffer pointer
|
|
/// to SdevStructureHeader in the structure.
|
|
UINT32 SdevStructureSize; /// The size of the buffer pointed to by Secure Device Structures, in bytes.
|
|
/// The checkpoint handlers must update this.
|
|
} H2O_BDS_CP_UPDATE_ACPI_SDEV_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpReadyToBootAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_READY_TO_BOOT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_READY_TO_BOOT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpCapsuleUpdateProgressGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CAPSULE_UPDATE_PROGRESS_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_GUID FwClass; /// The firmware class field contains a GUID that identifies a firmware component that can be updated.
|
|
UINTN Completion; /// A value between 1 and 100 indicating the current completion progress of the firmware update.
|
|
} H2O_BDS_CP_CAPSULE_UPDATE_PROGRESS_DATA;
|
|
|
|
|
|
typedef struct _H2O_MEMORY_TYPE_INFORMATION {
|
|
IN UINT32 Type; ///< EFI memory type defined in UEFI specification.
|
|
IN UINT32 NumberOfPages; ///< The pages of this type memory defined in memory information table.
|
|
IN UINT32 UsedNumberOfPages; ///< The pages of this type memory really used by system.
|
|
IN OUT UINT32 UpdatedNumberOfPages; ///< The pages of this type memory will be updated.
|
|
} H2O_MEMORY_TYPE_INFORMATION;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpUpdateMemoryTypeInfoGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_UPDATE_MEMORY_TYPE_INFO_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN UINT32 MemoryTypeInfoCount; /// Unsigned integer that specifies the number of entries in the memory type information table.
|
|
IN OUT H2O_MEMORY_TYPE_INFORMATION *MemoryTypeInfoTable; /// Pointer to the memory type information table.
|
|
} H2O_BDS_CP_UPDATE_MEMORY_TYPE_INFO_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpExitBootServicesBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_EXIT_BOOT_SERVICES_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_EXIT_BOOT_SERVICES_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_BOOT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpCapsuleCheckUpdateCapabilityGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CAPSULE_CHECK_UPDATE_CAPABILITY_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
VOID *Capsule; /// Pointer to capsule data.
|
|
UINTN CapsuleSize; /// Unsigned integer that specifies the size of capsule data, in bytes.
|
|
UINT32 ErrorBits; /// Bitmask that specifies which capsule check is failed.
|
|
} H2O_BDS_CP_CAPSULE_CHECK_UPDATE_CAPABILITY_DATA;
|
|
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_UNSUCCESSFUL 0x00000001
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_INSUFFICIENT_RESOURCES 0x00000002
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_INCORRECT_VERSION 0x00000004
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_INVALID_IMAGE_FORMAT 0x00000008
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_AUTHENTICATION 0x00000010
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_AC_NOT_CONNECTED 0x00000020
|
|
#define H2O_BDS_CP_CAPSULE_CHECK_ERROR_INSUFFICIENT_BATTERY 0x00000040
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_BOOT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpLegacyPrepareToBootBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_LEGACY_PREPARE_TO_BOOT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_LEGACY_PREPARE_TO_BOOT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpLegacyPrepareToBootAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_LEGACY_PREPARE_TO_BOOT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_LEGACY_PREPARE_TO_BOOT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpLegacyBootBeforeGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_LEGACY_BOOT_BEFORE_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_LEGACY_BOOT_BEFORE_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpLegacyBootAfterGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_LEGACY_BOOT_AFTER_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_LEGACY_BOOT_AFTER_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootSuccessGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_SUCCESS_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
} H2O_BDS_CP_BOOT_SUCCESS_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpBootFailedGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_BOOT_FAILED_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
EFI_STATUS ReturnStatus; /// Status returned from failed boot.
|
|
CHAR16 *ExitData; /// Pointer to exit data returned from the failed boot.
|
|
UINTN ExitDataSize; /// Pointer to size of exit data returned from failed boot.
|
|
} H2O_BDS_CP_BOOT_FAILED_DATA;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpEnterIncorrectSetupPasswordGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_ENTER_INCORRECT_SETUP_PASSWORD_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN OUT UINTN PasswordRetryCount; /// Password retry counts.
|
|
IN EFI_STATUS CheckPasswordStatus; /// Status return from check password.
|
|
} H2O_BDS_CP_ENTER_INCORRECT_SETUP_PASSWORD_DATA;
|
|
|
|
typedef enum {
|
|
PolicyColdReset = EfiResetCold, /// 0
|
|
PolicyWarmReset = EfiResetWarm, /// 1
|
|
PolicyShutdown = EfiResetShutdown, /// 2
|
|
PolicyPlatformSpecificReset = EfiResetPlatformSpecific, /// 3
|
|
PolicyNoAction,
|
|
PolicyMaximum,
|
|
} CHECK_SETUP_PASSWORD_FAIL_POLICY;
|
|
|
|
// @Prompt Structure definition for gH2OBdsCpCheckSetupPasswordFailGuid checkpoint
|
|
typedef struct _H2O_BDS_CP_CHECK_SETUP_PASSWORD_FAIL_DATA {
|
|
UINT32 Size; /// Unsigned integer that specifies the size of this structure, in bytes.
|
|
UINT32 Status; /// Enumerated value that specifies the kernel behavior.
|
|
IN OUT CHECK_SETUP_PASSWORD_FAIL_POLICY FailPolicy; /// Fail policy.
|
|
IN OUT UINT64 FreezeTime; /// The unit for freeze time is second.
|
|
IN OUT UINTN PasswordRetryCount; /// Password retry counts.
|
|
} H2O_BDS_CP_CHECK_SETUP_PASSWORD_FAIL_DATA;
|
|
|
|
//
|
|
// BASE CP GUID definitions
|
|
//
|
|
extern EFI_GUID gH2OBaseCpPostCodeGuid;
|
|
extern EFI_GUID gH2OBaseCpCpuExceptionGuid;
|
|
extern EFI_GUID gH2OBaseCpSecurityEventReportGuid;
|
|
extern EFI_GUID gH2OBaseCpVerifyFvGuid;
|
|
extern EFI_GUID gH2OBaseCpHddPasswordGetTableGuid;
|
|
extern EFI_GUID gH2OBaseCpHddPasswordSetTableGuid;
|
|
|
|
//
|
|
// PEI CP GUID definitions
|
|
//
|
|
extern EFI_GUID gH2OPeiCpForceVariableDefaultsGuid;
|
|
extern EFI_GUID gH2OPeiCpInitChipsetPolicyGuid;
|
|
extern EFI_GUID gH2OPeiCpInitPlatformStage1Guid;
|
|
extern EFI_GUID gH2OPeiCpSetBootModeBeforeGuid;
|
|
extern EFI_GUID gH2OPeiCpInitPlatformStage2Guid;
|
|
extern EFI_GUID gH2OPeiCpSecurityEventDetectGuid;
|
|
extern EFI_GUID gH2OPeiCpPciEnumUpdateDevResourcesGuid;
|
|
extern EFI_GUID gH2OPeiCpCrisisRecoveryPublishFvGuid;
|
|
extern EFI_GUID gH2OPeiCpCrisisRecoveryGetProtectTableGuid;
|
|
extern EFI_GUID gH2OPeiCpCrisisRecoveryFlashGuid;
|
|
extern EFI_GUID gH2OPeiCpDxeFvCorruptedGuid;
|
|
extern EFI_GUID gH2OPeiCpEndOfPeiBeforeGuid;
|
|
extern EFI_GUID gH2OPeiCpEndOfPeiAfterGuid;
|
|
|
|
//
|
|
// DXE CP GUID definitions
|
|
//
|
|
extern EFI_GUID gH2ODxeCpWriteVariableDefaultsGuid;
|
|
extern EFI_GUID gH2ODxeCpUpdateAcpiDescHdrGuid;
|
|
extern EFI_GUID gH2ODxeCpPciCheckSysOptionRomGuid;
|
|
extern EFI_GUID gH2ODxeCpUpdateSmbiosRecord;
|
|
extern EFI_GUID gH2ODxeCpResetSystemGuid;
|
|
extern EFI_GUID gH2ODxeCpPciHpcGetBridgeInfoGuid;
|
|
extern EFI_GUID gH2ODxeCpPciHpcGetResourcePaddingGuid;
|
|
extern EFI_GUID gH2ODxeCpUpdateAcpiEsrtTpmFwVersionGuid;
|
|
|
|
//
|
|
// SMM CP GUID definitions
|
|
//
|
|
extern EFI_GUID gH2OSmmCpIhisiAuthStatusGuid;
|
|
extern EFI_GUID gH2OSmmCpIhisiAuthCheckGuid;
|
|
|
|
|
|
//
|
|
// BDS CP GUID definitions
|
|
//
|
|
extern EFI_GUID gH2OBdsCpInitGuid;
|
|
extern EFI_GUID gH2OBdsCpEndOfDxeBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpEndOfDxeAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpPlatformInitGuid;
|
|
extern EFI_GUID gH2OBdsCpDriverConnectBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpDriverConnectAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpPciEnumBeginGuid;
|
|
extern EFI_GUID gH2OBdsCpPciEnumUpdateDevInfoGuid;
|
|
extern EFI_GUID gH2OBdsCpPciEnumUpdateDevResourcesGuid;
|
|
extern EFI_GUID gH2OBdsCpPciEnumCompleteBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpPciEnumCompleteAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpConInConnectBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpConInConnectAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpConOutConnectBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpConOutConnectAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpHotKeyDetectedGuid;
|
|
extern EFI_GUID gH2OBdsCpDxeSmmReadyToLockBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpDxeSmmReadyToLockAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpDisplayBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpLogoDisplayUpdateGuid;
|
|
extern EFI_GUID gH2OBdsCpDisplayStringBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpConnectAllBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpNetworkUpdateMacAddrGuid;
|
|
extern EFI_GUID gH2OBdsCpNetworkEnableAllEnableNicGuid;
|
|
extern EFI_GUID gH2OBdsCpConnectAllAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpBootDeviceEnumBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpBootDeviceRegisterLegacyBootOptionGuid;
|
|
extern EFI_GUID gH2OBdsCpBootDeviceEnumCheckBootOptionGuid;
|
|
extern EFI_GUID gH2OBdsCpBootDeviceRegisterEfiBootOptionGuid;
|
|
extern EFI_GUID gH2OBdsCpBootDeviceEnumAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpRecoveryCompleteGuid;
|
|
extern EFI_GUID gH2OBdsCpSysPrepGuid;
|
|
extern EFI_GUID gH2OBdsCpOsRecoveryGuid;
|
|
extern EFI_GUID gH2OBdsCpPlatformRecoveryGuid;
|
|
extern EFI_GUID gH2OBdsCpBootDeviceSelectGuid;
|
|
extern EFI_GUID gH2OBdsCpSendFormBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserCallbackBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserCallbackAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserExtractConfigBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserExtractConfigAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserRouteConfigBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserRouteConfigAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserIdleBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserIdleAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserUserInputGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserInputPasswordTooLongGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserCheckPasswordGuid;
|
|
extern EFI_GUID gH2OBdsCpFormBrowserUpdatePasswordDialogMessageGuid;
|
|
extern EFI_GUID gH2OBdsCpSendFormAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpNoBootDeviceGuid;
|
|
extern EFI_GUID gH2OBdsCpReadyToBootBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpUpdateAcpiDescHdrGuid;
|
|
extern EFI_GUID gH2OBdsCpUpdateAcpiFacsGuid;
|
|
extern EFI_GUID gH2OBdsCpUpdateAcpiSdevGuid;
|
|
extern EFI_GUID gH2OBdsCpReadyToBootAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpCapsuleUpdateProgressGuid;
|
|
extern EFI_GUID gH2OBdsCpUpdateMemoryTypeInfoGuid;
|
|
extern EFI_GUID gH2OBdsCpBootBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpCapsuleCheckUpdateCapabilityGuid;
|
|
extern EFI_GUID gH2OBdsCpBootAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpExitBootServicesBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpLegacyPrepareToBootBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpLegacyPrepareToBootAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpLegacyBootBeforeGuid;
|
|
extern EFI_GUID gH2OBdsCpLegacyBootAfterGuid;
|
|
extern EFI_GUID gH2OBdsCpBootSuccessGuid;
|
|
extern EFI_GUID gH2OBdsCpBootFailedGuid;
|
|
extern EFI_GUID gH2OBdsCpEnterIncorrectSetupPasswordGuid;
|
|
extern EFI_GUID gH2OBdsCpCheckSetupPasswordFailGuid;
|
|
|
|
#endif
|