summaryrefslogtreecommitdiff
path: root/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c
diff options
context:
space:
mode:
authorJiewen Yao <jiewen.yao@intel.com>2018-02-14 21:24:02 +0800
committerJiewen Yao <jiewen.yao@intel.com>2018-03-02 08:36:11 +0800
commit78b62d1a0c3fc425107b85d8c97404a80609f752 (patch)
tree722b35a6ab0927e21db963c9bbc63aeb568b2b73 /Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c
parentfb3107567492443967d7d03eb50f78ff94cc7600 (diff)
downloadedk2-platforms-78b62d1a0c3fc425107b85d8c97404a80609f752.tar.xz
Enable MinPlatformPkg to boot with EDK2 platform. Validated on an open server platform.
1) MinPlatform.dec a) Add PcdFspWrapperBootMode to control different behavior in FSP wrapper mode and EDKII mode (by PlatformInitPei) b) Add gPeiBaseMemoryTestPpiGuid and gPeiPlatformMemorySizePpiGuid – they are used for EDKII boot mode. c) Rename MADT related PCD for server (PcdLocalApicAddress/PcdLocalApicMmioSize/PcdIoApicAddress/PcdIoApicMmioSize/PcdIoApicId) d) Add MADT related PCD for multi IO APIC for server (PcdPcIoApicCount/PcdPcIoApicIdBase/PcdPcIoApicAddressBase/PcdPcIoApicInterruptBase) e) Add HPET related PCD (PcdHpetTimerBlockId) f) Add FADT related PCD (PcdFadtPreferredPmProfile/PcdFadtIaPcBootArch/PcdFadtFlags) g) Add PCD for DXE Silicon module flash address (PcdFlashFvFspUBase/PcdFlashFvFspUSize/PcdFlashFvFspUOffset) h) Make Flash Address PCD to be patchable, so that it can be updated in binary FV. 2) Include a) DSC/FDF: Do not always include the module, which might be from silicon code, such as SEC/CpuDxe/SmmCpu/PciHostBridge. b) DSC/FDF: UiApp.inf – fix a bug that UIAPP does not have boot manager. c) DSC/FDF: DP.inf – sync to latest performance dump tool in ShellPkg. 3) Update AcpiPlatform for server platform a) Construct MADT from scratch. b) Construct MCFG from scratch. 4) CompressLib a) Add CompressLib class and instance so that MRC data can be compressed. 5) PlatformInitPei a) Produce BaseMemoryTestPpi and PlatformMemorySizePpi in EDKII boot mode. b) Install FV in FSPM/FSPS/FSPU in EDKII boot mode. c) Move SecurityFv/AdvancedFv installation from SEC to PlatformInitPei. d) Remove BuildFvHob for flash region – it is a bug. e) Mark above 4GiB MMIO to be uncatchable. 6) PciSegmentInfoLib a) Handle the case that the lib is linked by a DXE module only. 7) PlatformSecLib a) Move SecurityFv/AdvancedFv installation from SEC to PlatformInitPei. 8) SpiFvbService a) Do not use fixed PCD, so that the address can be patchable. 9) TestPoint a) Enhance the logic to check if a memory is in save state area or not. (Support PcdCpuHotPlugSupport) 10) Add python tool a) AmlGenOffset.py – generate ACPI patch table. b) ParseVar.py – parse the VarBin generated by FCE tool and output PCD value. c) PatchFv/PatchBfv.py – patch the BFV address in ResetVector.bin d) PatchFv/PatchBinFv.py – patch patchable PCD in a given FV according to build report. e) PatchFv/RebaseBinFv.py – rebase a given FV to a new address. f) PatchFv/SyncBinFvInf.py – generate INF for a binary FV. Cc: Michael A Kubacki <michael.a.kubacki@intel.com> Cc: Amy Chan <amy.chan@intel.com> Cc: Chasel Chiu <chasel.chiu@intel.com> Cc: Rangasai V Chaganty <rangasai.v.chaganty@intel.com> Cc: Isaac W Oram <isaac.w.oram@intel.com> Cc: Brett Wang <brett.wang@intel.com> Cc: Daocheng Bu <daocheng.bu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Diffstat (limited to 'Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c')
-rw-r--r--Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c78
1 files changed, 0 insertions, 78 deletions
diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c
deleted file mode 100644
index 86f491a0bb..0000000000
--- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Mcfg/Mcfg.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/** @file
- This file contains a structure definition for the ACPI Memory Mapped Configuration
- Address Space table (MCFG). Any changes to the number of entries in the table require
- updating the structure count in Mcfg.h and then adding the structure to the
- MCFG defined in this file. The table layout is defined in Mcfg.h and the
- table contents are defined in the MemoryMappedConfigurationSpaceAccessTable.h.
-
-Copyright (c) 2017, 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 that accompanies this distribution.
-The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php.
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-**/
-
-//
-// Statements that include other files
-//
-
-#include "Mcfg.h"
-
-//
-// Multiple APIC Description Table
-//
-
-EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_DESCRIPTION_TABLE Mcfg = {
- {
- EFI_ACPI_3_0_PCI_EXPRESS_MEMORY_MAPPED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE,
- sizeof (EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_DESCRIPTION_TABLE),
- EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_REVISION,
-
- //
- // Checksum will be updated at runtime
- //
- 0x00,
-
- //
- // It is expected that these values will be programmed at runtime
- //
- { ' ', ' ', ' ', ' ', ' ', ' ' },
-
- 0,
- EFI_ACPI_OEM_MCFG_REVISION,
- 0,
- 0
- },
-
- //
- // Reserved
- //
- 0x0000000000000000,
-
- //
- // MCFG specific fields
- //
- {
- {
- //
- // Sample Base Address Structure
- //
- //0x0000000000000000, // BaseAddress
- //0x0000, // PciSegmentGroupNumber
- //0x00, // StartBusNumber
- //0x00, // EndBusNumber
- //0x00000000, // Reserved
-
- FixedPcdGet64 (PcdPciExpressBaseAddress), // BaseAddress
- 0x0000, // PciSegmentGroupNumber
- 0x00, // StartBusNumber
- ((FixedPcdGet32 (PcdPciExpressRegionLength) / 0x100000) - 1), // EndBusNumber
- 0x00000000 // Reserved
- }
- }
-};
-