From: "Nate DeSimone" <nathaniel.l.desimone@intel.com>
To: devel@edk2.groups.io
Cc: Chasel Chiu <chasel.chiu@intel.com>,
Mike Kinney <michael.d.kinney@intel.com>,
Isaac Oram <isaac.w.oram@intel.com>,
Mohamed Abbas <mohamed.abbas@intel.com>,
Michael Kubacki <michael.kubacki@microsoft.com>,
Zachary Bobroff <zacharyb@ami.com>,
Harikrishna Doppalapudi <harikrishnad@ami.com>
Subject: [edk2-non-osi] [PATCH V1 2/9] PurleySiliconBinPkg/FV: Add RELEASE FvLateSilicon
Date: Tue, 11 May 2021 02:54:27 -0700 [thread overview]
Message-ID: <20210511095434.12575-3-nathaniel.l.desimone@intel.com> (raw)
In-Reply-To: <20210511095434.12575-1-nathaniel.l.desimone@intel.com>
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Mike Kinney <michael.d.kinney@intel.com>
Cc: Isaac Oram <isaac.w.oram@intel.com>
Cc: Mohamed Abbas <mohamed.abbas@intel.com>
Cc: Michael Kubacki <michael.kubacki@microsoft.com>
Cc: Zachary Bobroff <zacharyb@ami.com>
Cc: Harikrishna Doppalapudi <harikrishnad@ami.com>
Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
---
.../FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv | Bin 0 -> 429688 bytes
.../RELEASE/FVLATESILICON.Fv.txt | 17 +
.../FvLateSilicon/RELEASE/FvLateSilicon.inf | 3811 +++++++++++++++++
3 files changed, 3828 insertions(+)
create mode 100644 Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv
create mode 100644 Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv.txt
create mode 100644 Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FvLateSilicon.inf
diff --git a/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv b/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv
new file mode 100644
index 0000000000000000000000000000000000000000..4c919ad135c911a903b8e6f8e53122723c7382fa
GIT binary patch
literal 429688
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�Ec9m`vh&zwb}WB(4DH?<tdb6nXYbI{lPP;^Tn*
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�S62{Po{Q
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
literal 0
HcmV?d00001
diff --git a/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv.txt b/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv.txt
new file mode 100644
index 0000000..246a95b
--- /dev/null
+++ b/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FVLATESILICON.Fv.txt
@@ -0,0 +1,17 @@
+EFI_FV_TOTAL_SIZE = 0x68e78
+EFI_FV_TAKEN_SIZE = 0x68e78
+0x00000078 56D60EE4-5CCF-485C-BBBB-FEDAE2B24146
+0x00002CF0 D96A2393-8790-4BAA-9CEB-42533F016EE9
+0x00005F88 62D171CB-78CD-4480-8678-C6A2A797A8DE
+0x0000D668 40BEAB40-CECE-4909-B133-20A413AE19E9
+0x00029330 274F0C8F-9E57-41D8-9966-29CCD48D31C2
+0x00029ED0 A3FF0EF5-0C28-42F5-B544-8C7DE1E80014
+0x00039570 06D20D84-A032-4E25-969A-346D255E46D1
+0x0003CBF8 870E0F5A-1981-45F6-AE26-0391425CC46F
+0x00040698 63809859-F029-41C3-9F34-EEEB9EA787A5
+0x00048B38 D58EBCE1-AF26-488D-BE66-C164417F8C13
+0x0004C948 DE23ACEE-CF55-4FB6-AA77-984AB53DE823
+0x00057750 B0D6ED53-B844-43F5-BD2F-61095264E77E
+0x00060038 D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC
+0x00065D60 A0BAD9F7-AB78-491B-B583-C52B7F84B9E0
+0x000671D0 27F4917B-A707-4AAD-9676-26DF168CBF0D
diff --git a/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FvLateSilicon.inf b/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FvLateSilicon.inf
new file mode 100644
index 0000000..79e79f6
--- /dev/null
+++ b/Silicon/Intel/PurleySiliconBinPkg/FV/FvLateSilicon/RELEASE/FvLateSilicon.inf
@@ -0,0 +1,3811 @@
+### @file
+#
+# Copyright (c) 2018 - 2021, 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
+# 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 = FvLateSilicon
+ FILE_GUID = 5EB4D9EE-0296-4353-83AB-076AA655EAEC
+ MODULE_TYPE = DXE_DRIVER
+ VERSION_STRING = 1.0
+
+[Binaries]
+ FV|FVLATESILICON.Fv
+
+# #
+# # This file contains 'Framework Code' and is licensed as such
+# # under the terms of your license agreement with Intel or your
+# # vendor. This file may not be modified, except as allowed by
+# # additional terms of your license agreement.
+# #
+# #
+# ## @file
+# #
+# # Register Access Protocol installation for Runtime
+# #
+# # Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by such
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = RegAccessDxe
+# FILE_GUID = 56D60EE4-5CCF-485C-BBBB-FEDAE2B24146
+# MODULE_TYPE = DXE_RUNTIME_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = UsraDxeInit
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|RegAccessDxe.efi
+# DXE_DEPEX|RegAccessDxe.depex
+# DISPOSABLE|RegAccessDxe.pdb
+#
+[PatchPcd.X64]
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0000000080000000|0x1ccc # 0x1C10+0xbc
+
+
+# [Protocols.X64]
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiIioUdsProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gEfiCpRcPkgTokenSpaceGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+#
+[PcdEx.X64]
+ gEfiCpRcPkgTokenSpaceGuid.PcdPcieMmcfgTablePtr
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # PurleyRcPkg/Library/UsraRegisterFilterLibNull/UsraRegisterFilterLibNull.inf
+# # PurleyRcPkg/Library/USRATraceLibNull/USRATraceLibNull.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/PcieAddressLib/PcieAddressLib.inf
+# # PurleySktPkg/Library/CsrToPcieLib/CsrToPcieDxeLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # PurleyRcPkg/Library/UsraAccessLib/UsraAccessLib.inf
+#
+# [Depex.X64]
+# # (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiIioUdsProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# #
+# # This file contains 'Framework Code' and is licensed as such
+# # under the terms of your license agreement with Intel or your
+# # vendor. This file may not be modified, except as allowed by
+# # additional terms of your license agreement.
+# #
+# #
+# ## @file
+# #
+# # Register Access Protocol installation for SMM
+# #
+# # Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.<BR>
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by such
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# #
+# ##
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = RegAccessSMM
+# FILE_GUID = D96A2393-8790-4BAA-9CEB-42533F016EE9
+# MODULE_TYPE = DXE_SMM_DRIVER
+# VERSION_STRING = 1.0
+# PI_SPECIFICATION_VERSION = 0x0001000A
+# ENTRY_POINT = UsraSmmInit
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|RegAccessSMM.efi
+# SMM_DEPEX|RegAccessSMM.depex
+# DISPOSABLE|RegAccessSMM.pdb
+#
+[PatchPcd.X64]
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0000000080000000|0x4d68 # 0x2010+0x2d58
+
+
+# [Protocols.X64]
+# gUsraProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmBase2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiIioUdsProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gEfiCpRcPkgTokenSpaceGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+#
+[PcdEx.X64]
+ gEfiCpRcPkgTokenSpaceGuid.PcdPcieMmcfgTablePtr
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
+# # MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # PurleyRcPkg/Library/UsraRegisterFilterLibNull/UsraRegisterFilterLibNull.inf
+# # PurleyRcPkg/Library/USRATraceLibNull/USRATraceLibNull.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/PcieAddressLib/PcieAddressLib.inf
+# # PurleySktPkg/Library/CsrToPcieLib/CsrToPcieDxeLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # PurleyRcPkg/Library/UsraAccessLib/UsraAccessLib.inf
+# # PurleySktPkg/Library/UsraQuiesceLib/UsraQuiesceLib.inf
+#
+# [Depex.X64]
+# # (gEfiSmmBase2ProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gEfiIioUdsProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# #
+# # This file contains an 'Intel Peripheral Driver' and is
+# # licensed for Intel CPUs and chipsets under the terms of your
+# # license agreement with Intel or your vendor. This file may
+# # be modified by the user, subject to additional terms of the
+# # license agreement
+# #
+# ## @file
+# # The DXE driver produces CPU Architecture Protocol defined in the PI specification.
+# #
+# # This driver does some CPU specific initliazations for the BSP, installs CPU Architecture Protocol,
+# # and refreshes the GCD memory space attributes to be consistent with platform hardware status.
+# #
+# # Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
+# #
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by such
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = CpuArchDxe
+# FILE_GUID = 62D171CB-78CD-4480-8678-C6A2A797A8DE
+# MODULE_TYPE = DXE_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = InitializeCpu
+# MODULE_UNI_FILE = CpuArchDxe.uni
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ MdeModulePkg/MdeModulePkg.dec
+ PurleyRefreshSiliconPkg/Override/IA32FamilyCpuPkg/IA32FamilyCpuPkg.dec
+
+# [Binaries.X64]
+# PE32|CpuArchDxe.efi
+# DXE_DEPEX|CpuArchDxe.depex
+# DISPOSABLE|CpuArchDxe.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# ## SOMETIMES_CONSUMES
+# gEfiMpServiceProtocolGuid
+#
+# ## PRODUCES
+# gEfiCpuArchProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiStatusCodeRuntimeProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# ## SOMETIMES_CONSUMES ## SystemTable
+# gEfiVectorHandoffTableGuid
+#
+# gEfiCpuTokenSpaceGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeSpecificDataGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeDataTypeDebugGuid
+#
+#
+[PcdEx.X64]
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuPageTableAddress
+
+ ## PRODUCES
+ gEfiCpuTokenSpaceGuid.PcdCpuMtrrTableAddress
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+# # PurleyOpenBoardPkg/BoardMtOlympus/Library/BasePlatformHookLib/BasePlatformHookLib.inf
+# # MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
+# # MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
+# # MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
+# # MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
+# # UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
+# # UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
+# # UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
+# # UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
+#
+# [Depex.X64]
+# # (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+# [UserExtensions.TianoCore."ExtraFiles"]
+# CpuArchDxeExtra.uni
+#
+#
+#
+# #
+# # The following information is for reference only and not required by the build tools.
+# #
+# # VALID_ARCHITECTURES = IA32 X64
+# #
+# # Create Event Guid C Name: Event Type: EVENT_TYPE_PERIODIC_TIMER
+# #
+# # HOB Guid C Name: gEfiHtBistHobGuid Hob Type: GUID_EXTENSION
+# #
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm /Od
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# #
+# # This file contains an 'Intel Peripheral Driver' and is
+# # licensed for Intel CPUs and chipsets under the terms of your
+# # license agreement with Intel or your vendor. This file may
+# # be modified by the user, subject to additional terms of the
+# # license agreement
+# #
+# ## @file
+# # CPU MP DXE Driver.
+# #
+# # This DXE Driver does processor initialization, configures multi-processor environment,
+# # and installs MP Services Protocol.
+# #
+# # Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
+# #
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by such
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = CpuMpDxe
+# FILE_GUID = 40BEAB40-CECE-4909-B133-20A413AE19E9
+# MODULE_TYPE = DXE_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = MultiProcessorInitialize
+# MODULE_UNI_FILE = CpuMpDxe.uni
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ MdeModulePkg/MdeModulePkg.dec
+ UefiCpuPkg/UefiCpuPkg.dec
+ PurleyRefreshSiliconPkg/Override/IA32FamilyCpuPkg/IA32FamilyCpuPkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|CpuMpDxe.efi
+# DXE_DEPEX|CpuMpDxe.depex
+# DISPOSABLE|CpuMpDxe.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# ## PRODUCES
+# gEfiMpServiceProtocolGuid
+#
+# ## CONSUMES
+# gEfiCpuArchProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGenericMemTestProtocolGuid
+#
+# ## NOTIFY
+# ## SOMETIMES_CONSUMES
+# ## NOTIFY
+# gEfiSmmConfigurationProtocolGuid
+#
+# ## CONSUMES
+# gEfiTimerArchProtocolGuid
+#
+# ## NOTIFY
+# ## CONSUMES
+# gEfiDxeSmmReadyToLockProtocolGuid
+#
+# #
+# # PURLEY_OVERRIDE_BEGIN
+# #
+# gEfiIioUdsProtocolGuid
+#
+# # PROTOCOL ALWAYS_CONSUMED
+# gEfiCpuCsrAccessGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## CONSUMES
+# gEfiHiiStringProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiHiiDatabaseProtocolGuid
+#
+# ## CONSUMES
+# gEfiHiiConfigRoutingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiStatusCodeRuntimeProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiFormBrowser2ProtocolGuid
+#
+#
+# [Ppis.X64]
+# ## UNDEFINED # HOB
+# gEfiSecPlatformInformation2PpiGuid
+#
+# ## UNDEFINED # HOB
+# gEfiSecPlatformInformationPpiGuid
+#
+#
+# [Guids.X64]
+# ## CONSUMES ## HOB
+# gEfiHtBistHobGuid
+#
+# ## CONSUMES ## Event
+# gEfiEventExitBootServicesGuid
+#
+# ## CONSUMES ## Event
+# gIdleLoopEventGuid
+#
+# ## CONSUMES ## TokenSpaceGuid
+# gEfiCpuTokenSpaceGuid
+#
+# #
+# # PURLEY_OVERRIDE_BEGIN
+# #
+# gPlatformTokenSpaceGuid
+#
+# gUefiCpuPkgTokenSpaceGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeSpecificDataGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeDataTypeDebugGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEdkiiIfrBitVarstoreGuid
+#
+#
+[PcdEx.X64]
+ #
+ # PURLEY_OVERRIDE_END
+ #
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdPlatformCpuAssetTags
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdPlatformCpuSocketNames
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdPlatformCpuSocketCount
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdPlatformCpuFrequencyLists
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds
+
+ ## CONSUMES
+ ## PRODUCES
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorFeatureSetting
+
+ ## CONSUMES
+ ## PRODUCES
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorFeatureCapability
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorFeatureUserConfiguration
+
+ ## CONSUMES
+ ## PRODUCES
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorFeatureSettingEx1
+
+ ## CONSUMES
+ ## PRODUCES
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorFeatureCapabilityEx1
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorFeatureUserConfigurationEx1
+
+ ## PRODUCES
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuConfigContextBuffer
+
+ ## PRODUCES
+ ## SOMETIMES_PRODUCES
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuCallbackSignal
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdIsPowerOnReset
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuPageTableAddress
+
+ ## CONSUMES
+ ## SOMETIMES_PRODUCES
+ gEfiCpuTokenSpaceGuid.PcdCpuMtrrTableAddress
+
+ ## PRODUCES
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuS3DataAddress
+
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuHwCoordination
+
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuEnergyPolicy
+
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuClockModulationDutyCycle
+
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuAcpiLvl2Addr
+
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuPackageCStateLimit
+
+ #
+ # PURLEY_OVERRIDE_BEGIN
+ #
+ gEfiCpuTokenSpaceGuid.PcdCpuCoreCStateValue
+
+ #
+ # PURLEY_OVERRIDE_END
+ #
+ ## SOMETIMES_CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuDcuMode
+
+ #
+ # PURLEY_OVERRIDE_BEGIN
+ #
+ gEfiCpuTokenSpaceGuid.PcdCpuProcessorMsrLockCtrl
+
+ #ESS Override Start
+ # 4168379: Odin: PL1 cannot be changed greater than 200W and lock bit set.
+ gEfiCpuTokenSpaceGuid.PcdCpuTurboOverride
+
+ #ESS Override End
+ gEfiCpuTokenSpaceGuid.PcdPchTraceHubEn
+
+ gEfiCpuTokenSpaceGuid.PcdCpuIioLlcWaysBitMask
+
+ gEfiCpuTokenSpaceGuid.PcdCpuExpandedIioLlcWaysBitMask
+
+ gEfiCpuTokenSpaceGuid.PcdCpuRemoteWaysBitMask
+
+ gEfiCpuTokenSpaceGuid.PcdCpuQlruCfgBitMask
+
+ gEfiCpuTokenSpaceGuid.PcdSbspSelection
+
+ gEfiCpuTokenSpaceGuid.PcdCpuSocketId
+
+ #
+ # PURLEY_OVERRIDE_BEGIN
+ #
+ gEfiCpuTokenSpaceGuid.PcdCpuRRQCountThreshold
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+# # MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # PurleySktPkg/Override/IA32FamilyCpuPkg/Library/CpuConfigLib/CpuConfigLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
+# # MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
+# # MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
+# # UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
+# # UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
+# # UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
+#
+# [Depex.X64]
+# # (gEfiTimerArchProtocolGuid AND gEfiGenericMemTestProtocolGuid AND gIntelCpuPcdsSetDoneProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiHiiStringProtocolGuid AND gEfiHiiDatabaseProtocolGuid AND gEfiHiiConfigRoutingProtocolGuid) AND (gEfiHiiStringProtocolGuid AND gEfiHiiDatabaseProtocolGuid AND gEfiHiiConfigRoutingProtocolGuid) AND (gEfiHiiStringProtocolGuid AND gEfiHiiDatabaseProtocolGuid AND gEfiHiiConfigRoutingProtocolGuid) AND (gEfiHiiStringProtocolGuid AND gEfiHiiDatabaseProtocolGuid AND gEfiHiiConfigRoutingProtocolGuid) AND
+# # (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+# [UserExtensions.TianoCore."ExtraFiles"]
+# CpuMpDxeExtra.uni
+# #
+# # PURLEY_OVERRIDE_BEGIN_4929970
+# #
+#
+#
+#
+# #
+# # The following information is for reference only and not required by the build tools.
+# #
+# # VALID_ARCHITECTURES = IA32 X64
+# #
+# # Create Event Guid C Name: Event Type: EVENT_TYPE_PERIODIC_TIMER
+# #
+# # HOB Guid C Name: gEfiHtBistHobGuid Hob Type: GUID_EXTENSION
+# #
+# #
+# # PURLEY_OVERRIDE_END
+# #
+# #
+# # PURLEY_OVERRIDE_END
+# #
+# #
+# # PURLEY_OVERRIDE_END
+# #
+# #
+# # PURLEY_OVERRIDE_BEGIN
+# #
+# #
+# # PURLEY_OVERRIDE_END
+# #
+# #
+# # PURLEY_OVERRIDE_END
+# #
+# ## CONSUMES
+# ## UNDEFINED # Token
+# #
+# # PURLEY_OVERRIDE_BEGIN
+# #
+# #gEfiCpuTokenSpaceGuid.PcdCpuSocketId
+# #
+# # PURLEY_OVERRIDE_END
+# #
+# #
+# # PURLEY_OVERRIDE_BEGIN_4929970
+# #
+# #
+# # PURLEY_OVERRIDE_END_4929970
+# #
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /ALIGN:128 /DEBUG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Component description file for SmmAccess module
+# #
+# # Copyright (c) 2009 - 2016, 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
+# # 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.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = SmmAccess
+# FILE_GUID = 274F0C8F-9E57-41d8-9966-29CCD48D31C2
+# MODULE_TYPE = DXE_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = SmmAccessDriverEntryPoint
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|SmmAccess.efi
+# DXE_DEPEX|SmmAccess.depex
+# DISPOSABLE|SmmAccess.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# gEfiPciRootBridgeIoProtocolGuid
+#
+# gEfiIioUdsProtocolGuid
+#
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gEfiSmmPeiSmramMemoryReserveGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+#
+# [Depex.X64]
+# # (gEfiPciRootBridgeIoProtocolGuid AND gEfiIioUdsProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # CPU SMM driver.
+# #
+# # This SMM driver performs SMM initialization, deploy SMM Entry Vector,
+# # provides CPU specific services in SMM.
+# #
+# # Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>
+# # Copyright (c) 2017, AMD Incorporated. 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
+# # 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.
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = PiSmmCpuDxeSmm
+# FILE_GUID = A3FF0EF5-0C28-42f5-B544-8C7DE1E80014
+# MODULE_TYPE = DXE_SMM_DRIVER
+# VERSION_STRING = 1.0
+# PI_SPECIFICATION_VERSION = 0x0001000A
+# ENTRY_POINT = PiCpuSmmEntry
+# MODULE_UNI_FILE = PiSmmCpuDxeSmm.uni
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ MdeModulePkg/MdeModulePkg.dec
+ UefiCpuPkg/UefiCpuPkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+ PurleyRefreshSiliconPkg/Override/IA32FamilyCpuPkg/IA32FamilyCpuPkg.dec
+
+# [Binaries.X64]
+# PE32|PiSmmCpuDxeSmm.efi
+# SMM_DEPEX|PiSmmCpuDxeSmm.depex
+# DISPOSABLE|PiSmmCpuDxeSmm.pdb
+#
+[PatchPcd.X64]
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuSmmUseSmmEnableIndication|0x00|0x372f8 # 0xD3C0+0x29f38
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuSmmUseDelayIndication|0x00|0x372f9 # 0xD3C1+0x29f38
+
+ ## CONSUMES
+ gEfiCpuTokenSpaceGuid.PcdCpuSmmUseBlockIndication|0x00|0x372fa # 0xD3C2+0x29f38
+
+
+# [Protocols.X64]
+# ## CONSUMES
+# ## CONSUMES
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## CONSUMES
+# gEfiMpServiceProtocolGuid
+#
+# ## PRODUCES
+# gEfiSmmConfigurationProtocolGuid
+#
+# ## PRODUCES
+# gEfiSmmCpuProtocolGuid
+#
+# ## NOTIFY
+# gEfiSmmReadyToLockProtocolGuid
+#
+# ## PRODUCES
+# gEfiSmmCpuServiceProtocolGuid
+#
+# ## PRODUCES
+# gEdkiiSmmMemoryAttributeProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmBase2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmStatusCodeProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# ## SOMETIMES_CONSUMES ## HOB # it is used for S3 boot.
+# gEfiAcpiVariableGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# ## SOMETIMES_PRODUCES ## Variable:L"SmmProfileData"
+# gEfiGlobalVariableGuid
+#
+# ## SOMETIMES_CONSUMES ## SystemTable
+# gEfiAcpi20TableGuid
+#
+# ## SOMETIMES_CONSUMES ## SystemTable
+# gEfiAcpi10TableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEdkiiPiSmmMemoryAttributesTableGuid
+#
+# gUefiCpuPkgTokenSpaceGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeSpecificDataGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeDataTypeDebugGuid
+#
+#
+[PcdEx.X64]
+ ## SOMETIMES_CONSUMES
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuS3DataAddress
+
+ ## SOMETIMES_PRODUCES
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugDataAddress
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # PurleyOpenBoardPkg/BoardMtOlympus/Library/BasePlatformHookLib/BasePlatformHookLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+# # MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
+# # MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
+# # MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
+# # UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
+# # MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
+# # UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
+# # MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
+# # UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
+# # UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
+# # UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
+# # PurleySktPkg/Override/IA32FamilyCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
+#
+# [Depex.X64]
+# # (gEfiMpServiceProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+# [UserExtensions.TianoCore."ExtraFiles"]
+# PiSmmCpuDxeSmmExtra.uni
+#
+#
+#
+# #
+# # The following information is for reference only and not required by the build tools.
+# #
+# # VALID_ARCHITECTURES = IA32 X64
+# #
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # CpuCsrAccess Protocol
+# #
+# # Copyright (c) 2009 - 2016, 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
+# # 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.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = CpuCsrAccess
+# FILE_GUID = 06D20D84-A032-4e25-969A-346D255E46D1
+# MODULE_TYPE = DXE_RUNTIME_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = CpuCsrAccessStart
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|CpuCsrAccess.efi
+# DXE_DEPEX|CpuCsrAccess.depex
+# DISPOSABLE|CpuCsrAccess.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# gEfiIioUdsProtocolGuid
+#
+# gEfiCpuCsrAccessGuid
+#
+# gEfiSmmBase2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # PurleyRcPkg/Library/DxeUsraLib/DxeUsraLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+#
+# [Depex.X64]
+# # (gEfiIioUdsProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gUsraProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # CpuCsrAccess Protocol
+# #
+# # Copyright (c) 2009 - 2016, 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
+# # 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.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = CpuCsrAccessSMM
+# FILE_GUID = 870E0F5A-1981-45f6-AE26-0391425CC46F
+# MODULE_TYPE = DXE_SMM_DRIVER
+# VERSION_STRING = 1.0
+# PI_SPECIFICATION_VERSION = 0x0001000A
+# ENTRY_POINT = CpuCsrAccessStart
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|CpuCsrAccessSMM.efi
+# SMM_DEPEX|CpuCsrAccessSMM.depex
+# DISPOSABLE|CpuCsrAccessSMM.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# gEfiIioUdsProtocolGuid
+#
+# gEfiCpuCsrAccessGuid
+#
+# ## CONSUMES
+# gEfiSmmBase2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
+# # MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # PurleyRcPkg/Library/DxeUsraLib/DxeSmmUsraLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+#
+# [Depex.X64]
+# # (gEfiSmmBase2ProtocolGuid AND gEfiIioUdsProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Status Code Handler Driver which produces general handlers and hook them
+# # onto the DXE status code router.
+# #
+# # Copyright (c) 2006 - 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.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = IioInit
+# FILE_GUID = 63809859-F029-41c3-9F34-EEEB9EA787A5
+# MODULE_TYPE = DXE_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = IioInitEntry
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyOpenBoardPkg/OpenBoardPkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|IioInit.efi
+# DXE_DEPEX|IioInit.depex
+# DISPOSABLE|IioInit.pdb
+#
+[PatchPcd.X64]
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0000000080000000|0x45160 # 0x4A70+0x406f0
+
+
+# [Protocols.X64]
+# gEfiIioSystemProtocolGuid
+#
+# gEfiCpuCsrAccessGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# gEfiIioUdsProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiSmmCpuIo2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# gEfiPciCallbackProtocolGuid
+#
+# gEfiMpServiceProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gIioPolicyHobGuid
+#
+# gEfiCpRcPkgTokenSpaceGuid
+#
+# gOemSkuTokenSpaceGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# gEfiEventExitBootServicesGuid
+#
+# gEfiEndOfDxeEventGroupGuid
+#
+#
+[PcdEx.X64]
+ gOemSkuTokenSpaceGuid.PcdSetupData
+
+ gOemSkuTokenSpaceGuid.PcdPchRcConfigurationData
+
+ gOemSkuTokenSpaceGuid.PcdSocketIioConfigData
+
+ gOemSkuTokenSpaceGuid.PcdSocketCommonRcConfigData
+
+ gOemSkuTokenSpaceGuid.PcdSocketMpLinkConfigData
+
+ gOemSkuTokenSpaceGuid.PcdSocketMemoryConfigData
+
+ gOemSkuTokenSpaceGuid.PcdSocketPowerManagementConfigData
+
+ gOemSkuTokenSpaceGuid.PcdSocketProcessorCoreConfigData
+
+ gEfiCpRcPkgTokenSpaceGuid.PcdPcieMmcfgTablePtr
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # LewisburgPkg/Library/PeiDxeSmmPchPcrLib/PeiDxeSmmPchPcrLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchInfoLib/PeiDxeSmmPchInfoLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcieRpLib/PeiDxeSmmPchPcieRpLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # PurleyOpenBoardPkg/OemHook/Library/OemIioInit/OemIioInitHooks.inf
+# # PurleySktPkg/Iio/Library/PeiDxeCommonIioInitLib/IioInitLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # PurleyRcPkg/Library/DxeMmPciBaseLib/DxeMmPciBaseLib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # PurleyRcPkg/Library/UsraRegisterFilterLibNull/UsraRegisterFilterLibNull.inf
+# # PurleyRcPkg/Library/USRATraceLibNull/USRATraceLibNull.inf
+# # PurleyRcPkg/Library/PcieAddressLib/PcieAddressLib.inf
+# # PurleyRcPkg/Library/CsrToPcieLibNull/BaseCsrToPcieLibNull.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # PurleyRcPkg/Library/UsraAccessLib/UsraAccessLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+# # MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf
+# # PurleyRcPkg/Library/PcieCommonInitLib/PcieCommonInitLib.inf
+# # PurleySktPkg/Iio/Library/DxeIioInitLib/IioInitDxeLib.inf
+#
+# [Depex.X64]
+# # (gEfiMpServiceProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gUsraProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# #
+# # Copyright (c) 2009 - 2016, 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
+# # 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.
+# #
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = PciHostBridge
+# FILE_GUID = D58EBCE1-AF26-488d-BE66-C164417F8C13
+# MODULE_TYPE = DXE_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = InitializePciHostBridge
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|PciHostBridge.efi
+# DXE_DEPEX|PciHostBridge.depex
+# DISPOSABLE|PciHostBridge.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# gEfiMetronomeArchProtocolGuid
+#
+# gEfiCpuIo2ProtocolGuid
+#
+# gEfiIioUdsProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# gEfiPciRootBridgeIoProtocolGuid
+#
+# gEfiPciHostBridgeResourceAllocationProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gEfiSocketPciResourceDataGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # PurleyRcPkg/Library/DxeUsraLib/DxeUsraLib.inf
+#
+# [Depex.X64]
+# # (gEfiCpuIo2ProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiIioUdsProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid) AND (gUsraProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Component description file for Pch Initialization driver
+# #
+# # @copyright
+# # Copyright (c) 1999 - 2016 Intel Corporation. All rights reserved
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by the
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# # This file contains an 'Intel Peripheral Driver' and is uniquely
+# # identified as "Intel Reference Module" and is licensed for Intel
+# # CPUs and chipsets under the terms of your license agreement with
+# # Intel or your vendor. This file may be modified by the user, subject
+# # to additional terms of the license agreement.
+# #
+# #@par Specification Reference:
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = PchInitDxe
+# FILE_GUID = DE23ACEE-CF55-4fb6-AA77-984AB53DE823
+# MODULE_TYPE = DXE_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = PchInitEntryPointUefi
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|PchInitDxe.efi
+# DXE_DEPEX|PchInitDxe.depex
+# DISPOSABLE|PchInitDxe.pdb
+#
+[PatchPcd.X64]
+ #SERVER_BIOS ## CONSUMES
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0000000080000000|0x52ae0 # 0x6140+0x4c9a0
+
+
+# [Protocols.X64]
+# ## PRODUCES
+# gPchInfoProtocolGuid
+#
+# ## PRODUCES
+# gPchNvsAreaProtocolGuid
+#
+# ## PRODUCES
+# gPchEmmcTuningProtocolGuid
+#
+# ## CONSUMES
+# gEfiPciIoProtocolGuid
+#
+# ## CONSUMES
+# ## CONSUMES
+# gEfiAcpiTableProtocolGuid
+#
+# ## CONSUMES
+# gEfiBlockIoProtocolGuid
+#
+# gHeciProtocolGuid
+#
+# ## CONSUMES
+# gEfiPciEnumerationCompleteProtocolGuid
+#
+# ## CONSUMES
+# gPchPcieIoTrapProtocolGuid
+#
+# ## CONSUMES #SERVER_BIOS
+# gPchSataEfiLoadProtocolGuid
+#
+# ## CONSUMES #SERVER_BIOS
+# gPchsSataEfiLoadProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiSmmCpuIo2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiAcpiSdtProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gEfiEndOfDxeEventGroupGuid
+#
+# gEfiAcpiTableGuid
+#
+# gSiPolicyHobGuid
+#
+# gPchPolicyHobGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# gPlatformGpioConfigGuid
+#
+# gEfiCpRcPkgTokenSpaceGuid
+#
+#
+[PcdEx.X64]
+ gEfiCpRcPkgTokenSpaceGuid.PcdPcieMmcfgTablePtr
+
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/DxeMmPciBaseLib/DxeMmPciBaseLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchInfoLib/PeiDxeSmmPchInfoLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchP2sbLib/PeiDxeSmmPchP2sbLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcrLib/PeiDxeSmmPchPcrLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchSbiAccessLib/PeiDxeSmmPchSbiAccessLib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchCycleDecodingLib/PeiDxeSmmPchCycleDecodingLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # LewisburgPkg/Library/PeiDxeSmmGpioLib/PeiDxeSmmGpioLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcieRpLib/PeiDxeSmmPchPcieRpLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # LewisburgPkg/LibraryPrivate/PeiDxeSmmPchPciExpressHelpersLib/PeiDxeSmmPchPciExpressHelpersLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # LewisburgPkg/Library/DxeAslUpdateLib/DxeAslUpdateLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchSerialIoLib/PeiDxeSmmPchSerialIoLib.inf
+# # LewisburgPkg/LibraryPrivate/DxePchHdaLib/DxePchHdaLib.inf
+# # LewisburgPkg/LibraryPrivate/PeiDxeSmmPchInitCommonLib/PeiDxeSmmPchInitCommonLib.inf
+# # PurleyRcPkg/Library/PcieAddressLib/PcieAddressLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPmcLib/PeiDxeSmmPchPmcLib.inf
+#
+# [Depex.X64]
+# # (gEfiPciHostBridgeResourceAllocationProtocolGuid ## This is to ensure that PCI MMIO and IO resource has been prepared and available for this driver to allocate.) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gUsraProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Component description file for the Pch SMI Dispatch Handlers module
+# #
+# # @copyright
+# # Copyright (c) 1999 - 2015 Intel Corporation. All rights reserved
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by the
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# # This file contains an 'Intel Peripheral Driver' and is uniquely
+# # identified as "Intel Reference Module" and is licensed for Intel
+# # CPUs and chipsets under the terms of your license agreement with
+# # Intel or your vendor. This file may be modified by the user, subject
+# # to additional terms of the license agreement.
+# #
+# #@par Specification Reference:
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = PchSmiDispatcher
+# FILE_GUID = B0D6ED53-B844-43f5-BD2F-61095264E77E
+# MODULE_TYPE = DXE_SMM_DRIVER
+# VERSION_STRING = 1.0
+# PI_SPECIFICATION_VERSION = 0x0001000a
+# ENTRY_POINT = InitializePchSmmDispatcher
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ MdeModulePkg/MdeModulePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|PchSmiDispatcher.efi
+# SMM_DEPEX|PchSmiDispatcher.depex
+# DISPOSABLE|PchSmiDispatcher.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# ##CONSUMES
+# gEfiPciRootBridgeIoProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmGpiDispatch2ProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmSxDispatch2ProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmSwDispatch2ProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmUsbDispatch2ProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmPowerButtonDispatch2ProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmPeriodicTimerDispatch2ProtocolGuid
+#
+# ## CONSUMES
+# ##CONSUMES
+# gEfiSmmBase2ProtocolGuid
+#
+# ##CONSUMES
+# gEfiSmmCpuProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmReadyToLockProtocolGuid
+#
+# ##PRODUCES
+# gEfiSmmIoTrapDispatch2ProtocolGuid
+#
+# ##PRODUCES
+# gPchSmmIoTrapControlGuid
+#
+# ##PRODUCES
+# gPchTcoSmiDispatchProtocolGuid
+#
+# ##PRODUCES
+# gPchPcieSmiDispatchProtocolGuid
+#
+# ##PRODUCES
+# gPchAcpiSmiDispatchProtocolGuid
+#
+# ##PRODUCES
+# gPchGpioUnlockSmiDispatchProtocolGuid
+#
+# ##PRODUCES
+# gPchSmiDispatchProtocolGuid
+#
+# ##PRODUCES
+# gPchEspiSmiDispatchProtocolGuid
+#
+# ## PRODUCES
+# gPchSmmPeriodicTimerControlGuid
+#
+# ## CONSUMES
+# gPchNvsAreaProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiSmmCpuIo2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmStatusCodeProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# gPlatformGpioConfigGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeSpecificDataGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeDataTypeDebugGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED # Locate protocol
+# gSmmPerformanceProtocolGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED # Locate protocol
+# gSmmPerformanceExProtocolGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
+# # MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/DxeMmPciBaseLib/SmmMmPciBaseLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchInfoLib/PeiDxeSmmPchInfoLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchP2sbLib/PeiDxeSmmPchP2sbLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcrLib/PeiDxeSmmPchPcrLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchSbiAccessLib/PeiDxeSmmPchSbiAccessLib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchCycleDecodingLib/PeiDxeSmmPchCycleDecodingLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # LewisburgPkg/Library/PeiDxeSmmGpioLib/PeiDxeSmmGpioLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchEspiLib/PeiDxeSmmPchEspiLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcieRpLib/PeiDxeSmmPchPcieRpLib.inf
+# # MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
+# # MdeModulePkg/Library/SmmPerformanceLib/SmmPerformanceLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # LewisburgPkg/LibraryPrivate/PeiDxeSmmGpioPrivateLib/PeiDxeSmmGpioPrivateLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+# # MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.inf
+#
+# [Depex.X64]
+# # (gEfiPciRootBridgeIoProtocolGuid AND gEfiPciHostBridgeResourceAllocationProtocolGuid AND ## This is to ensure that PCI MMIO resource has been prepared and available for this driver to allocate. gEfiSmmCpuProtocolGuid AND gEfiSmmBase2ProtocolGuid AND ## This is for SmmServicesTableLib gPchNvsAreaProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiSmmCpuIo2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Component description file for PchInitSmm driver
+# #
+# # @copyright
+# # Copyright (c) 2010 - 2015 Intel Corporation. All rights reserved
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by the
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# # This file contains an 'Intel Peripheral Driver' and is uniquely
+# # identified as "Intel Reference Module" and is licensed for Intel
+# # CPUs and chipsets under the terms of your license agreement with
+# # Intel or your vendor. This file may be modified by the user, subject
+# # to additional terms of the license agreement.
+# #
+# #@par Specification Reference:
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = PchInitSmm
+# FILE_GUID = D7B10D4E-67E6-4C74-83E9-F9AF0ACC33CC
+# MODULE_TYPE = DXE_SMM_DRIVER
+# VERSION_STRING = 1.0
+# PI_SPECIFICATION_VERSION = 0x0001000a
+# ENTRY_POINT = PchInitSmmEntryPoint
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ MdeModulePkg/MdeModulePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|PchInitSmm.efi
+# SMM_DEPEX|PchInitSmm.depex
+# DISPOSABLE|PchInitSmm.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# ## CONSUMES
+# gEfiSmmIoTrapDispatch2ProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmSxDispatch2ProtocolGuid
+#
+# ## CONSUMES
+# gPchSmmIoTrapControlGuid
+#
+# ## CONSUMES
+# gEfiSmmCpuProtocolGuid
+#
+# ## CONSUMES
+# gPchNvsAreaProtocolGuid
+#
+# ## CONSUMES
+# gPchPcieSmiDispatchProtocolGuid
+#
+# ## CONSUMES
+# gPchTcoSmiDispatchProtocolGuid
+#
+# ## CONSUMES
+# gPchSmiDispatchProtocolGuid
+#
+# ## CONSUMES
+# gPchEspiSmiDispatchProtocolGuid
+#
+# ## PRODUCES
+# gPchPcieIoTrapProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmBase2ProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiSmmCpuIo2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmStatusCodeProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gSiPolicyHobGuid
+#
+# gPchPolicyHobGuid
+#
+# gPchDeviceTableHobGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# gPlatformGpioConfigGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeSpecificDataGuid
+#
+# ## SOMETIMES_CONSUMES ## UNDEFINED
+# gEfiStatusCodeDataTypeDebugGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/DxeMmPciBaseLib/SmmMmPciBaseLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchInfoLib/PeiDxeSmmPchInfoLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchP2sbLib/PeiDxeSmmPchP2sbLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcrLib/PeiDxeSmmPchPcrLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchSbiAccessLib/PeiDxeSmmPchSbiAccessLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchCycleDecodingLib/PeiDxeSmmPchCycleDecodingLib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcieRpLib/PeiDxeSmmPchPcieRpLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmGpioLib/PeiDxeSmmGpioLib.inf
+# # MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
+# # LewisburgPkg/LibraryPrivate/PeiDxeSmmPchPciExpressHelpersLib/PeiDxeSmmPchPciExpressHelpersLib.inf
+# # LewisburgPkg/LibraryPrivate/PeiDxeSmmGpioPrivateLib/PeiDxeSmmGpioPrivateLib.inf
+# # MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
+# # PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+#
+# [Depex.X64]
+# # (gEfiSmmIoTrapDispatch2ProtocolGuid AND gEfiSmmSxDispatch2ProtocolGuid AND gPchSmmIoTrapControlGuid AND gPchPcieSmiDispatchProtocolGuid AND gPchTcoSmiDispatchProtocolGuid AND gEfiSmmCpuProtocolGuid AND gPchNvsAreaProtocolGuid AND gEfiPciHostBridgeResourceAllocationProtocolGuid AND # This is to ensure that PCI MMIO resource has been prepared and available for this driver to allocate. gEfiSmmBase2ProtocolGuid # This is for SmmServicesTableLib) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiSmmCpuIo2ProtocolGuid) AND
+# # (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+# #
+# # The following information is for reference only and not required by the build tools.
+# #
+# # VALID_ARCHITECTURES = IA32 X64
+# #
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Component description file for SmmControl module
+# #
+# # @copyright
+# # Copyright (c) 1999 - 2014 Intel Corporation. All rights reserved
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by the
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# # This file contains an 'Intel Peripheral Driver' and is uniquely
+# # identified as "Intel Reference Module" and is licensed for Intel
+# # CPUs and chipsets under the terms of your license agreement with
+# # Intel or your vendor. This file may be modified by the user, subject
+# # to additional terms of the license agreement.
+# #
+# #@par Specification Reference:
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = SmmControl
+# FILE_GUID = A0BAD9F7-AB78-491b-B583-C52B7F84B9E0
+# MODULE_TYPE = DXE_RUNTIME_DRIVER
+# VERSION_STRING = 1.0
+# ENTRY_POINT = SmmControlDriverEntryInit
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|SmmControl.efi
+# DXE_DEPEX|SmmControl.depex
+# DISPOSABLE|SmmControl.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# gEfiSmmControl2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiSmmCpuIo2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# gEfiEventVirtualAddressChangeGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiDxeServicesTableGuid
+#
+# ## CONSUMES ## SystemTable
+# gEfiHobListGuid
+#
+# gPlatformGpioConfigGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/DxeMmPciBaseLib/DxeMmPciBaseLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchInfoLib/PeiDxeSmmPchInfoLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchP2sbLib/PeiDxeSmmPchP2sbLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcrLib/PeiDxeSmmPchPcrLib.inf
+# # MdePkg/Library/DxeHobLib/DxeHobLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchSbiAccessLib/PeiDxeSmmPchSbiAccessLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchCycleDecodingLib/PeiDxeSmmPchCycleDecodingLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # LewisburgPkg/Library/PeiDxeSmmGpioLib/PeiDxeSmmGpioLib.inf
+#
+# [Depex.X64]
+# # (TRUE) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gUsraProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+# #
+# # The following information is for reference only and not required by the build tools.
+# #
+# # VALID_ARCHITECTURES = IA32 X64
+# #
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
+# ## MSFT:RELEASE_VS2015x86_X64_ASMLINK_FLAGS = /nologo /tiny
+# ## MSFT:RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
+# ## @file
+# # Component description file for the SPI SMM driver.
+# #
+# # @copyright
+# # Copyright (c) 2008 - 2015 Intel Corporation. All rights reserved
+# # This software and associated documentation (if any) is furnished
+# # under a license and may only be used or copied in accordance
+# # with the terms of the license. Except as permitted by the
+# # license, no part of this software or documentation may be
+# # reproduced, stored in a retrieval system, or transmitted in any
+# # form or by any means without the express written consent of
+# # Intel Corporation.
+# # This file contains an 'Intel Peripheral Driver' and is uniquely
+# # identified as "Intel Reference Module" and is licensed for Intel
+# # CPUs and chipsets under the terms of your license agreement with
+# # Intel or your vendor. This file may be modified by the user, subject
+# # to additional terms of the license agreement.
+# #
+# #@par Specification Reference:
+# #
+# ##
+#
+# # DO NOT EDIT
+# # FILE auto-generated
+#
+# [Defines]
+# INF_VERSION = 0x00010017
+# BASE_NAME = PchSpiSmm
+# FILE_GUID = 27F4917B-A707-4aad-9676-26DF168CBF0D
+# MODULE_TYPE = DXE_SMM_DRIVER
+# VERSION_STRING = 1.0
+# PI_SPECIFICATION_VERSION = 0x0001000a
+# ENTRY_POINT = InstallPchSpi
+#
+[Packages.X64]
+ MdePkg/MdePkg.dec
+ PurleyRefreshSiliconPkg/SiPkg.dec
+
+# [Binaries.X64]
+# PE32|PchSpiSmm.efi
+# SMM_DEPEX|PchSpiSmm.depex
+# DISPOSABLE|PchSpiSmm.pdb
+#
+[PatchPcd.X64]
+
+# [Protocols.X64]
+# # PRODUCES #SERVER_BIOS
+# gEfiSmmSpiProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gPcdProtocolGuid
+#
+# ## CONSUMES
+# gEfiPcdProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gGetPcdInfoProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGetPcdInfoProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmBase2ProtocolGuid
+#
+# ## CONSUMES
+# gEfiSmmAccess2ProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiDevicePathProtocolGuid
+#
+# ## UNDEFINED
+# gEfiDebugPortProtocolGuid
+#
+# ## SOMETIMES_PRODUCES
+# gEfiDriverBindingProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiSimpleTextOutProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiGraphicsOutputProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiHiiFontProtocolGuid
+#
+# ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
+# gEfiUgaDrawProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentNameProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiComponentName2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfigurationProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverConfiguration2ProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnosticsProtocolGuid
+#
+# ## SOMETIMES_PRODUCES # User chooses to produce it
+# gEfiDriverDiagnostics2ProtocolGuid
+#
+# gEfiSmmCpuIo2ProtocolGuid
+#
+# ## CONSUMES
+# gUsraProtocolGuid
+#
+# ## SOMETIMES_CONSUMES
+# gEfiLoadedImageProtocolGuid
+#
+#
+# [Ppis.X64]
+#
+# [Guids.X64]
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVTUTF8Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100Guid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVT100PlusGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPcAnsiGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiUartDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiSasDevicePathGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualDiskGuid
+#
+# ## SOMETIMES_CONSUMES ## GUID
+# gEfiPersistentVirtualCdGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventReadyToBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Event
+# gEfiEventLegacyBootGuid
+#
+# ## SOMETIMES_CONSUMES ## Variable
+# gEfiGlobalVariableGuid
+#
+#
+[PcdEx.X64]
+
+# [LibraryClasses.X64]
+# ## @LIB_INSTANCES
+# # MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
+# # MdePkg/Library/DxePcdLib/DxePcdLib.inf
+# # MdePkg/Library/BaseLib/BaseLib.inf
+# # MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+# # MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
+# # MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
+# # MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
+# # MdePkg/Library/BasePrintLib/BasePrintLib.inf
+# # MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
+# # MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
+# # MdePkg/Library/UefiLib/UefiLib.inf
+# # MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+# # PurleyRcPkg/Library/DxeMmPciBaseLib/SmmMmPciBaseLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchInfoLib/PeiDxeSmmPchInfoLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchP2sbLib/PeiDxeSmmPchP2sbLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchPcrLib/PeiDxeSmmPchPcrLib.inf
+# # LewisburgPkg/Library/PeiDxeSmmPchCycleDecodingLib/PeiDxeSmmPchCycleDecodingLib.inf
+# # MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+# # LewisburgPkg/LibraryPrivate/BasePchSpiCommonLib/BasePchSpiCommonLib.inf
+#
+# [Depex.X64]
+# # (gEfiSmmBase2ProtocolGuid #This is for SmmServicesTableLib AND gEfiSmmCpuProtocolGuid # This is for CpuSmmDisableBiosWriteProtect()) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiPcdProtocolGuid) AND (gEfiSmmBase2ProtocolGuid) AND (gEfiSmmAccess2ProtocolGuid) AND (gEfiSmmCpuIo2ProtocolGuid) AND (gEfiBdsArchProtocolGuid AND gEfiCpuArchProtocolGuid AND gEfiMetronomeArchProtocolGuid AND gEfiMonotonicCounterArchProtocolGuid AND gEfiRealTimeClockArchProtocolGuid AND gEfiResetArchProtocolGuid AND gEfiRuntimeArchProtocolGuid AND gEfiSecurityArchProtocolGuid AND gEfiTimerArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid AND gEfiVariableArchProtocolGuid AND gEfiWatchdogTimerArchProtocolGuid)
+#
+#
+#
+#
+#
+# [BuildOptions.X64]
+# ## @AsBuilt
+# ## MSFT:RELEASE_VS2015x86_X64_OPTROM_FLAGS = -e
+# ## MSFT:RELEASE_VS2015x86_X64_VFR_FLAGS = -n
+# ## MSFT:RELEASE_VS2015x86_X64_PP_FLAGS = /nologo /E /TC /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_SYMRENAME_FLAGS = Symbol renaming not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_GENFW_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_SLINK_FLAGS = /NOLOGO /LTCG
+# ## MSFT:RELEASE_VS2015x86_X64_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
+# ## MSFT:RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+# ## MSFT:RELEASE_VS2015x86_X64_ASL_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE /Zi /Gm
+# ## MSFT:RELEASE_VS2015x86_X64_NASMB_FLAGS = -f bin
+# ## MSFT:RELEASE_VS2015x86_X64_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_APP_FLAGS = /nologo /E /TC -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK2_FLAGS =
+# ## MSFT:RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data /DEBUG /ALIGN:4096
+# ## MSFT:RELEASE_VS2015x86_X64_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h -D CRB_FLAG -D TRAD_FLAG=1 $(ULT_BUILD_OPTION) -D PCH_SERVER_BIOS_FLAG=1 -D SUS_WELL_RESTORE=1 -D SERVER_BIOS_FLAG=1 -D PCH_SPT -D PURLEY_FLAG $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) -D MAX_SOCKET=2 -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST -D MDEPKG_NDEBUG -D SILENT_MODE
+# ## MSFT:RELEASE_VS2015x86_X64_OBJCOPY_FLAGS = objcopy not needed for
+# ## MSFT:RELEASE_VS2015x86_X64_MAKE_FLAGS = /nologo
--
2.27.0.windows.1
next prev parent reply other threads:[~2021-05-11 9:55 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-11 9:54 [edk2-non-osi] [PATCH V1 0/9] PurleySiliconBinPkg: Restore Silicon FVs Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 1/9] PurleySiliconBinPkg/FV: Add License.txt Nate DeSimone
2021-05-11 9:54 ` Nate DeSimone [this message]
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 3/9] PurleySiliconBinPkg/FV: Remove DEBUG FvLateSilicon Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 4/9] PurleySiliconBinPkg/FV: Add RELEASE FvPostMemorySilicon Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 5/9] PurleySiliconBinPkg/FV: Add DEBUG FvPostMemorySilicon Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 6/9] PurleySiliconBinPkg/FV: Add RELEASE FvPreMemorySilicon Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 7/9] PurleySiliconBinPkg/FV: Add DEBUG FvPreMemorySilicon Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 8/9] PurleySiliconBinPkg/FV: Add RELEASE FvTempMemorySilicon Nate DeSimone
2021-05-11 9:54 ` [edk2-non-osi] [PATCH V1 9/9] PurleySiliconBinPkg/FV: Add DEBUG FvTempMemorySilicon Nate DeSimone
2021-05-11 22:19 ` [edk2-non-osi] [PATCH V1 0/9] PurleySiliconBinPkg: Restore Silicon FVs Oram, Isaac W
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210511095434.12575-3-nathaniel.l.desimone@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox