Create PCDs in MdeModulePkg for ACPI table OEM_ID/OEM_TABLE_ID/OEM_REVISION/CREATOR_ID/CREATOR_REVISION customization.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14672 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
ACPI Table Protocol Driver
|
||||
|
||||
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -106,15 +106,6 @@ typedef struct {
|
||||
//
|
||||
#define EFI_ACPI_MAX_NUM_TABLES 20
|
||||
|
||||
//
|
||||
// ACPI table information used to initialize tables.
|
||||
//
|
||||
#define EFI_ACPI_OEM_ID "INTEL "
|
||||
#define EFI_ACPI_OEM_TABLE_ID SIGNATURE_64('E', 'D', 'K', '2', ' ', ' ', ' ', ' ')
|
||||
#define EFI_ACPI_OEM_REVISION 0x00000002
|
||||
#define EFI_ACPI_CREATOR_ID 0x20202020
|
||||
#define EFI_ACPI_CREATOR_REVISION 0x01000013
|
||||
|
||||
//
|
||||
// Protocol private structure definition
|
||||
//
|
||||
|
@@ -1,7 +1,7 @@
|
||||
## @file
|
||||
# ACPI Table Protocol Driver
|
||||
#
|
||||
# Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||
# 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
|
||||
@@ -60,6 +60,13 @@
|
||||
[FeaturePcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol
|
||||
|
||||
[Pcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision
|
||||
|
||||
[Protocols]
|
||||
gEfiAcpiTableProtocolGuid # PROTOCOL ALWAYS_PRODUCED
|
||||
gEfiAcpiSdtProtocolGuid # PROTOCOL ALWAYS_PRODUCED
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
ACPI Table Protocol Implementation
|
||||
|
||||
Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -1795,13 +1795,13 @@ AcpiTableAcpiTableConstructor (
|
||||
//
|
||||
CurrentData = EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE;
|
||||
CopyMem (&AcpiTableInstance->Rsdp1->Signature, &CurrentData, sizeof (UINT64));
|
||||
CopyMem (AcpiTableInstance->Rsdp1->OemId, EFI_ACPI_OEM_ID, 6);
|
||||
CopyMem (AcpiTableInstance->Rsdp1->OemId, PcdGetPtr (PcdAcpiDefaultOemId), sizeof (AcpiTableInstance->Rsdp1->OemId));
|
||||
AcpiTableInstance->Rsdp1->Reserved = EFI_ACPI_RESERVED_BYTE;
|
||||
AcpiTableInstance->Rsdp1->RsdtAddress = (UINT32) (UINTN) AcpiTableInstance->Rsdt1;
|
||||
|
||||
CurrentData = EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE;
|
||||
CopyMem (&AcpiTableInstance->Rsdp3->Signature, &CurrentData, sizeof (UINT64));
|
||||
CopyMem (AcpiTableInstance->Rsdp3->OemId, EFI_ACPI_OEM_ID, 6);
|
||||
CopyMem (AcpiTableInstance->Rsdp3->OemId, PcdGetPtr (PcdAcpiDefaultOemId), sizeof (AcpiTableInstance->Rsdp3->OemId));
|
||||
AcpiTableInstance->Rsdp3->Revision = EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_POINTER_REVISION;
|
||||
AcpiTableInstance->Rsdp3->RsdtAddress = (UINT32) (UINTN) AcpiTableInstance->Rsdt3;
|
||||
AcpiTableInstance->Rsdp3->Length = sizeof (EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_POINTER);
|
||||
@@ -1819,12 +1819,12 @@ AcpiTableAcpiTableConstructor (
|
||||
AcpiTableInstance->Rsdt1->Signature = EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE;
|
||||
AcpiTableInstance->Rsdt1->Length = sizeof (EFI_ACPI_DESCRIPTION_HEADER);
|
||||
AcpiTableInstance->Rsdt1->Revision = EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION;
|
||||
CopyMem (AcpiTableInstance->Rsdt1->OemId, EFI_ACPI_OEM_ID, 6);
|
||||
CurrentData = EFI_ACPI_OEM_TABLE_ID;
|
||||
CopyMem (AcpiTableInstance->Rsdt1->OemId, PcdGetPtr (PcdAcpiDefaultOemId), sizeof (AcpiTableInstance->Rsdt1->OemId));
|
||||
CurrentData = PcdGet64 (PcdAcpiDefaultOemTableId);
|
||||
CopyMem (&AcpiTableInstance->Rsdt1->OemTableId, &CurrentData, sizeof (UINT64));
|
||||
AcpiTableInstance->Rsdt1->OemRevision = EFI_ACPI_OEM_REVISION;
|
||||
AcpiTableInstance->Rsdt1->CreatorId = EFI_ACPI_CREATOR_ID;
|
||||
AcpiTableInstance->Rsdt1->CreatorRevision = EFI_ACPI_CREATOR_REVISION;
|
||||
AcpiTableInstance->Rsdt1->OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);
|
||||
AcpiTableInstance->Rsdt1->CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);
|
||||
AcpiTableInstance->Rsdt1->CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);
|
||||
//
|
||||
// We always reserve first one for FADT
|
||||
//
|
||||
@@ -1834,12 +1834,12 @@ AcpiTableAcpiTableConstructor (
|
||||
AcpiTableInstance->Rsdt3->Signature = EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE;
|
||||
AcpiTableInstance->Rsdt3->Length = sizeof (EFI_ACPI_DESCRIPTION_HEADER);
|
||||
AcpiTableInstance->Rsdt3->Revision = EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION;
|
||||
CopyMem (AcpiTableInstance->Rsdt3->OemId, EFI_ACPI_OEM_ID, 6);
|
||||
CurrentData = EFI_ACPI_OEM_TABLE_ID;
|
||||
CopyMem (AcpiTableInstance->Rsdt3->OemId, PcdGetPtr (PcdAcpiDefaultOemId), sizeof (AcpiTableInstance->Rsdt3->OemId));
|
||||
CurrentData = PcdGet64 (PcdAcpiDefaultOemTableId);
|
||||
CopyMem (&AcpiTableInstance->Rsdt3->OemTableId, &CurrentData, sizeof (UINT64));
|
||||
AcpiTableInstance->Rsdt3->OemRevision = EFI_ACPI_OEM_REVISION;
|
||||
AcpiTableInstance->Rsdt3->CreatorId = EFI_ACPI_CREATOR_ID;
|
||||
AcpiTableInstance->Rsdt3->CreatorRevision = EFI_ACPI_CREATOR_REVISION;
|
||||
AcpiTableInstance->Rsdt3->OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);
|
||||
AcpiTableInstance->Rsdt3->CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);
|
||||
AcpiTableInstance->Rsdt3->CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);
|
||||
//
|
||||
// We always reserve first one for FADT
|
||||
//
|
||||
@@ -1852,12 +1852,12 @@ AcpiTableAcpiTableConstructor (
|
||||
AcpiTableInstance->Xsdt->Signature = EFI_ACPI_3_0_EXTENDED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE;
|
||||
AcpiTableInstance->Xsdt->Length = sizeof (EFI_ACPI_DESCRIPTION_HEADER);
|
||||
AcpiTableInstance->Xsdt->Revision = EFI_ACPI_3_0_EXTENDED_SYSTEM_DESCRIPTION_TABLE_REVISION;
|
||||
CopyMem (AcpiTableInstance->Xsdt->OemId, EFI_ACPI_OEM_ID, 6);
|
||||
CurrentData = EFI_ACPI_OEM_TABLE_ID;
|
||||
CopyMem (AcpiTableInstance->Xsdt->OemId, PcdGetPtr (PcdAcpiDefaultOemId), sizeof (AcpiTableInstance->Xsdt->OemId));
|
||||
CurrentData = PcdGet64 (PcdAcpiDefaultOemTableId);
|
||||
CopyMem (&AcpiTableInstance->Xsdt->OemTableId, &CurrentData, sizeof (UINT64));
|
||||
AcpiTableInstance->Xsdt->OemRevision = EFI_ACPI_OEM_REVISION;
|
||||
AcpiTableInstance->Xsdt->CreatorId = EFI_ACPI_CREATOR_ID;
|
||||
AcpiTableInstance->Xsdt->CreatorRevision = EFI_ACPI_CREATOR_REVISION;
|
||||
AcpiTableInstance->Xsdt->OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);
|
||||
AcpiTableInstance->Xsdt->CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);
|
||||
AcpiTableInstance->Xsdt->CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);
|
||||
//
|
||||
// We always reserve first one for FADT
|
||||
//
|
||||
|
@@ -27,15 +27,7 @@
|
||||
#include <Library/MemoryAllocationLib.h>
|
||||
#include <Library/UefiBootServicesTableLib.h>
|
||||
#include <Library/DebugLib.h>
|
||||
|
||||
//
|
||||
// ACPI table information used to initialize tables.
|
||||
//
|
||||
#define EFI_ACPI_OEM_ID "INTEL"
|
||||
#define EFI_ACPI_OEM_TABLE_ID 0x2020204F4E414954ULL // "TIANO "
|
||||
#define EFI_ACPI_OEM_REVISION 0x00000001
|
||||
#define EFI_ACPI_CREATOR_ID 0x5446534D // TBD "MSFT"
|
||||
#define EFI_ACPI_CREATOR_REVISION 0x01000013 // TBD
|
||||
#include <Library/PcdLib.h>
|
||||
|
||||
//
|
||||
// Module globals.
|
||||
@@ -81,13 +73,13 @@ EFI_ACPI_5_0_BOOT_GRAPHICS_RESOURCE_TABLE mBootGraphicsResourceTableTemplate = {
|
||||
EFI_ACPI_5_0_BOOT_GRAPHICS_RESOURCE_TABLE_REVISION, // Revision
|
||||
0x00, // Checksum will be updated at runtime
|
||||
//
|
||||
// It is expected that these values will be updated at runtime.
|
||||
// It is expected that these values will be updated at EntryPoint.
|
||||
//
|
||||
EFI_ACPI_OEM_ID, // OEMID is a 6 bytes long field
|
||||
EFI_ACPI_OEM_TABLE_ID, // OEM table identification(8 bytes long)
|
||||
EFI_ACPI_OEM_REVISION, // OEM revision number
|
||||
EFI_ACPI_CREATOR_ID, // ASL compiler vendor ID
|
||||
EFI_ACPI_CREATOR_REVISION, // ASL compiler revision number
|
||||
{0x00}, // OEM ID is a 6 bytes long field
|
||||
0x00, // OEM Table ID(8 bytes long)
|
||||
0x00, // OEM Revision
|
||||
0x00, // Creator ID
|
||||
0x00, // Creator Revision
|
||||
},
|
||||
EFI_ACPI_5_0_BGRT_VERSION, // Version
|
||||
EFI_ACPI_5_0_BGRT_STATUS_VALID, // Status
|
||||
@@ -467,6 +459,18 @@ BootGraphicsDxeEntryPoint (
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
UINT64 OemTableId;
|
||||
|
||||
CopyMem (
|
||||
mBootGraphicsResourceTableTemplate.Header.OemId,
|
||||
PcdGetPtr (PcdAcpiDefaultOemId),
|
||||
sizeof (mBootGraphicsResourceTableTemplate.Header.OemId)
|
||||
);
|
||||
OemTableId = PcdGet64 (PcdAcpiDefaultOemTableId);
|
||||
CopyMem (&mBootGraphicsResourceTableTemplate.Header.OemTableId, &OemTableId, sizeof (UINT64));
|
||||
mBootGraphicsResourceTableTemplate.Header.OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);
|
||||
mBootGraphicsResourceTableTemplate.Header.CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);
|
||||
mBootGraphicsResourceTableTemplate.Header.CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);
|
||||
|
||||
//
|
||||
// Install Boot Logo protocol.
|
||||
|
@@ -1,7 +1,7 @@
|
||||
## @file
|
||||
# This module install ACPI Boot Graphics Resource Table (BGRT).
|
||||
#
|
||||
# Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||
# 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
|
||||
@@ -41,10 +41,18 @@
|
||||
UefiLib
|
||||
UefiBootServicesTableLib
|
||||
DebugLib
|
||||
PcdLib
|
||||
|
||||
[Protocols]
|
||||
gEfiAcpiTableProtocolGuid ## SOMETIMES_CONSUMES
|
||||
gEfiBootLogoProtocolGuid ## SOMETIMES_CONSUMES
|
||||
|
||||
[Pcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision
|
||||
|
||||
[Guids]
|
||||
gEfiEventReadyToBootGuid ## CONSUMES
|
||||
|
@@ -41,14 +41,6 @@
|
||||
#include <Library/LockBoxLib.h>
|
||||
#include <Library/UefiLib.h>
|
||||
|
||||
//
|
||||
// ACPI table information used to initialize tables.
|
||||
//
|
||||
#define EFI_ACPI_OEM_ID "INTEL"
|
||||
#define EFI_ACPI_OEM_TABLE_ID 0x2020204F4E414954ULL // "TIANO "
|
||||
#define EFI_ACPI_OEM_REVISION 0x00000001
|
||||
#define EFI_ACPI_CREATOR_ID 0x5446534D // TBD "MSFT"
|
||||
#define EFI_ACPI_CREATOR_REVISION 0x01000013 // TBD
|
||||
#define EXTENSION_RECORD_SIZE 0x10000
|
||||
#define SMM_BOOT_RECORD_COMM_SIZE OFFSET_OF (EFI_SMM_COMMUNICATE_HEADER, Data) + sizeof(SMM_BOOT_RECORD_COMMUNICATE)
|
||||
|
||||
@@ -73,13 +65,13 @@ FIRMWARE_PERFORMANCE_TABLE mFirmwarePerformanceTableTemplate = {
|
||||
EFI_ACPI_5_0_FIRMWARE_PERFORMANCE_DATA_TABLE_REVISION, // Revision
|
||||
0x00, // Checksum will be updated at runtime
|
||||
//
|
||||
// It is expected that these values will be updated at runtime.
|
||||
// It is expected that these values will be updated at EntryPoint.
|
||||
//
|
||||
EFI_ACPI_OEM_ID, // OEMID is a 6 bytes long field
|
||||
EFI_ACPI_OEM_TABLE_ID, // OEM table identification(8 bytes long)
|
||||
EFI_ACPI_OEM_REVISION, // OEM revision number
|
||||
EFI_ACPI_CREATOR_ID, // ASL compiler vendor ID
|
||||
EFI_ACPI_CREATOR_REVISION, // ASL compiler revision number
|
||||
{0x00}, // OEM ID is a 6 bytes long field
|
||||
0x00, // OEM Table ID(8 bytes long)
|
||||
0x00, // OEM Revision
|
||||
0x00, // Creator ID
|
||||
0x00, // Creator Revision
|
||||
},
|
||||
//
|
||||
// Firmware Basic Boot Performance Table Pointer Record.
|
||||
@@ -788,6 +780,18 @@ FirmwarePerformanceDxeEntryPoint (
|
||||
EFI_HOB_GUID_TYPE *GuidHob;
|
||||
FIRMWARE_SEC_PERFORMANCE *Performance;
|
||||
VOID *Registration;
|
||||
UINT64 OemTableId;
|
||||
|
||||
CopyMem (
|
||||
mFirmwarePerformanceTableTemplate.Header.OemId,
|
||||
PcdGetPtr (PcdAcpiDefaultOemId),
|
||||
sizeof (mFirmwarePerformanceTableTemplate.Header.OemId)
|
||||
);
|
||||
OemTableId = PcdGet64 (PcdAcpiDefaultOemTableId);
|
||||
CopyMem (&mFirmwarePerformanceTableTemplate.Header.OemTableId, &OemTableId, sizeof (UINT64));
|
||||
mFirmwarePerformanceTableTemplate.Header.OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);
|
||||
mFirmwarePerformanceTableTemplate.Header.CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);
|
||||
mFirmwarePerformanceTableTemplate.Header.CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);
|
||||
|
||||
//
|
||||
// Get Report Status Code Handler Protocol.
|
||||
|
@@ -75,6 +75,11 @@
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderLoad
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderStart
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdExtFpdtBootRecordPadSize
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision
|
||||
|
||||
[FeaturePcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwarePerformanceDataTableS3Support
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Implementation for iSCSI Boot Firmware Table publication.
|
||||
|
||||
Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2004 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -37,12 +37,6 @@ IScsiInitIbfTableHeader (
|
||||
Header->Length = IBFT_HEAP_OFFSET;
|
||||
Header->Revision = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_REVISION;
|
||||
Header->Checksum = 0;
|
||||
|
||||
Header->OemId[0] = 'I';
|
||||
Header->OemId[1] = 'N';
|
||||
Header->OemId[2] = 'T';
|
||||
Header->OemId[3] = 'E';
|
||||
Header->OemId[4] = 'L';
|
||||
|
||||
CopyMem (Header->OemId, OemId, sizeof (Header->OemId));
|
||||
CopyMem (&Header->OemTableId, OemTableId, sizeof (UINT64));
|
||||
|
Reference in New Issue
Block a user