From 1c0cc375aa881b330e7b94bc8f8fd179cc6d1bfd Mon Sep 17 00:00:00 2001 From: lgao4 Date: Tue, 8 May 2012 03:09:54 +0000 Subject: Enhance ACPI FPDT DXE and SMM driver to accept the extension boot records. Signed-off-by: Liming Gao Reviewed-by: Eric Jin Reviewed-by: Star Zeng git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13292 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Include/Guid/FirmwarePerformance.h | 26 ++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'MdeModulePkg/Include/Guid') diff --git a/MdeModulePkg/Include/Guid/FirmwarePerformance.h b/MdeModulePkg/Include/Guid/FirmwarePerformance.h index 411a03a9d8..89e225d505 100644 --- a/MdeModulePkg/Include/Guid/FirmwarePerformance.h +++ b/MdeModulePkg/Include/Guid/FirmwarePerformance.h @@ -1,7 +1,7 @@ /** @file ACPI Firmware Performance Data Table (FPDT) implementation specific definitions. - Copyright (c) 2011, Intel Corporation. All rights reserved.
+ Copyright (c) 2011 - 2012, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -35,6 +35,14 @@ /// GUID - gEfiFirmwarePerformanceGuid /// Data - FIRMWARE_SEC_PERFORMANCE (defined in ) /// +/// SMI: +/// GUID - gEfiFirmwarePerformanceGuid +/// Data - SMM_BOOT_RECORD_COMMUNICATE +/// +/// StatusCodeData: +/// Type - gEfiFirmwarePerformanceGuid +/// Data - One or more boot record +/// #define EFI_FIRMWARE_PERFORMANCE_GUID \ { \ 0xc095791a, 0x3001, 0x47b2, {0x80, 0xc9, 0xea, 0xc7, 0x31, 0x9f, 0x2f, 0xa4 } \ @@ -72,6 +80,9 @@ typedef struct { typedef struct { EFI_ACPI_5_0_FPDT_PERFORMANCE_TABLE_HEADER Header; ///< Common ACPI table header. EFI_ACPI_5_0_FPDT_FIRMWARE_BASIC_BOOT_RECORD BasicBoot; ///< Basic Boot Resume performance record. + // + // one or more boot performance records. + // } BOOT_PERFORMANCE_TABLE; /// @@ -93,6 +104,19 @@ typedef struct { #pragma pack() +// +// Log BOOT RECORD from SMM driver on boot time. +// +#define SMM_FPDT_FUNCTION_GET_BOOT_RECORD_SIZE 1 +#define SMM_FPDT_FUNCTION_GET_BOOT_RECORD_DATA 2 + +typedef struct { + UINTN Function; + EFI_STATUS ReturnStatus; + UINTN BootRecordSize; + VOID *BootRecordData; +} SMM_BOOT_RECORD_COMMUNICATE; + extern EFI_GUID gEfiFirmwarePerformanceGuid; #endif -- cgit v1.2.3