diff options
author | Guo Mang <mang.guo@intel.com> | 2017-03-02 10:04:41 +0800 |
---|---|---|
committer | Guo Mang <mang.guo@intel.com> | 2017-05-09 13:03:10 +0800 |
commit | d4949b48ee6164cbc24aef50cb7ef48e5d1135d1 (patch) | |
tree | d91ee7acc4f0aa3b9fab513d4595eb8b4ba91e8f /Platform/BroxtonPlatformPkg | |
parent | 3eac100ece691d7725632e7b17ccfd9f9ca83cd9 (diff) | |
download | edk2-platforms-d4949b48ee6164cbc24aef50cb7ef48e5d1135d1.tar.xz |
Enable fastboot
1. Unload UNDI if fastboot enable. 2. Optimized the FV decompressing process
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Guo Mang <mang.guo@intel.com>
Diffstat (limited to 'Platform/BroxtonPlatformPkg')
6 files changed, 30 insertions, 20 deletions
diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c index 6e8d4ab24c..0853f8fbb9 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c @@ -48,15 +48,7 @@ static EFI_PEI_PPI_DESCRIPTOR mBoardPostMemInitStartPpi[] = { };
static EFI_PEI_PPI_DESCRIPTOR mPpiList[] = {
- {
- //
- // This PPI is hard coded to be installed as SPI boot (vs. eMMC boot)
- // to trigger GetFvNotifyCallback()
- //
- EFI_PEI_PPI_DESCRIPTOR_PPI,
- &gCseSpiSelectPpiGuid,
- NULL
- },
+
{
EFI_PEI_PPI_DESCRIPTOR_PPI,
&gEfiPeiMasterBootModePpiGuid,
diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/FvCallback.c b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/FvCallback.c index 6dcdc75dfc..91ac6f5e1e 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/FvCallback.c +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/FvCallback.c @@ -1,7 +1,7 @@ /** @file
Locate and install Firmware Volume Hob's Once there is main memory.
- Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2015 - 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
@@ -277,6 +277,7 @@ ParseObbPayload ( EFI_GUID *FvName;
FSP_INFO_HEADER *FspHeader;
UINT32 FspSImageBase;
+ VOID *Memory;
DEBUG ((EFI_D_INFO, "Parsing and checking OBB Payload\n"));
@@ -370,13 +371,20 @@ ParseObbPayload ( PlatformInfo->FvMain3Base = (UINTN) FvHeader;
PlatformInfo->FvMain3Length = (UINT32) (FvHeader->FvLength);
} else if (!CompareGuid(FvName, &gFspSFirmwareFileSystemFvGuid)) {
- PeiServicesInstallFvInfoPpi (
- NULL,
- FvHeader,
- (UINT32) (FvHeader->FvLength),
- NULL,
- NULL
- );
+ Memory = AllocatePages (EFI_SIZE_TO_PAGES ((UINT32) (FvHeader->FvLength)));
+ if(Memory !=NULL) {
+ CopyMem (Memory, FvHeader, (UINT32) (FvHeader->FvLength));
+ PeiServicesInstallFvInfoPpi (
+ NULL,
+ (VOID *) Memory,
+ (UINT32) (FvHeader->FvLength),
+ NULL,
+ NULL
+ );
+ } else {
+ ASSERT (FALSE);
+ }
+
}//if/else S3
FvHeader = (EFI_FIRMWARE_VOLUME_HEADER *) ((UINTN) FvHeader + (UINTN) FvHeader->FvLength);
diff --git a/Platform/BroxtonPlatformPkg/PlatformDsc/Components.dsc b/Platform/BroxtonPlatformPkg/PlatformDsc/Components.dsc index d3be2da432..d39ec6d4bf 100644 --- a/Platform/BroxtonPlatformPkg/PlatformDsc/Components.dsc +++ b/Platform/BroxtonPlatformPkg/PlatformDsc/Components.dsc @@ -213,6 +213,16 @@ $(PLATFORM_PACKAGE_COMMON)/SampleCode/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf
!endif
+
+ PerformancePkg/Dp_App/Dp.inf {
+ <LibraryClasses>
+ !if $(PERFORMANCE_ENABLE) == TRUE
+ PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
+ TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/DxeTscTimerLib.inf
+ !endif
+ }
+
+
!if $(TPM12_ENABLE) == TRUE
SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
diff --git a/Platform/BroxtonPlatformPkg/PlatformPkg.fdf b/Platform/BroxtonPlatformPkg/PlatformPkg.fdf index 24764073be..c117245b23 100644 --- a/Platform/BroxtonPlatformPkg/PlatformPkg.fdf +++ b/Platform/BroxtonPlatformPkg/PlatformPkg.fdf @@ -670,7 +670,7 @@ APRIORI DXE { # LAN/Network
#
!if $(NETWORK_ENABLE) == TRUE
- FILE DRIVER = 22DE1691-D65D-456a-993E-A253DD1F308C {
+ FILE DRIVER = 2E561D56-4863-44F7-960D-EF2D7F2D35BB {
SECTION PE32 = BroxtonPlatformPkg/Common/Binaries/UNDI/I210PcieUndiDxe/E7320X3.EFI
SECTION UI = "UNDI"
}
diff --git a/Platform/BroxtonPlatformPkg/PlatformPkgIA32.dsc b/Platform/BroxtonPlatformPkg/PlatformPkgIA32.dsc index 083e32b51e..6109a76c74 100644 --- a/Platform/BroxtonPlatformPkg/PlatformPkgIA32.dsc +++ b/Platform/BroxtonPlatformPkg/PlatformPkgIA32.dsc @@ -99,7 +99,7 @@ !else
PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
!endif
- TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/DxeTscTimerLib.inf
+ TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/PeiTscTimerLib.inf
!endif
[LibraryClasses.IA32.DXE_DRIVER]
diff --git a/Platform/BroxtonPlatformPkg/PlatformPkgX64.dsc b/Platform/BroxtonPlatformPkg/PlatformPkgX64.dsc index 19b8f349e7..cdd91b3549 100644 --- a/Platform/BroxtonPlatformPkg/PlatformPkgX64.dsc +++ b/Platform/BroxtonPlatformPkg/PlatformPkgX64.dsc @@ -99,7 +99,7 @@ !else
PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
!endif
- TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/DxeTscTimerLib.inf
+ TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/PeiTscTimerLib.inf
!endif
[LibraryClasses.IA32.DXE_DRIVER]
|