123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- /** @file
- Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>
- SPDX-License-Identifier: BSD-2-Clause-Patent
- **/
- #ifndef _DXE_ME_POLICY_UPDATE_H_
- #define _DXE_ME_POLICY_UPDATE_H_
- #include <PiDxe.h>
- #include <Library/UefiBootServicesTableLib.h>
- #include <Library/UefiRuntimeServicesTableLib.h>
- #include <Library/DebugLib.h>
- #include <Guid/EventGroup.h>
- #include <IndustryStandard/Acpi10.h>
- #include <Library/BaseMemoryLib.h>
- #include <Protocol/MePolicy.h>
- #include <Library/HobLib.h>
- #include <ConfigBlock/MePeiConfig.h>
- #define PLATFORM_BOOT_TABLE_PTR_TYPE 0x1001
- #define PLATFORM_BOOT_RECORD_TYPE 0x1022
- //
- // Timeout values based on HPET
- //
- #define HECI_MSG_DELAY 2000000 ///< show warning msg and stay for 2 seconds.
- #define CONVERSION_MULTIPLIER 1000000 ///< msec to nanosec multiplier
- #define PLATFORM_BOOT_TABLE_SIGNATURE SIGNATURE_32 ('P', 'B', 'P', 'T')
- //
- // Platform Boot Performance Table Record
- //
- typedef struct {
- UINT16 Type;
- UINT8 Length;
- UINT8 Revision;
- UINT32 Reserved;
- UINT64 TimestampDelta1;
- UINT64 TimestampDelta2;
- UINT64 TimestampDelta3;
- } PLATFORM_BOOT_TABLE_RECORD;
- //
- // Platform boot Performance Table
- //
- typedef struct {
- EFI_ACPI_COMMON_HEADER Header;
- PLATFORM_BOOT_TABLE_RECORD PlatformBoot;
- } PLATFORM_BOOT_PERFORMANCE_TABLE;
- /**
- Update ME Policy while MePlatformProtocol is installed.
- @param[in] MePolicyInstance Instance of ME Policy Protocol
- **/
- VOID
- UpdateMePolicyFromMeSetup (
- IN ME_POLICY_PROTOCOL *MePolicyInstance
- );
- /**
- Update ME Policy if Setup variable exists.
- @param[in, out] MePolicyInstance Instance of ME Policy Protocol
- **/
- VOID
- UpdateMePolicyFromSetup (
- IN OUT ME_POLICY_PROTOCOL *MePolicyInstance
- );
- /**
- Functions performs HECI exchange with FW to update MePolicy settings.
- @param[in] Event A pointer to the Event that triggered the callback.
- @param[in] Context A pointer to private data registered with the callback function.
- **/
- VOID
- EFIAPI
- UpdateMeSetupCallback (
- IN EFI_EVENT Event,
- IN VOID *Context
- );
- #endif
|