From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id B033D819E3 for ; Fri, 6 Jan 2017 01:09:47 -0800 (PST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga101.fm.intel.com with ESMTP; 06 Jan 2017 01:09:47 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,323,1477983600"; d="scan'208";a="1108767431" Received: from zwei4-mobl.ccr.corp.intel.com ([10.239.197.150]) by fmsmga002.fm.intel.com with ESMTP; 06 Jan 2017 01:09:44 -0800 From: zwei4 To: edk2-devel@lists.01.org Date: Fri, 6 Jan 2017 17:09:42 +0800 Message-Id: <20170106090942.21676-1-david.wei@intel.com> X-Mailer: git-send-email 2.11.0.windows.1 Subject: [Patch][edk2-platforms/devel-MinnowBoard3] Remove platform policies X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jan 2017 09:09:47 -0000 Remove platform policies which are not used. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: zwei4 --- .../PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf | 3 +- .../PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c | 20 +- .../Library/PeiPolicyInitLib/PeiPolicyInit.h | 3 +- .../Library/PeiPolicyInitLib/PeiPolicyInitLib.inf | 6 +- .../Library/PeiPolicyInitLib/PeiSaPolicyInit.c | 57 --- .../Library/PeiPolicyInitLib/PeiSaPolicyInit.h | 58 --- .../PeiPolicyUpdateLib/PeiPolicyUpdateLib.inf | 3 +- .../Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.c | 254 ------------ .../Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.h | 43 -- .../PlatformPostMemPei/PeiSaPolicyUpdate.h | 3 +- .../PlatformPostMemPei/PlatformInit.c | 124 +----- .../PlatformPostMemPei/PlatformInit.h | 4 +- .../PlatformPostMemPei/PlatformPostMemPei.inf | 4 +- .../PlatformPreMemPei/PeiSaPolicyUpdate.h | 3 +- .../PlatformPreMemPei/PlatformInit.h | 4 +- .../PlatformPreMemPei/PlatformInitPreMem.c | 108 +----- .../PlatformPreMemPei/PlatformInitPreMem.h | 8 +- Silicon/BroxtonSoC/BroxtonSiPkg/BroxtonSiPkg.dec | 4 +- .../NorthCluster/Include/Library/PeiSaPolicyLib.h | 34 +- .../NorthCluster/Include/Ppi/GraphicsConfig.h | 57 --- .../Include/Ppi/HybridGraphicsConfig.h | 52 --- .../NorthCluster/Include/Ppi/IpuConfig.h | 35 -- .../NorthCluster/Include/Ppi/SaPolicy.h | 80 ---- .../NorthCluster/Include/Ppi/SaPreMemConfig.h | 37 -- .../Library/PeiSaPolicyLib/PeiSaPolicyLib.c | 432 --------------------- .../Library/PeiSaPolicyLib/PeiSaPolicyLib.inf | 47 --- .../Library/PeiSaPolicyLib/PeiSaPolicyLibrary.h | 70 ---- Silicon/BroxtonSoC/BroxtonSiPkg/SiPkgPeiLib.dsc | 6 +- 28 files changed, 18 insertions(+), 1541 deletions(-) delete mode 100644 Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.c delete mode 100644 Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.h delete mode 100644 Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.c delete mode 100644 Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.h delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/GraphicsConfig.h delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/HybridGraphicsConfig.h delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/IpuConfig.h delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPolicy.h delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPreMemConfig.h delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.c delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.inf delete mode 100644 Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLibrary.h diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf index 856d17332..fab0d00ae 100644 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf +++ b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf @@ -1,7 +1,7 @@ ## @file # Library functions for Fsp Policy Initialization Library. # -# Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2017, 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 @@ -92,7 +92,6 @@ gSiPolicyPpiGuid ## CONSUMES gScPolicyPpiGuid gSiCpuPolicyPpiGuid ## CONSUMES - gSiSaPolicyPpiGuid ## CONSUMES gSaMiscConfigGuid gEfiPeiReadOnlyVariable2PpiGuid ## CONSUMES gMemoryConfigGuid diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c index 04167c59c..1dc31a08c 100644 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c +++ b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c @@ -1,7 +1,7 @@ /** @file Implementation of Fsp SA Policy Initialization. - Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2015 - 2017, 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 @@ -15,7 +15,6 @@ #include #include -#include #include #include #include @@ -188,8 +187,6 @@ PeiFspSaPolicyInit ( ) { EFI_STATUS Status; - SA_MISC_CONFIG *MiscConfig; - SI_SA_POLICY_PPI *SiSaPolicyPpi; VOID *Buffer; UINT32 Size; EFI_GUID PeiLogoGuid = gPeiLogoGuid; @@ -199,20 +196,7 @@ PeiFspSaPolicyInit ( UINTN VariableSize = 0; EFI_BOOT_MODE BootMode; - // - // Locate SiSaPolicyPpi - // - SiSaPolicyPpi = NULL; - MiscConfig = NULL; - Status = PeiServicesLocatePpi( - &gSiSaPolicyPpiGuid, - 0, - NULL, - (VOID **) &SiSaPolicyPpi - ); - if (EFI_ERROR (Status) == FALSE) { - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gSaMiscConfigGuid, (VOID *) &MiscConfig); - } + Status = PeiServicesGetBootMode (&BootMode); diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInit.h b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInit.h index 1e2300237..37661ece0 100644 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInit.h +++ b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInit.h @@ -1,7 +1,7 @@ /** @file Header file for the PolicyInitPei PEIM. - Copyright (c) 2013 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2013 - 2017, 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 @@ -19,7 +19,6 @@ #include #include #include -#include "PeiSaPolicyInit.h" #include "PeiSiPolicyInit.h" #include "PeiCpuPolicyInit.h" diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInitLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInitLib.inf index db70e74c8..319684445 100644 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInitLib.inf +++ b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiPolicyInitLib.inf @@ -1,7 +1,7 @@ ## @file # Component description file for PeiPolicyInit library. # -# Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2014 - 2017, 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 @@ -28,7 +28,6 @@ HobLib PeiServicesLib PeiPolicyUpdateLib - PeiSaPolicyLib ConfigBlockLib SteppingLib CpuPolicyLib @@ -44,12 +43,9 @@ PeiPolicyInit.h PeiCpuPolicyInit.c PeiCpuPolicyInit.h - PeiSaPolicyInit.c - PeiSaPolicyInit.h PeiSiPolicyInit.c PeiSiPolicyInit.h [Ppis] - gSiSaPolicyPpiGuid gScPcieDeviceTablePpiGuid diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.c b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.c deleted file mode 100644 index 5f0300ec5..000000000 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.c +++ /dev/null @@ -1,57 +0,0 @@ -/** @file - This file is SampleCode for Intel SA PEI Policy initialization. - - Copyright (c) 1999 - 2016, 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 - 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. - -**/ - -#include "PeiSaPolicyInit.h" - -/** - This PEIM performs SA PEI Policy initialzation. - - @param[in] FirmwareConfiguration It uses to skip specific policy init that depends - on the 'FirmwareConfiguration' varaible. - - @retval EFI_SUCCESS The PPI is installed and initialized. - @retval EFI_OUT_OF_RESOURCES Do not have enough resources to initialize the PPI. - @retval EFI ERRORS The PPI is not successfully installed. - -**/ -EFI_STATUS -PeiSaPolicyInit ( - IN UINT8 FirmwareConfiguration - ) -{ - EFI_STATUS Status; - SI_SA_POLICY_PPI *SiSaPolicyPpi; - - // - // Call SaCreatePolicyDefaults to initialize platform policy structure - // and get all Intel default policy settings. - // - Status = CreateConfigBlocks (&SiSaPolicyPpi); - DEBUG ((DEBUG_INFO, "SiSaPolicyPpi->TableHeader.NumberOfBlocks = 0x%x\n ", SiSaPolicyPpi->TableHeader.NumberOfBlocks)); - ASSERT_EFI_ERROR (Status); - - UpdatePeiSaPolicy (SiSaPolicyPpi); - - // - // Install SiSaPolicyPpi. - // While installed, RC assumes the Policy is ready and finalized. So please - // update and override any setting before calling this function. - // - Status = SiSaInstallPolicyPpi (SiSaPolicyPpi); - ASSERT_EFI_ERROR (Status); - - return Status; -} - diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.h b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.h deleted file mode 100644 index d1ce77b79..000000000 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyInitLib/PeiSaPolicyInit.h +++ /dev/null @@ -1,58 +0,0 @@ -/** @file - Header file for the SaPolicyInitPei PEIM. - - Copyright (c) 1999 - 2016, 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 - 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. - -**/ - -#ifndef _SA_POLICY_INIT_PEI_H_ -#define _SA_POLICY_INIT_PEI_H_ - -#include -#include -#include -#include -#include - -// -// Functions -// -/** - This PEIM performs SA PEI Policy initialzation \n - - Introduction \n - System Agent PEIM behavior can be controlled by platform policy without modifying reference code directly. - Platform policy PPI is initialized with default settings in this funciton. - Some MRC functions will be initialized in this PEIM to provide the capability for customization. - This policy PPI has to be initialized prior to System Agent initialization PEIM and MRC execution. - - - @pre - - PEI_READ_ONLY_VARIABLE_PPI - - - @result - SI_SA_POLICY_PPI will be installed successfully and ready for System Agent reference code use. - - - Porting Recommendations \n - Policy should be initialized basing on platform design or user selection (like BIOS Setup Menu) - - @param[in] FirmwareConfiguration It uses to skip specific policy init that depends - on the 'FirmwareConfiguration' varaible. - - @retval EFI_SUCCESS The PPI is installed and initialized. - @retval EFI_OUT_OF_RESOURCES Do not have enough resources to initialize the PPI. - @retval EFI ERRORS The PPI is not successfully installed. - -**/ -EFI_STATUS -PeiSaPolicyInit ( - IN UINT8 FirmwareConfiguration - ); -#endif - diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiPolicyUpdateLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiPolicyUpdateLib.inf index 1f61f948c..df8293d91 100644 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiPolicyUpdateLib.inf +++ b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiPolicyUpdateLib.inf @@ -1,7 +1,7 @@ ## @file # Module Infomation file for PEI PeiPolicyUpdateLib Library. # -# Copyright (c) 2011 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2011 - 2017, 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 @@ -50,7 +50,6 @@ gEfiPeiReadOnlyVariable2PpiGuid ## CONSUMES gScPolicyPpiGuid gSaMiscConfigGuid - gGraphicsConfigGuid gIpuConfigGuid gScSpiPpiGuid diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.c b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.c deleted file mode 100644 index 4787f1fe6..000000000 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.c +++ /dev/null @@ -1,254 +0,0 @@ -/** @file - Do Platform Stage System Agent initialization. - - Copyright (c) 2013 - 2016, 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 - 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. - -**/ - -#include -#include -#include -#include -#include -#include -#include -#include - - -/** - UpdatePeiSaPolicy performs SA PEI Policy initialzation - - @param[in, out] SiSaPolicyPpi SI_SA_POLICY PPI - - @retval EFI_SUCCESS The policy is installed and initialized. - -**/ -EFI_STATUS -UpdatePeiSaPolicy ( - IN OUT SI_SA_POLICY_PPI *SiSaPolicyPpi - ) -{ - EFI_STATUS Status; - EFI_PEI_READ_ONLY_VARIABLE2_PPI *VariableServices; - SYSTEM_CONFIGURATION SystemConfiguration; - UINTN VariableSize; - SA_MISC_CONFIG *MiscConfig = NULL; - GRAPHICS_CONFIG *GtConfig = NULL; - IPU_CONFIG *IpuPolicy = NULL; - VOID* Buffer; - UINT32 Size; - EFI_GUID PeiLogoGuid = { 0x7BB28B99, 0x61BB, 0x11D5, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }; - EFI_GUID TianmaVbtGuid = { 0xE08CA6D5, 0x8D02, 0x43ae, 0xAB, 0xB1, 0x95, 0x2C, 0xC7, 0x87, 0xC9, 0x33 }; - EFI_GUID TrulyFabBVbtTypeCGuid = { 0xDBADD769, 0xE86A, 0x4819, 0x81, 0x20, 0xE9, 0x91, 0x79, 0x2C, 0x0B, 0xC1 }; - EFI_GUID TrulyFabBVbtGuid = { 0x1a03cf12, 0xf54b, 0x4227, 0xa7, 0xa4, 0x6c, 0x97, 0x11, 0x3f, 0xac, 0x71 }; - EFI_GUID TrulyFabBCMVbtGuid = { 0x1fc29068, 0x17cf, 0x4613, 0x98, 0xd, 0x17, 0x2f, 0x97, 0xe7, 0xfa, 0xe5 }; - EFI_GUID TrulyFabBCMTypeCVbtGuid = { 0x2246d69f, 0xd9a6, 0x4f80, 0x90, 0x38, 0x78, 0xc5, 0xcc, 0x74, 0x1d, 0xdf }; - EFI_GUID TrulyFabBPr1TypeCVbtGuid = { 0x190c66ce, 0x475e, 0x4c5e, 0xb7, 0xd0, 0x2f, 0x67, 0x72, 0xba, 0x71, 0x70 }; - EFI_GUID TrulyFabBPr1CMTypeCVbtGuid = { 0xc1b31ace, 0x65db, 0x46d6, 0x9c, 0x7e, 0xa8, 0x2c, 0xce, 0x78, 0x45, 0x38 }; - VBT_INFO VbtInfo; - SC_POLICY_PPI *ScPolicyPpi; - SC_VTD_CONFIG *VtdConfig; - BXT_SERIES SocSeries; - BXT_STEPPING SocStepping; - - DEBUG ((DEBUG_INFO, "Entering Get Config Block function call from UpdatePeiSaPolicy\n")); - - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gSaMiscConfigGuid , (VOID *) &MiscConfig); - ASSERT_EFI_ERROR (Status); - - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gGraphicsConfigGuid, (VOID *) &GtConfig); - ASSERT_EFI_ERROR (Status); - - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gIpuConfigGuid, (VOID *) &IpuPolicy); - ASSERT_EFI_ERROR (Status); - - // - // Locate system configuration variable - // - Status = PeiServicesLocatePpi ( - &gEfiPeiReadOnlyVariable2PpiGuid, // GUID - 0, // INSTANCE - NULL, // EFI_PEI_PPI_DESCRIPTOR - (VOID **) &VariableServices // PPI - ); - ASSERT_EFI_ERROR ( Status); - - // - // Locate SC Policy - // - Status = PeiServicesLocatePpi ( - &gScPolicyPpiGuid, - 0, - NULL, - (VOID **) &ScPolicyPpi - ); - ASSERT_EFI_ERROR (Status); - - Status = GetConfigBlock ((VOID *) ScPolicyPpi, &gVtdConfigGuid, (VOID *) &VtdConfig); - ASSERT_EFI_ERROR (Status); - - // - // Get System configuration variables - // - VariableSize = sizeof (SYSTEM_CONFIGURATION); - Status = VariableServices->GetVariable ( - VariableServices, - PLATFORM_SETUP_VARIABLE_NAME, - &gEfiSetupVariableGuid, - NULL, - &VariableSize, - &SystemConfiguration - ); - if (!EFI_ERROR (Status)) { - // - // Get the Platform Configuration from SetupData - // - GtConfig->GttMmAdr = GTTMM_BASE_ADDRESS; - GtConfig->GmAdr = GMADR_BASE_ADDRESS; - GtConfig->PeiGraphicsPeimInit = SystemConfiguration.PeiGraphicsPeimInit; - GtConfig->PmSupport = SystemConfiguration.PmSupport; - GtConfig->EnableRenderStandby = SystemConfiguration.EnableRenderStandby; - GtConfig->CdClock = SystemConfiguration.CdClock; - GtConfig->PavpEnable = SystemConfiguration.PavpEnable; - - GtConfig->ForceWake = 0; - GtConfig->PavpLock = 1; - GtConfig->GraphicsFreqModify = 0; - GtConfig->GraphicsFreqReq = 0; - GtConfig->GraphicsVideoFreq = 0; - GtConfig->PmLock = 1; - GtConfig->DopClockGating = 1; - GtConfig->UnsolicitedAttackOverride = 0; - GtConfig->WOPCMSupport = 1; - GtConfig->WOPCMSize = 0; - GtConfig->PowerGating = 0; - GtConfig->UnitLevelClockGating = 1; - - MiscConfig->FastBoot = 1; - MiscConfig->DynSR = 1; - - IpuPolicy->SaIpuEnable = SystemConfiguration.IpuEn; - - SocSeries = GetBxtSeries (); - SocStepping = BxtStepping (); - if ((SocSeries == BxtP && SocStepping <= BxtPB2) || (SocSeries != BxtP && SocStepping < BxtC0)) { - if (IpuPolicy->SaIpuEnble == 1) { - VtdConfig->VtdEnable = 0; - } - } - - IpuPolicy->IpuAcpiMode = SystemConfiguration.IpuAcpiMode; - IpuPolicy->IpuMmAdr = IPUMM_BASE_ADDRESS; - } - - PeiGetSectionFromFv (PeiLogoGuid, &Buffer, &Size); - if (Buffer == NULL) { - DEBUG ((DEBUG_ERROR, "Could not locate Pei Logo")); - } - GtConfig->LogoPtr = Buffer; - GtConfig->LogoSize = Size; - DEBUG ((DEBUG_INFO, "LogoPtr from PeiGetSectionFromFv is 0x%x\n", Buffer)); - DEBUG ((DEBUG_INFO, "LogoSize from PeiGetSectionFromFv is 0x%x\n", Size)); - - // - // VBT selection may depend on SystemConfiguration->PanelSel value - // - PeiGetSectionFromFv (TianmaVbtGuid, &Buffer, &Size); - - if (Buffer == NULL) { - DEBUG ((DEBUG_ERROR, "Could not locate VBT")); - } - GtConfig->GraphicsConfigPtr = Buffer; - - // - // Build the VBT data into HOB for DXE GOP - // - VbtInfo.VbtAddress = (EFI_PHYSICAL_ADDRESS) Buffer; - VbtInfo.VbtSize = Size; - DEBUG ((DEBUG_INFO, "VbtInfo VbtAddress is 0x%x\n", Buffer)); - DEBUG ((DEBUG_INFO, "VbtInfo VbtSize is 0x%x\n", Size)); - - BuildGuidDataHob ( - &gVbtInfoGuid, - &VbtInfo, - sizeof (VbtInfo) - ); - - return EFI_SUCCESS; -} - - -/** - PeiGetSectionFromFv finds the file in FV and gets file Address and Size - - @param[in] NameGuid File GUID - @param[out] Address Pointer to the File Address - @param[out] Size Pointer to File Size - - @retval EFI_SUCCESS Successfull in reading the section from FV - -**/ -EFI_STATUS -EFIAPI -PeiGetSectionFromFv ( - IN CONST EFI_GUID NameGuid, - OUT VOID **Address, - OUT UINT32 *Size - ) -{ - EFI_STATUS Status; - EFI_PEI_FIRMWARE_VOLUME_PPI *FvPpi; - EFI_FV_FILE_INFO FvFileInfo; - PEI_CORE_INSTANCE *PrivateData; - UINTN CurrentFv; - PEI_CORE_FV_HANDLE *CoreFvHandle; - EFI_PEI_FILE_HANDLE VbtFileHandle; - EFI_GUID *VbtGuid; - EFI_COMMON_SECTION_HEADER *Section; - CONST EFI_PEI_SERVICES **PeiServices; - - PeiServices = GetPeiServicesTablePointer (); - - PrivateData = PEI_CORE_INSTANCE_FROM_PS_THIS (PeiServices); - - Status = PeiServicesLocatePpi ( - &gEfiFirmwareFileSystem2Guid, - 0, - NULL, - (VOID **) &FvPpi - ); - ASSERT_EFI_ERROR (Status); - - CurrentFv = PrivateData->CurrentPeimFvCount; - CoreFvHandle = &(PrivateData->Fv[CurrentFv]); - - Status = FvPpi->FindFileByName (FvPpi, &NameGuid, &CoreFvHandle->FvHandle, &VbtFileHandle); - if (!EFI_ERROR (Status) && VbtFileHandle != NULL) { - DEBUG ((DEBUG_INFO, "Find SectionByType \n")); - Status = FvPpi->FindSectionByType (FvPpi, EFI_SECTION_RAW, VbtFileHandle, (VOID **) &VbtGuid); - if (!EFI_ERROR (Status)) { - DEBUG ((DEBUG_INFO, "GetFileInfo \n")); - Status = FvPpi->GetFileInfo (FvPpi, VbtFileHandle, &FvFileInfo); - Section = (EFI_COMMON_SECTION_HEADER *) FvFileInfo.Buffer; - if (IS_SECTION2 (Section)) { - ASSERT (SECTION2_SIZE (Section) > 0x00FFFFFF); - *Size = SECTION2_SIZE (Section) - sizeof (EFI_COMMON_SECTION_HEADER2); - *Address = ((UINT8 *) Section + sizeof (EFI_COMMON_SECTION_HEADER2)); - } else { - *Size = SECTION_SIZE (Section) - sizeof (EFI_COMMON_SECTION_HEADER); - *Address = ((UINT8 *) Section + sizeof (EFI_COMMON_SECTION_HEADER)); - } - } - } - - return EFI_SUCCESS; -} - diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.h b/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.h deleted file mode 100644 index ae1fd0960..000000000 --- a/Platform/BroxtonPlatformPkg/Common/Library/PeiPolicyUpdateLib/PeiSaPolicyUpdate.h +++ /dev/null @@ -1,43 +0,0 @@ -/** @file - Copyright (c) 2013 - 2016, 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 - 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. - -**/ - -#ifndef _PEI_SA_POLICY_UPDATE_H_ -#define _PEI_SA_POLICY_UPDATE_H_ - -// -// External include files do NOT need to be explicitly specified in real EDKII -// environment -// -#include -#include -#include -#include -#include -#include - -extern EFI_GUID gVbtInfoGuid; - -typedef struct { - EFI_PHYSICAL_ADDRESS VbtAddress; - UINT32 VbtSize; -} VBT_INFO; - -EFI_STATUS -EFIAPI -PeiGetSectionFromFv ( - IN CONST EFI_GUID NameGuid, - OUT VOID **Address, - OUT UINT32 *Size - ); -#endif - diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PeiSaPolicyUpdate.h b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PeiSaPolicyUpdate.h index d9f5be520..077f63bbf 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PeiSaPolicyUpdate.h +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PeiSaPolicyUpdate.h @@ -1,5 +1,5 @@ /** @file - Copyright (c) 2013 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2013 - 2017, 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 @@ -22,7 +22,6 @@ #include #include #include -#include #include #endif diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c index 84ff11700..6e8d4ab24 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.c @@ -1,7 +1,7 @@ /** @file Do platform specific PEI stage initializations. - Copyright (c) 2012 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2012 - 2017, 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 @@ -287,126 +287,20 @@ BXTPolicyInit ( IN SYSTEM_CONFIGURATION *SystemConfiguration ) { - EFI_STATUS Status; - SI_SA_POLICY_PPI *SiSaPolicyPpi; - SA_MISC_CONFIG *MiscConfig = NULL; - GRAPHICS_CONFIG *GtConfig = NULL; - IPU_CONFIG *IpuPolicy = NULL; -#if (ENBDT_PF_ENABLE == 1) - HYBRID_GRAPHICS_CONFIG *HgConfig = NULL; -#endif VOID* Buffer; UINT32 Size; EFI_GUID PeiLogoGuid = { 0x7BB28B99, 0x61BB, 0x11D5, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }; EFI_GUID TianmaVbtGuid = { 0xE08CA6D5, 0x8D02, 0x43ae, 0xAB, 0xB1, 0x95, 0x2C, 0xC7, 0x87, 0xC9, 0x33 }; VBT_INFO VbtInfo; - EFI_BOOT_MODE BootMode; - - DEBUG ((DEBUG_INFO, " BXTPolicyInit: SystemAgent PEI Platform Policy Initialization begin \n")); - - Status = CreateConfigBlocks (&SiSaPolicyPpi); - DEBUG ((DEBUG_INFO, "SiSaPolicyPpi->TableHeader.NumberOfBlocks = 0x%x\n ", SiSaPolicyPpi->TableHeader.NumberOfBlocks )); - ASSERT_EFI_ERROR (Status); - - - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gSaMiscConfigGuid , (VOID *) &MiscConfig); - ASSERT_EFI_ERROR (Status); - - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gGraphicsConfigGuid, (VOID *) &GtConfig); - ASSERT_EFI_ERROR (Status); - Status = GetConfigBlock ((VOID *) SiSaPolicyPpi, &gIpuConfigGuid, (VOID *) &IpuPolicy); - ASSERT_EFI_ERROR (Status); - -#if (ENBDT_PF_ENABLE == 1) - Status = GetConfigBlock((VOID *) SiSaPolicyPpi, &gHybridGraphicsConfigGuid, (VOID *) &HgConfig); - ASSERT_EFI_ERROR(Status); -#endif - if (!EFI_ERROR (Status)) { - // - // Get the Platform Configuration from SetupData - // - GtConfig->GttMmAdr = GTTMM_BASE_ADDRESS; - GtConfig->GmAdr = GMADR_BASE_ADDRESS; - GtConfig->PeiGraphicsPeimInit = SystemConfiguration->PeiGraphicsPeimInit; - GtConfig->PmSupport = SystemConfiguration->PmSupport; - GtConfig->EnableRenderStandby = SystemConfiguration->EnableRenderStandby; - GtConfig->CdClock = SystemConfiguration->CdClock; - GtConfig->PavpEnable = SystemConfiguration->PavpEnable; - - GtConfig->ForceWake = 0; - GtConfig->PavpLock = 1; - GtConfig->GraphicsFreqModify = 0; - GtConfig->GraphicsFreqReq = 0; - GtConfig->GraphicsVideoFreq = 0; - GtConfig->PmLock = 1; - GtConfig->DopClockGating = 1; - GtConfig->UnsolicitedAttackOverride = 0; - GtConfig->WOPCMSupport = 1; - GtConfig->WOPCMSize = 0; - GtConfig->PowerGating = 0; - GtConfig->UnitLevelClockGating = 1; - - MiscConfig->FastBoot = 1; - MiscConfig->DynSR = 1; - IpuPolicy->SaIpuEnable = SystemConfiguration->IpuEn; - IpuPolicy->IpuAcpiMode = SystemConfiguration->IpuAcpiMode; - IpuPolicy->IpuMmAdr = IPUMM_BASE_ADDRESS; - -#if (ENBDT_PF_ENABLE == 1) - // - // In Hybrid Gfx mode PCIe needs to be always enabled - // and IGFX must be set as Primary Display. - // - if (SystemConfiguration->PrimaryVideoAdaptor == 4) { - HgConfig->HgEnabled = 1; - HgConfig->HgSubSystemId = 0x2112; - } else { - HgConfig->HgEnabled = 0; - HgConfig->HgSubSystemId = 0x2212; - } - - HgConfig->HgDelayAfterPwrEn = SystemConfiguration->DelayAfterPwrEn; - HgConfig->HgDelayAfterHoldReset = SystemConfiguration->DelayAfterHoldReset; - // - // Configure below based on the OEM platfrom design - // Hybrid Graphics Enabled - 0= Disabled, 1=Enabled - // - if (HgConfig->HgEnabled == 1) { - // - // dGPU HLD RST GPIO assigned - // - HgConfig->HgDgpuHoldRst.CommunityOffset = (((UINT32) GPIO_MMIO_OFFSET_W) << 16); - HgConfig->HgDgpuHoldRst.PinOffset = 0x05B0; - HgConfig->HgDgpuHoldRst.Active = 0; - // - // dGPU PWR Enable GPIO assigned - // - HgConfig->HgDgpuPwrEnable.CommunityOffset = (((UINT32) GPIO_MMIO_OFFSET_N) << 16); - HgConfig->HgDgpuPwrEnable.PinOffset = 0x0598; - HgConfig->HgDgpuPwrEnable.Active = 1; - - HgConfig->RootPortDev = PCI_DEVICE_NUMBER_SC_PCIE_DEVICE_2; - HgConfig->RootPortFun = PCI_FUNCTION_NUMBER_PCIE_ROOT_PORT_3; + DEBUG ((DEBUG_INFO, " BXTPolicyInit: SystemAgent PEI Platform Policy Initialization begin \n")); - DEBUG ((DEBUG_INFO, "HG::Hybrid Graphics Policy updated\n")); - } -#endif - } - - Status = (*PeiServices)->GetBootMode ((CONST EFI_PEI_SERVICES **) PeiServices, &BootMode); - ASSERT_EFI_ERROR (Status); PeiGetSectionFromFv (PeiLogoGuid, &Buffer, &Size); if (Buffer == NULL) { DEBUG (( DEBUG_ERROR, "Could not locate PeiLogo")); } - GtConfig->LogoPtr = Buffer; - GtConfig->LogoSize = Size; - DEBUG ((DEBUG_INFO, "LogoPtr from PeiGetSectionFromFv is 0x%x\n", Buffer)); - DEBUG ((DEBUG_INFO, "LogoSize from PeiGetSectionFromFv is 0x%x\n", Size)); - DEBUG ((DEBUG_INFO, "SystemConfiguration->PanelSel = 0x%x\n", SystemConfiguration->PanelSel)); // // May need a different VBT depending on PanelSel @@ -417,11 +311,6 @@ BXTPolicyInit ( DEBUG (( DEBUG_ERROR, "Could not locate VBT")); } - if (BootMode == BOOT_ON_S3_RESUME) { - GtConfig->GraphicsConfigPtr = NULL; - } else { - GtConfig->GraphicsConfigPtr = Buffer; - } // // Build the VBT data into HOB for DXE GOP @@ -437,16 +326,7 @@ BXTPolicyInit ( sizeof (VbtInfo) ); - // - // Install SiSaPolicyPpi. - // While installed, RC assumes the Policy is ready and finalized. So please - // update and override any setting before calling this function. - // - Status = SiSaInstallPolicyPpi (SiSaPolicyPpi); - ASSERT_EFI_ERROR (Status); - DEBUG ((DEBUG_INFO, " SystemAgent PEI Platform Policy Initialization Done \n")); - ASSERT_EFI_ERROR (Status); return EFI_SUCCESS; } diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.h b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.h index 09813e904..c931b07ff 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.h +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformInit.h @@ -1,7 +1,7 @@ /** @file Platform Early Stage header file. - Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 1999 - 2017, 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 @@ -49,7 +49,6 @@ #include #include #include -#include #include #include #include @@ -57,7 +56,6 @@ #include #include #include -#include #include #include #include diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformPostMemPei.inf b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformPostMemPei.inf index cd8b61701..762eff2a2 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformPostMemPei.inf +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPostMemPei/PlatformPostMemPei.inf @@ -1,7 +1,7 @@ ## @file # Component description file for PlatformInit module. # -# Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 1999 - 2017, 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 @@ -50,7 +50,6 @@ SteppingLib SideBandLib ConfigBlockLib - PeiSaPolicyLib PeiPolicyUpdateLib PeiPolicyInitLib CpuPolicyLib @@ -75,7 +74,6 @@ gEfiPeiSmbus2PpiGuid gScPolicyPpiGuid gEfiPeiVirtualBlockIoPpiGuid - gSiSaPolicyPpiGuid gDramPolicyPpiGuid gBiosGuardConfigGuid gCpuConfigGuid diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PeiSaPolicyUpdate.h b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PeiSaPolicyUpdate.h index d9f5be520..077f63bbf 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PeiSaPolicyUpdate.h +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PeiSaPolicyUpdate.h @@ -1,5 +1,5 @@ /** @file - Copyright (c) 2013 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2013 - 2017, 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 @@ -22,7 +22,6 @@ #include #include #include -#include #include #endif diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInit.h b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInit.h index 09813e904..c931b07ff 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInit.h +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInit.h @@ -1,7 +1,7 @@ /** @file Platform Early Stage header file. - Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 1999 - 2017, 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 @@ -49,7 +49,6 @@ #include #include #include -#include #include #include #include @@ -57,7 +56,6 @@ #include #include #include -#include #include #include #include diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.c b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.c index 8348bf723..cab384764 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.c +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.c @@ -1,7 +1,7 @@ /** @file Source code file for Platform Init Pre-Memory PEI module. - Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2015 - 2017, 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 @@ -32,8 +32,6 @@ #include #include #include -#include -#include #include #include #include @@ -65,7 +63,6 @@ #include #include #include -#include #include "Smip.h" #include "Stall.h" #include "FvCallback.h" @@ -288,59 +285,6 @@ CopyMemSse4 ( } -/** - This function get SA setup config in PEI. - - @param[in, out] SaPreMemConfig Pointer to SA Pre Mem Config Block - - @retval EFI_SUCCESS The operation completed successfully. - @retval EFI_DEVICE_ERROR Memory test failed. It's not safe to use this range of memory. - -**/ -EFI_STATUS -EFIAPI -UpdateSaPreMemPolicy ( - IN OUT SA_PRE_MEM_CONFIG *SaPreMemConfig - ) -{ - EFI_STATUS Status; - UINTN VariableSize = 0; - EFI_PEI_READ_ONLY_VARIABLE2_PPI *VariableServices; - SYSTEM_CONFIGURATION SystemConfiguration; - - Status = PeiServicesLocatePpi (&gEfiPeiReadOnlyVariable2PpiGuid, 0, NULL, (VOID **) &VariableServices); - if (EFI_ERROR (Status)) { - ASSERT_EFI_ERROR (Status); - return Status; - } - VariableSize = sizeof (SYSTEM_CONFIGURATION); - Status = VariableServices->GetVariable ( - VariableServices, - PLATFORM_SETUP_VARIABLE_NAME, - &gEfiSetupVariableGuid, - NULL, - &VariableSize, - &SystemConfiguration - ); - - if (Status == EFI_SUCCESS) { - SaPreMemConfig->IgdDvmt50PreAlloc = SystemConfiguration.IgdDvmt50PreAlloc; - SaPreMemConfig->ApertureSize = SystemConfiguration.IgdApertureSize; - SaPreMemConfig->GttSize = SystemConfiguration.GTTSize; - SaPreMemConfig->InternalGraphics = SystemConfiguration.Igd; - SaPreMemConfig->PrimaryDisplay = SystemConfiguration.PrimaryVideoAdaptor; - if (SystemConfiguration.PrimaryVideoAdaptor == 4) { - // - // When Primary Display is selected as HG, Display is driven on-board and PrimaryDisplay should be set as 0. (IGD) - // - SaPreMemConfig->PrimaryDisplay = 0; - } - } - - return Status; -} - - #if defined(PRAM_SUPPORT) /** @@ -757,53 +701,6 @@ PeiScPreMemPolicyInit ( } -/** - This function performs SA PreMem Policy initialization. - - @retval EFI_SUCCESS The PPI is installed and initialized. - @retval EFI ERRORS The PPI is not successfully installed. - @retval EFI_OUT_OF_RESOURCES Do not have enough resources to initialize the driver - -**/ -EFI_STATUS -EFIAPI -PeiSaPreMemPolicyInit ( - VOID - ) -{ - EFI_STATUS Status; - SI_SA_POLICY_PPI *SaPolicyPpi; - SA_PRE_MEM_CONFIG *SaPreMemConfig = NULL; - - // - // Call SaCreatePreMemConfigBlocks to initialize SA Policy structure - // and get all Intel default policy settings. - // - Status = SaCreatePreMemConfigBlocks (&SaPolicyPpi); - ASSERT_EFI_ERROR (Status); - - // - // Update and override all platform related and customized settings below. - // - Status = GetConfigBlock ((VOID *) SaPolicyPpi, &gSaPreMemConfigGuid, (VOID *) &SaPreMemConfig); - ASSERT_EFI_ERROR (Status); - - // - // Update SA Pre-mem policies with setup values - // - UpdateSaPreMemPolicy (SaPreMemConfig); - - // - // Install SaPreMemPolicyPpi. - // While installed, RC assumes the Policy is ready and finalized. So please - // update and override any setting before calling this function. - // - Status = SaInstallPreMemPolicyPpi (SaPolicyPpi); - ASSERT_EFI_ERROR (Status); - - return Status; -} - #if (ENBDT_PF_ENABLE == 1) // @@ -1192,9 +1089,6 @@ PlatformInitPreMemEntryPoint ( // RtcPowerFailureHandler (); - Status = PeiSaPreMemPolicyInit(); - ASSERT_EFI_ERROR (Status); - #if (ENBDT_PF_ENABLE == 1) if (GetBxtSeries() == BxtP) { // diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.h b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.h index ca571ec8e..17b4dad36 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.h +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSettings/PlatformPreMemPei/PlatformInitPreMem.h @@ -1,7 +1,7 @@ /** @file The header file of Platform PEIM. - Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2010 - 2017, 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 @@ -74,12 +74,6 @@ SeCUmaEntry ( EFI_STATUS EFIAPI -UpdateSaPreMemPolicy ( - IN OUT SA_PRE_MEM_CONFIG *SaPreMemConfig - ); - -EFI_STATUS -EFIAPI GetBiosReservedMemoryPolicy ( IN CONST EFI_PEI_SERVICES **PeiServices, IN PEI_BIOS_RESERVED_MEMORY_POLICY_PPI *This, diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/BroxtonSiPkg.dec b/Silicon/BroxtonSoC/BroxtonSiPkg/BroxtonSiPkg.dec index eaf8fb974..2ee4008c6 100644 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/BroxtonSiPkg.dec +++ b/Silicon/BroxtonSoC/BroxtonSiPkg/BroxtonSiPkg.dec @@ -5,7 +5,7 @@ # DSC and EDK II INF files to generate AutoGen.c and AutoGen.h files # for the EDK II build infrastructure. # -# Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2004 - 2017, 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 @@ -27,7 +27,6 @@ gVariableStoragePpiGuid = { 0x90d915c5, 0xe4c1, 0x4da8, {0xa7, 0x6f, 0x9, 0xe5, 0x78, 0x91, 0x65, 0x48}} gPeiSmmAccessPpiGuid = { 0x268f33a9, 0xcccd, 0x48be, {0x88, 0x17, 0x86, 0x05, 0x3a, 0xc3, 0x2e, 0xd6}} gSaPlatformPolicyPpiGuid = { 0x7D84B2C2, 0x22A1, 0x4372, {0xB1, 0x2C, 0xEB, 0xB2, 0x32, 0xD3, 0xA6, 0xA3}} - gSiSaPolicyPpiGuid = { 0x65289ae5, 0x1589, 0x484c, {0xa6, 0x10, 0x90, 0xe1, 0x0a, 0xc2, 0xdb, 0x28}} gSiSaPreMemPolicyPpiGuid = { 0xcfe5ec91, 0x31ed, 0x47e9, {0xbe, 0x7d, 0x9c, 0xcb, 0x59, 0x13, 0x4b, 0x71}} gSaPolicyPpiGuid = { 0xf6435590, 0x2402, 0x4e02, {0x99, 0xfd, 0xab, 0xdd, 0x9d, 0xd4, 0x0a, 0x6a}} gScPolicyPpiGuid = { 0x10164673, 0xD365, 0x4BE2, {0x85, 0x13, 0x14, 0x97, 0xCC, 0x07, 0x61, 0x1D}} @@ -73,7 +72,6 @@ # NC Config Block IP GUID # gSaMiscConfigGuid = { 0xc5c9145f, 0x61fb, 0x4abe, { 0x88, 0x0a, 0xf2, 0x56, 0x89, 0x9f, 0x40, 0xb0}} - gGraphicsConfigGuid = { 0x0319c56b, 0xc43a, 0x42f1, { 0x80, 0xbe, 0xca, 0x5b, 0xd1, 0xd5, 0xc9, 0x28}} gMemoryConfigGuid = { 0x26cf084c, 0xc9db, 0x41bb, { 0x92, 0xc6, 0xd1, 0x97, 0xb8, 0xa1, 0xe4, 0xbf}} gIpuConfigGuid = { 0x67eeefd0, 0x9e42, 0x48c8, { 0xbd, 0xab, 0xfd, 0x0d, 0x23, 0x69, 0x88, 0x0b}} gHybridGraphicsConfigGuid = { 0x0b7e694d, 0xb909, 0x4097, { 0x9c, 0x03, 0x5e, 0x72, 0x84, 0x89, 0xf7, 0x09}} diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Library/PeiSaPolicyLib.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Library/PeiSaPolicyLib.h index 3a83ceab1..c57df9ff7 100644 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Library/PeiSaPolicyLib.h +++ b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Library/PeiSaPolicyLib.h @@ -1,7 +1,7 @@ /** @file Prototype of the PeiSaPolicy library. - Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2014 - 2017, 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 @@ -16,27 +16,11 @@ #ifndef _PEI_SA_POLICY_LIB_H_ #define _PEI_SA_POLICY_LIB_H_ -#include #include #include #include -/** - Creates the Pre Mem Config Blocks for SA Policy. - It allocates and zero out buffer, and fills in the Intel default settings. - - @param[in, out] SiSaPolicyPpi The pointer to get SI/SA Policy PPI instance. - - @retval EFI_SUCCESS The policy default is initialized. - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create buffer. - -**/ -EFI_STATUS -EFIAPI -SaCreatePreMemConfigBlocks( - IN OUT SI_SA_POLICY_PPI **SiSaPolicyPpi - ); /** Creates the Config Blocks for SA Policy. @@ -54,22 +38,6 @@ CreateConfigBlocks ( IN OUT SI_SA_POLICY_PPI **SiSaPolicyPpi ); -/** - Install PPI SiSaPolicyPpi. - While installed, RC assumes the Policy is ready and finalized. So please update and override - any setting before calling this function. - - @param[in] SiSaPolicyPpi Pointer of policy structure. - - @retval EFI_SUCCESS The policy is installed. - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create buffer. - -**/ -EFI_STATUS -EFIAPI -SiSaInstallPolicyPpi ( - IN SI_SA_POLICY_PPI *SiSaPolicyPpi - ); /** SaInstallPreMemPolicyPpi installs SaPolicyPpi. diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/GraphicsConfig.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/GraphicsConfig.h deleted file mode 100644 index 92b49f51f..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/GraphicsConfig.h +++ /dev/null @@ -1,57 +0,0 @@ -/** @file - Policy definition for Internal Graphics Config Block. - - Copyright (c) 2010 - 2016, 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 - 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. - -**/ - -#ifndef _GRAPHICS_CONFIG_H_ -#define _GRAPHICS_CONFIG_H_ - -#pragma pack(1) - -#define GRAPHICS_CONFIG_REVISION 1 - -extern EFI_GUID gGraphicsConfigGuid; - -typedef struct { - CONFIG_BLOCK_HEADER Header; ///< Offset 0-23 Config Block Header - UINT32 CdClock : 3; - UINT32 PeiGraphicsPeimInit: 1; ///< 0- Disable 1- Enable - UINT32 RsvdBits0 : 4; ///< Reserved for future use - UINT8 Rsvd1[2]; ///< Offset 14 - UINT32 GttMmAdr; ///< Offset 16 Address of System Agent GTTMMADR: Default is 0xDF000000 - VOID* LogoPtr; ///< Offset 20 Address of Logo to be displayed in PEI - UINT32 LogoSize; ///< Offset 24 Logo Size - VOID* GraphicsConfigPtr; ///< Offset 28 Address of the Graphics Configuration Table - UINT32 GmAdr; ///< Offset 32 Address of System Agent GMADR: Default is 0xC0000000 - UINT8 PmSupport; - UINT8 PavpEnable; - UINT8 EnableRenderStandby; - UINT8 PavpPr3; - UINT8 ForceWake; - UINT8 PavpLock; - UINT8 GraphicsFreqModify; - UINT8 GraphicsFreqReq; - UINT8 GraphicsVideoFreq; - UINT8 PmLock; - UINT8 DopClockGating; - UINT8 UnsolicitedAttackOverride; - UINT8 WOPCMSupport; - UINT8 WOPCMSize; - UINT8 PowerGating; - UINT8 UnitLevelClockGating; -} GRAPHICS_CONFIG; - -#pragma pack() - -#endif // _GRAPHICS_CONFIG_H_ - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/HybridGraphicsConfig.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/HybridGraphicsConfig.h deleted file mode 100644 index 69951ff36..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/HybridGraphicsConfig.h +++ /dev/null @@ -1,52 +0,0 @@ -/** @file - Hybrid Graphics policy definitions. - - Copyright (c) 2015 - 2016, 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 - 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. - -**/ - -#ifndef _HYBRID_GRAPHICS_CONFIG_H_ -#define _HYBRID_GRAPHICS_CONFIG_H_ - -#pragma pack(1) - -#define HYBRID_GRAPHICS_CONFIG_REVISION 1 - -extern EFI_GUID gHybridGraphicsConfigGuid; - -// -// HG GPIO Data Structure -// -typedef struct { - UINT32 CommunityOffset; ///< GPIO Community - UINT16 PinOffset; ///< GPIO Pin - BOOLEAN Active; ///< 0=Active Low; 1=Active High -} HG_GPIO; - -// -// Defines the Switchable Graphics configuration parameters for System Agent. -// -typedef struct { - CONFIG_BLOCK_HEADER Header; ///< Offset 0-23 Config Block Header - UINT8 RootPortDev; ///< Device number used for SG - UINT8 RootPortFun; ///< Function number used for SG - UINT8 HgEnabled; ///< HgEnabled (0=Disabled, 1=Enabled) - UINT16 HgSubSystemId; ///< Hybrid Graphics Subsystem ID - UINT16 HgDelayAfterPwrEn; ///< Dgpu Delay after Power enable using Setup option - UINT16 HgDelayAfterHoldReset; ///< Dgpu Delay after Hold Reset using Setup option - HG_GPIO HgDgpuHoldRst; ///< This field contain dGPU HLD RESET GPIO value and level information - HG_GPIO HgDgpuPwrEnable; ///< This field contain dGPU_PWR Enable GPIO value and level information -} HYBRID_GRAPHICS_CONFIG; - -#pragma pack() - -#endif // _HYBRID_GRAPHICS_CONFIG_H_ - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/IpuConfig.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/IpuConfig.h deleted file mode 100644 index 2662880eb..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/IpuConfig.h +++ /dev/null @@ -1,35 +0,0 @@ -/** @file - IPU policy definitions. - - Copyright (c) 2014 - 2016, 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 - 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. - -**/ - -#ifndef _IPU_CONFIG_H_ -#define _IPU_CONFIG_H_ - -#pragma pack(1) - -#define IPU_CONFIG_REVISION 1 - -extern EFI_GUID gIpuConfigGuid; - -typedef struct { - CONFIG_BLOCK_HEADER Header; ///< Offset 0-23 Config Block Header - UINT8 SaIpuEnable; ///< Enable SA IPU device: 0=Disable, 1=Enable - UINT8 IpuAcpiMode; ///< Set IPU ACPI mode: 0=AUTO, 1=IGFX Child device, 2=ACPI device - UINT32 IpuMmAdr; ///< Address of IPU MMIO Bar IpuMmAdr: Default is 0x90000000 -} IPU_CONFIG; - -#pragma pack() - -#endif // _IPU_CONFIG_H_ - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPolicy.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPolicy.h deleted file mode 100644 index 96107dcc9..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPolicy.h +++ /dev/null @@ -1,80 +0,0 @@ -/** @file - Interface definition details between MRC and platform drivers during PEI phase. - - Copyright (c) 2010 - 2016, 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 - 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. - -**/ - - -#ifndef _SA_POLICY_PPI_H_ -#define _SA_POLICY_PPI_H_ - -#include -#include -#include -#include -#include -#include -#include -#include - -// -// Extern the GUID for protocol users. -// -extern EFI_GUID gSiSaPolicyPpiGuid; -extern EFI_GUID gSiSaPreMemPolicyPpiGuid; - -/** - PPI revision number - Any backwards compatible changes to this PPI will result in an update in the revision number - Major changes will require publication of a new PPI - -**/ -#define SA_POLICY_PPI_REVISION 1 - -// -// Generic definitions for device enabling/disabling used by NC code. -// -#define DEVICE_ENABLE 1 -#define DEVICE_DISABLE 0 - -#ifndef MAX_SOCKETS -#define MAX_SOCKETS 4 -#endif - -#define S3_TIMING_DATA_LEN 9 -#define S3_READ_TRAINING_DATA_LEN 16 -#define S3_WRITE_TRAINING_DATA_LEN 12 - -#ifndef S3_RESTORE_DATA_LEN -#define S3_RESTORE_DATA_LEN (S3_TIMING_DATA_LEN + S3_READ_TRAINING_DATA_LEN + S3_WRITE_TRAINING_DATA_LEN) -#endif // S3_RESTORE_DATA_LEN - -#pragma pack(1) - - -/** - SI SA Policy PPI\n - Each config block change history should be listed here\n\n - -**/ -typedef struct { - CONFIG_BLOCK_TABLE_HEADER TableHeader; ///< Offset 0-31 -/** - Individual Config Block Structures are added here in memory as part of AddConfigBlock() - -**/ -} SI_SA_POLICY_PPI; - -#pragma pack() - -#endif // _SA_POLICY_PPI_H_ - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPreMemConfig.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPreMemConfig.h deleted file mode 100644 index 04c995170..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Include/Ppi/SaPreMemConfig.h +++ /dev/null @@ -1,37 +0,0 @@ -/** @file - Policy definition for SA Pre-Mem Config Block. - - Copyright (c) 2010 - 2016, 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 - 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. - -**/ - -#ifndef _SA_PRE_MEM_CONFIG_H_ -#define _SA_PRE_MEM_CONFIG_H_ - -#pragma pack(1) - -#define SA_PRE_MEM_CONFIG_REVISION 1 - -extern EFI_GUID gSaPreMemConfigGuid; - -typedef struct { - CONFIG_BLOCK_HEADER Header; ///< Offset 0-23 Config Block Header - UINT8 IgdDvmt50PreAlloc; - UINT8 PrimaryDisplay; - UINT8 ApertureSize; - UINT8 InternalGraphics; - UINT16 GttSize; ///< Selection of iGFX GTT Memory size: 1=2MB, 2=4MB, 3=8MB -} SA_PRE_MEM_CONFIG; - -#pragma pack() - -#endif // _SA_PRE_MEM_CONFIG_H_ - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.c b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.c deleted file mode 100644 index 2b92562c0..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.c +++ /dev/null @@ -1,432 +0,0 @@ -/** @file - This file provides services for Pei SA policy default initialization. - - Copyright (c) 2014 - 2016, 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 - 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. - -**/ - -#include "PeiSaPolicyLibrary.h" - -// -// @todo: Remove the duplicate definition of the GUIDs and make it a location function. -// Because mBxtSaIpBlocks' initializer must be a constant, we need to define those GUID for it. -// -#define SA_MISC_CONFIG_GUID { 0xc5c9145f, 0x61fb, 0x4abe, { 0x88, 0x0a, 0xf2, 0x56, 0x89, 0x9f, 0x40, 0xb0}} -#define GRAPHICS_CONFIG_GUID { 0x0319c56b, 0xc43a, 0x42f1, { 0x80, 0xbe, 0xca, 0x5b, 0xd1, 0xd5, 0xc9, 0x28}} -#define MEMORY_CONFIG_GUID { 0x26cf084c, 0xc9db, 0x41bb, { 0x92, 0xc6, 0xd1, 0x97, 0xb8, 0xa1, 0xe4, 0xbf}} -#define IPU_CONFIG_GUID { 0x67eeefd0, 0x9e42, 0x48c8, { 0xbd, 0xab, 0xfd, 0x0d, 0x23, 0x69, 0x88, 0x0b}} -#define SA_PRE_MEM_CONFIG_GUID { 0x7200eef0, 0xbe7f, 0x4061, { 0x93, 0xe3, 0x3c, 0xd0, 0x36, 0x7c, 0xe1, 0x51}} -#if (ENBDT_PF_ENABLE == 1) -#define HYBRID_GRAPHICS_CONFIG_GUID { 0x0b7e694d, 0xb909, 0x4097, { 0x9c, 0x03, 0x5e, 0x72, 0x84, 0x89, 0xf7, 0x09}} -#endif - -GLOBAL_REMOVE_IF_UNREFERENCED CONFIG_BLOCK_HEADER mBxtSaIpBlocks[] = { - // Block GUID Block Size, Revision - {SA_MISC_CONFIG_GUID, sizeof (SA_MISC_CONFIG), SA_MISC_CONFIG_REVISION, {0, 0, 0}}, - {GRAPHICS_CONFIG_GUID, sizeof (GRAPHICS_CONFIG), GRAPHICS_CONFIG_REVISION, {0, 0, 0}}, - {IPU_CONFIG_GUID, sizeof (IPU_CONFIG), IPU_CONFIG_REVISION, {0, 0, 0}}, -#if (ENBDT_PF_ENABLE == 1) - {HYBRID_GRAPHICS_CONFIG_GUID, sizeof (HYBRID_GRAPHICS_CONFIG), HYBRID_GRAPHICS_CONFIG_REVISION, {0, 0, 0}}, -#endif - {MEMORY_CONFIG_GUID, sizeof (MEMORY_CONFIGURATION), MEMORY_CONFIG_REVISION, {0, 0, 0}} -}; -GLOBAL_REMOVE_IF_UNREFERENCED CONFIG_BLOCK_HEADER mBxtSaIpPreMemBlocks[] = { - // Block GUID Block Size, Revision - {SA_PRE_MEM_CONFIG_GUID, sizeof (SA_PRE_MEM_CONFIG), SA_PRE_MEM_CONFIG_REVISION, { 0, 0, 0}} -}; - -// -// Function call to Load defaults for Individial IP Blocks -// -EFI_STATUS -EFIAPI -LoadSaMiscDefault ( - IN VOID *ConfigBlockPointer - ) -{ - SA_MISC_CONFIG *MiscConfig; - - MiscConfig = ConfigBlockPointer; - - DEBUG ((DEBUG_INFO, "MiscConfig->Header.Guid = %g\n", MiscConfig->Header.Guid)); - DEBUG ((DEBUG_INFO, "MiscConfig->Header.Size = 0x%x\n", MiscConfig->Header.Size)); - - return EFI_SUCCESS; -} - - -EFI_STATUS -EFIAPI -LoadIpuDefault ( - IN VOID *ConfigBlockPointer - ) -{ - IPU_CONFIG *IpuPolicy; - - IpuPolicy = ConfigBlockPointer; - DEBUG ((DEBUG_INFO, "IpuPolicy->Header.Guid = %g\n", IpuPolicy->Header.Guid)); - DEBUG ((DEBUG_INFO, "IpuPolicy->Header.Size = 0x%x\n", IpuPolicy->Header.Size)); - - IpuPolicy->SaIpuEnable = 1; - IpuPolicy->IpuMmAdr = 0xCF000000; - - return EFI_SUCCESS; -} - - -EFI_STATUS -EFIAPI -LoadGraphicsDefault ( - IN VOID *ConfigBlockPointer - ) -{ - GRAPHICS_CONFIG *GtConfig; - - GtConfig = ConfigBlockPointer; - - // - // Initialize the Graphics configuration - // - GtConfig->GmAdr = 0xA0000000; - GtConfig->GttMmAdr = 0xBF000000; - GtConfig->EnableRenderStandby = 1; - GtConfig->PavpEnable = 1; - GtConfig->PmSupport = 1; - GtConfig->PavpPr3 = 1; - GtConfig->PeiGraphicsPeimInit = 0; - // - // Initialize the CdClock to 675 Mhz - // - GtConfig->CdClock = 3; - - return EFI_SUCCESS; -} - - -#if (ENBDT_PF_ENABLE == 1) -EFI_STATUS -EFIAPI -LoadHybridGraphicsDefault ( - IN VOID *ConfigBlockPointer - ) -{ - HYBRID_GRAPHICS_CONFIG *HgConfig; - - HgConfig = ConfigBlockPointer; - - // - // Initialize the Hybrid Graphics configuration - // - HgConfig->HgEnabled = 0x0; - HgConfig->HgDelayAfterPwrEn = 300; - HgConfig->HgDelayAfterHoldReset = 100; - - return EFI_SUCCESS; -} -#endif - - -EFI_STATUS -EFIAPI -LoadSaPreMemDefault ( - IN VOID *ConfigBlockPointer - ) -{ - SA_PRE_MEM_CONFIG *SaPreMemConfig; - - SaPreMemConfig = ConfigBlockPointer; - - // - // Initialize the Graphics configuration - // - SaPreMemConfig->GttSize = 3; - SaPreMemConfig->IgdDvmt50PreAlloc = 2; - SaPreMemConfig->InternalGraphics = 1; - SaPreMemConfig->PrimaryDisplay = 0; - SaPreMemConfig->ApertureSize = 2; - - return EFI_SUCCESS; -} - - -/** - Initialize default settings for each SA Config block. - - @param[in] ConfigBlockPointer The buffer pointer that will be initialized as specific config block. - @param[in] BlockId Request to initialize defaults of specified config block by given Block ID. - - @retval EFI_SUCCESS The given buffer has contained the defaults of requested config block. - @retval EFI_NOT_FOUND Block ID is not defined so no default Config block will be initialized. - -**/ -EFI_STATUS -EFIAPI -LoadConfigBlockDefault ( - IN VOID *ConfigBlockPointer, - IN EFI_GUID BlockGuid - ) -{ - if (CompareGuid (&BlockGuid, &gSaMiscConfigGuid)) { - LoadSaMiscDefault (ConfigBlockPointer); - } else { - if (CompareGuid (&BlockGuid, &gGraphicsConfigGuid)) { - LoadGraphicsDefault (ConfigBlockPointer); - } else { - if (CompareGuid (&BlockGuid, &gIpuConfigGuid)) { - LoadIpuDefault (ConfigBlockPointer); - } else { - if (CompareGuid (&BlockGuid, &gSaPreMemConfigGuid)) { - LoadSaPreMemDefault (ConfigBlockPointer); - } -#if (ENBDT_PF_ENABLE == 1) - else { - if (CompareGuid (&BlockGuid, &gHybridGraphicsConfigGuid)) { - LoadHybridGraphicsDefault (ConfigBlockPointer); - } -#endif - else { - return EFI_NOT_FOUND; - } - - -#if (ENBDT_PF_ENABLE == 1) - } -#endif - } - } - } - - return EFI_SUCCESS; -} - - -/** - Creates the Pre-Mem Config Blocks for SA Policy. - It allocates and zero out buffer, and fills in the Intel default settings. - - @param[in, out] SiSaPolicyPpi The pointer to get SI/SA Policy PPI instance. - - @retval EFI_SUCCESS The policy default is initialized. - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create buffer. - -**/ -EFI_STATUS -EFIAPI -SaCreatePreMemConfigBlocks( - IN OUT SI_SA_POLICY_PPI **SiSaPolicyPpi - ) -{ - UINT32 TotalBlockSize; - UINT16 TotalBlockCount; - UINT16 BlockCount; - VOID *ConfigBlockPointer; - EFI_STATUS Status; - SI_SA_POLICY_PPI *SaInitPolicy; - UINT32 ConfigBlockHdrSize; - UINT32 RequiredSize; - - SaInitPolicy = NULL; - TotalBlockCount = sizeof (mBxtSaIpPreMemBlocks) / sizeof (CONFIG_BLOCK_HEADER); - DEBUG ((DEBUG_INFO, "TotalBlockCount = 0x%x\n", TotalBlockCount)); - - TotalBlockSize = 0; - - for (BlockCount = 0; BlockCount < TotalBlockCount; BlockCount++) { - TotalBlockSize += (UINT32) mBxtSaIpPreMemBlocks[BlockCount].Size; - DEBUG ((DEBUG_INFO, "TotalBlockSize after adding Block[0x%x]= 0x%x\n", BlockCount, TotalBlockSize)); - } - DEBUG ((DEBUG_INFO, "TotalBlockSize Final = 0x%x\n", TotalBlockSize)); - - ConfigBlockHdrSize = GetSizeOfConfigBlockTableHeaders ((UINT16) TotalBlockCount); - - RequiredSize = ConfigBlockHdrSize + TotalBlockSize; - - Status = CreateConfigBlockTable ((VOID *) &SaInitPolicy, TotalBlockCount, RequiredSize); - ASSERT_EFI_ERROR (Status); - - // - // Initialize Policy Revision - // - SaInitPolicy->TableHeader.Header.Revision = SA_POLICY_PPI_REVISION; - // - // Initialize ConfigBlockPointer to NULL - // - ConfigBlockPointer = NULL; - // - // Loop to identify each config block from mBxtSaIpPreMemBlocks[] Table and add each of them - // - for (BlockCount = 0; BlockCount < TotalBlockCount; BlockCount++) { - ConfigBlockPointer = (VOID *) &mBxtSaIpPreMemBlocks[BlockCount]; - Status = AddConfigBlock ((VOID *) SaInitPolicy, (VOID *) &ConfigBlockPointer); - ASSERT_EFI_ERROR (Status); - LoadConfigBlockDefault ((VOID *) ConfigBlockPointer, mBxtSaIpPreMemBlocks[BlockCount].Guid); - } - // - // Assignment for returning SaInitPolicy config block base address - // - *SiSaPolicyPpi = SaInitPolicy; - - return EFI_SUCCESS; -} - - -/** - Creates the Config Blocks for SA Policy. - It allocates and zero out buffer, and fills in the Intel default settings. - - @param[in, out] SiSaPolicyPpi The pointer to get SI/SA Policy PPI instance. - - @retval EFI_SUCCESS The policy default is initialized. - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create buffer. - -**/ -EFI_STATUS -EFIAPI -CreateConfigBlocks ( - IN OUT SI_SA_POLICY_PPI **SiSaPolicyPpi - ) -{ - UINT32 TotalBlockSize; - UINT16 TotalBlockCount; - UINT16 BlockCount; - VOID *ConfigBlockPointer; - EFI_STATUS Status; - SI_SA_POLICY_PPI *SaInitPolicy; - UINT32 ConfigBlockHdrSize; - UINT32 RequiredSize; - - SaInitPolicy = NULL; - TotalBlockCount = sizeof (mBxtSaIpBlocks) / sizeof (CONFIG_BLOCK_HEADER); - DEBUG ((DEBUG_INFO, "TotalBlockCount = 0x%x\n", TotalBlockCount)); - - TotalBlockSize = 0; - - for (BlockCount = 0 ; BlockCount < TotalBlockCount; BlockCount++) { - TotalBlockSize += (UINT32 )mBxtSaIpBlocks[BlockCount].Size; - DEBUG ((DEBUG_INFO, "TotalBlockSize after adding Block[0x%x]= 0x%x\n", BlockCount, TotalBlockSize)); - } - DEBUG ((DEBUG_INFO, "TotalBlockSize Final = 0x%x\n", TotalBlockSize)); - - ConfigBlockHdrSize = GetSizeOfConfigBlockTableHeaders ((UINT16) TotalBlockCount); - - RequiredSize = ConfigBlockHdrSize + TotalBlockSize; - - Status = CreateConfigBlockTable ((VOID *) &SaInitPolicy, TotalBlockCount, RequiredSize); - ASSERT_EFI_ERROR (Status); - - // - // Initialize Policy Revision - // - SaInitPolicy->TableHeader.Header.Revision = SA_POLICY_PPI_REVISION; - // - // Initialize ConfigBlockPointer to NULL - // - ConfigBlockPointer = NULL; - // - // Loop to identify each config block from mBxtSaIpBlocks[] Table and add each of them - // - for (BlockCount = 0 ; BlockCount < TotalBlockCount; BlockCount++) { - ConfigBlockPointer = (VOID *) &mBxtSaIpBlocks[BlockCount]; - Status = AddConfigBlock ((VOID *) SaInitPolicy, (VOID *) &ConfigBlockPointer); - ASSERT_EFI_ERROR (Status); - LoadConfigBlockDefault ((VOID *) ConfigBlockPointer, mBxtSaIpBlocks[BlockCount].Guid); - } - // - // Assignment for returning SaInitPolicy config block base address - // - *SiSaPolicyPpi = SaInitPolicy; - - return EFI_SUCCESS; -} - - -/** - Install PPI SiSaPolicyPpi. - While installed, RC assumes the Policy is ready and finalized. So please update and override - any setting before calling this function. - - @param[in] SiSaPolicyPpi Pointer of policy structure. - - @retval EFI_SUCCESS The policy is installed. - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create buffer. - -**/ -EFI_STATUS -EFIAPI -SiSaInstallPolicyPpi ( - IN SI_SA_POLICY_PPI *SiSaPolicyPpi - ) -{ - EFI_STATUS Status; - EFI_PEI_PPI_DESCRIPTOR *SiSaInstallPolicyPpiDesc; - - SiSaInstallPolicyPpiDesc = (EFI_PEI_PPI_DESCRIPTOR *) AllocateZeroPool (sizeof (EFI_PEI_PPI_DESCRIPTOR)); - ASSERT (SiSaInstallPolicyPpiDesc != NULL); - if (SiSaInstallPolicyPpiDesc == NULL) { - return EFI_OUT_OF_RESOURCES; - } - - // - // Initialize the PPI - // - SiSaInstallPolicyPpiDesc->Flags = EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST; - SiSaInstallPolicyPpiDesc->Guid = &gSiSaPolicyPpiGuid; - SiSaInstallPolicyPpiDesc->Ppi = SiSaPolicyPpi; - - // - // Install PEI SA Policy PPI - // - Status = PeiServicesInstallPpi (SiSaInstallPolicyPpiDesc); - ASSERT_EFI_ERROR (Status); - - return Status; -} - - -/** - SaInstallPreMemPolicyPpi installs Sa Pre Mem PolicyPpi. - While installed, RC assumes the Policy is ready and finalized. So please update and override - any setting before calling this function. - - @param[in] SaPreMemPolicyPpi The pointer to SA PREMEM Policy PPI instance. - - @retval EFI_SUCCESS The policy is installed. - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create buffer. - -**/ -EFI_STATUS -EFIAPI -SaInstallPreMemPolicyPpi ( - IN SI_SA_POLICY_PPI *SaPolicyPpi - ) -{ - EFI_STATUS Status; - EFI_PEI_PPI_DESCRIPTOR *SaPreMemPolicyPpiDesc; - - SaPreMemPolicyPpiDesc = (EFI_PEI_PPI_DESCRIPTOR *) AllocateZeroPool (sizeof (EFI_PEI_PPI_DESCRIPTOR)); - if (SaPreMemPolicyPpiDesc == NULL) { - ASSERT (FALSE); - return EFI_OUT_OF_RESOURCES; - } - - SaPreMemPolicyPpiDesc->Flags = EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST; - SaPreMemPolicyPpiDesc->Guid = &gSiSaPreMemPolicyPpiGuid; - SaPreMemPolicyPpiDesc->Ppi = SaPolicyPpi; - - // - // Install PREMEM Policy PPI - // - Status = PeiServicesInstallPpi (SaPreMemPolicyPpiDesc); - ASSERT_EFI_ERROR (Status); - - return Status; -} - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.inf b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.inf deleted file mode 100644 index 54a4d90c0..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.inf +++ /dev/null @@ -1,47 +0,0 @@ -## @file -# Pei SA policy library. -# -# Copyright (c) 2014 - 2016, 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 -# 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. -# -## - -[Defines] - INF_VERSION = 0x00010017 - BASE_NAME = PeiSaPolicyLib - FILE_GUID = B612937D-2674-4e5f-9EAB-3B94CCF31C9E - VERSION_STRING = 1.0 - MODULE_TYPE = PEIM - LIBRARY_CLASS = PeiSaPolicyLib - -[Sources] - PeiSaPolicyLib.c - PeiSaPolicyLibrary.h - -[Packages] - MdePkg/MdePkg.dec - BroxtonSiPkg/BroxtonSiPkg.dec - -[LibraryClasses] - DebugLib - PeiServicesLib - MemoryAllocationLib - ConfigBlockLib - BaseMemoryLib - -[Ppis] - gSiSaPolicyPpiGuid ## PRODUCES - gSiSaPreMemPolicyPpiGuid ## PRODUCES - gSaMiscConfigGuid ## PRODUCES - gGraphicsConfigGuid ## PRODUCES - gMemoryConfigGuid ## PRODUCES - gIpuConfigGuid ## PRODUCES - gHybridGraphicsConfigGuid ## PRODUCES - gSaPreMemConfigGuid diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLibrary.h b/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLibrary.h deleted file mode 100644 index 26a6e6796..000000000 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLibrary.h +++ /dev/null @@ -1,70 +0,0 @@ -/** @file - Header file for the Pei SA policy library. - - Copyright (c) 2014 - 2016, 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 - 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. - -**/ - -#ifndef _PEI_SA_POLICY_LIBRARY_H_ -#define _PEI_SA_POLICY_LIBRARY_H_ - -#include -#include -#include -#include -#include -#include -#include - -#define SaIoRead8 IoRead8 -#define SaIoRead16 IoRead16 -#define SaIoRead32 IoRead32 -#define SaIoWrite8 IoWrite8 -#define SaIoWrite16 IoWrite16 -#define SaIoWrite32 IoWrite32 -#define SaCopyMem CopyMem -#define SaSetMem SetMem -#define SaLShiftU64 LShiftU64 -#define SaRShiftU64 RShiftU64 -#define SaMultU64x32 MultU64x32 - -#define RTC_INDEX_REGISTER (0x70) -#define RTC_TARGET_REGISTER (0x71) -#define R_PCH_RTC_INDEX_ALT (0x74) -#define R_PCH_RTC_TARGET_ALT (0x75) -#define R_PCH_RTC_EXT_INDEX_ALT (0x76) -#define R_PCH_RTC_EXT_TARGET_ALT (0x77) - -#define RTC_INDEX_MASK (0x7F) -#define RTC_BANK_SIZE (0x80) - -#define RTC_SECONDS (0x00) -#define RTC_MINUTES (0x02) -#define RTC_HOURS (0x04) -#define RTC_DAY_OF_MONTH (0x07) -#define RTC_MONTH (0x08) -#define RTC_YEAR (0x09) -#define CMOS_REGA (0x0A) -#define CMOS_REGB (0x0B) -#define CMOS_REGC (0x0C) -#define CMOS_REGD (0x0D) - -#define RTC_UPDATE_IN_PROGRESS (0x80) -#define RTC_HOLD (0x80) -#define RTC_MODE_24HOUR (0x02) -#define RTC_CLOCK_DIVIDER (0x20) -#define RTC_RATE_SELECT (0x06) - -#define BCD2BINARY(A) (((((A) >> 4) & 0xF) * 10) + ((A) & 0xF)) -#define CENTURY_OFFSET (2000) - -#endif // _PEI_SA_POLICY_LIBRARY_H_ - diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/SiPkgPeiLib.dsc b/Silicon/BroxtonSoC/BroxtonSiPkg/SiPkgPeiLib.dsc index 14a887005..b454329ae 100644 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/SiPkgPeiLib.dsc +++ b/Silicon/BroxtonSoC/BroxtonSiPkg/SiPkgPeiLib.dsc @@ -1,7 +1,7 @@ ## @file # Component description file for the Broxton RC PEI libraries. # -# Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2004 - 2017, 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 @@ -36,10 +36,6 @@ MpServiceLib|$(PLATFORM_SI_PACKAGE)/Cpu/Library/Private/PeiMpServiceLib/PeiMpServiceLib.inf CpuS3Lib|$(PLATFORM_SI_PACKAGE)/Cpu/Library/Private/PeiCpuS3Lib/PeiCpuS3Lib.inf -# -# NC -# - PeiSaPolicyLib|$(PLATFORM_SI_PACKAGE)/NorthCluster/Library/PeiSaPolicyLib/PeiSaPolicyLib.inf # # TXE -- 2.11.0.windows.1