mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-07 19:45:07 +02:00
UefiCpuPkg: Remove PcdFrameworkCompatibilitySupport usage
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1464 Currently Framework compatibility support is not needed and PcdFrameworkCompatibilitySupport will be removed from edk2. So remove the usage of this PCD firstly. Cc: Eric Dong <eric.dong@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
This commit is contained in:
parent
868f139b08
commit
3e2ec1891f
@ -743,8 +743,6 @@ S3ResumeExecuteBootScript (
|
||||
PEI_SMM_ACCESS_PPI *SmmAccess;
|
||||
UINTN Index;
|
||||
VOID *GuidHob;
|
||||
IA32_DESCRIPTOR *IdtDescriptor;
|
||||
VOID *IdtBuffer;
|
||||
PEI_S3_RESUME_STATE *PeiS3ResumeState;
|
||||
BOOLEAN InterruptStatus;
|
||||
|
||||
@ -804,34 +802,6 @@ S3ResumeExecuteBootScript (
|
||||
AsmWriteCr3 ((UINTN)AcpiS3Context->S3NvsPageTableAddress);
|
||||
}
|
||||
|
||||
if (FeaturePcdGet (PcdFrameworkCompatibilitySupport)) {
|
||||
//
|
||||
// On some platform, such as ECP, a dispatch node in boot script table may execute a 32-bit PEIM which may need PeiServices
|
||||
// pointer. So PeiServices need preserve in (IDTBase- sizeof (UINTN)).
|
||||
//
|
||||
IdtDescriptor = (IA32_DESCRIPTOR *) (UINTN) (AcpiS3Context->IdtrProfile);
|
||||
//
|
||||
// Make sure the newly allocated IDT align with 16-bytes
|
||||
//
|
||||
IdtBuffer = AllocatePages (EFI_SIZE_TO_PAGES((IdtDescriptor->Limit + 1) + 16));
|
||||
if (IdtBuffer == NULL) {
|
||||
REPORT_STATUS_CODE (
|
||||
EFI_ERROR_CODE | EFI_ERROR_MAJOR,
|
||||
(EFI_SOFTWARE_PEI_MODULE | EFI_SW_PEI_EC_S3_RESUME_FAILED)
|
||||
);
|
||||
ASSERT (FALSE);
|
||||
}
|
||||
//
|
||||
// Additional 16 bytes allocated to save IA32 IDT descriptor and Pei Service Table Pointer
|
||||
// IA32 IDT descriptor will be used to setup IA32 IDT table for 32-bit Framework Boot Script code
|
||||
//
|
||||
ZeroMem (IdtBuffer, 16);
|
||||
AsmReadIdtr ((IA32_DESCRIPTOR *)IdtBuffer);
|
||||
CopyMem ((VOID*)((UINT8*)IdtBuffer + 16),(VOID*)(IdtDescriptor->Base), (IdtDescriptor->Limit + 1));
|
||||
IdtDescriptor->Base = (UINTN)((UINT8*)IdtBuffer + 16);
|
||||
*(UINTN*)(IdtDescriptor->Base - sizeof(UINTN)) = (UINTN)GetPeiServicesTablePointer ();
|
||||
}
|
||||
|
||||
InterruptStatus = SaveAndDisableInterrupts ();
|
||||
//
|
||||
// Need to make sure the GDT is loaded with values that support long mode and real mode.
|
||||
|
@ -5,7 +5,7 @@
|
||||
# This module will excute the boot script saved during last boot and after that,
|
||||
# control is passed to OS waking up handler.
|
||||
#
|
||||
# Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2010 - 2019, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
@ -89,7 +89,6 @@
|
||||
|
||||
[FeaturePcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES
|
||||
|
||||
[Pcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES
|
||||
|
Loading…
x
Reference in New Issue
Block a user