From de005223b77c473d45c9c8a11147f6968325f73e Mon Sep 17 00:00:00 2001 From: Chen A Chen Date: Fri, 29 Jun 2018 11:27:00 +0800 Subject: [PATCH] MdeModulePkg: Removing ipf which is no longer supported from edk2. Removing rules for Ipf sources file: * Remove the source file which path with "ipf" and also listed in [Sources.IPF] section of INF file. * Remove the source file which listed in [Components.IPF] section of DSC file and not listed in any other [Components] section. * Remove the embedded Ipf code for MDE_CPU_IPF. Removing rules for Inf file: * Remove IPF from VALID_ARCHITECTURES comments. * Remove DXE_SAL_DRIVER from LIBRARY_CLASS in [Defines] section. * Remove the INF which only listed in [Components.IPF] section in DSC. * Remove statements from [BuildOptions] that provide IPF specific flags. * Remove any IPF sepcific sections. Removing rules for Dec file: * Remove [Includes.IPF] section from Dec. Removing rules for Dsc file: * Remove IPF from SUPPORTED_ARCHITECTURES in [Defines] section of DSC. * Remove any IPF specific sections. * Remove statements from [BuildOptions] that provide IPF specific flags. Cc: Star Zeng Cc: Eric Dong Cc: Michael D Kinney Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chen A Chen Reviewed-by: Star Zeng --- .../BootManagerMenuApp/BootManagerMenuApp.inf | 2 +- .../Application/HelloWorld/HelloWorld.inf | 4 +- .../MemoryProfileInfo/MemoryProfileInfo.inf | 4 +- MdeModulePkg/Application/UiApp/UiApp.inf | 2 +- .../Application/VariableInfo/VariableInfo.inf | 4 +- .../Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf | 2 +- MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf | 4 +- MdeModulePkg/Bus/I2c/I2cDxe/I2cBusDxe.inf | 4 +- MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.inf | 4 +- MdeModulePkg/Bus/I2c/I2cDxe/I2cHostDxe.inf | 4 +- MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf | 2 +- .../Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf | 4 +- .../Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf | 4 +- MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf | 2 +- MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf | 2 +- MdeModulePkg/Bus/Pci/IdeBusPei/IdeBusPei.inf | 4 +- .../IncompatiblePciDeviceSupportDxe.inf | 2 +- .../Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf | 2 +- MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf | 2 +- .../Pci/PciSioSerialDxe/PciSioSerialDxe.inf | 4 +- .../SataControllerDxe/SataControllerDxe.inf | 2 +- .../Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf | 4 +- .../Bus/Pci/SdMmcPciHcPei/SdMmcPciHcPei.inf | 2 +- .../Bus/Pci/UfsPciHcDxe/UfsPciHcDxe.inf | 2 +- .../Bus/Pci/UfsPciHcPei/UfsPciHcPei.inf | 2 +- MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf | 2 +- MdeModulePkg/Bus/Pci/UhciPei/UhciPei.inf | 4 +- MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf | 2 +- MdeModulePkg/Bus/Pci/XhciPei/XhciPei.inf | 4 +- .../Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf | 2 +- .../Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf | 2 +- .../Bus/Sd/EmmcBlockIoPei/EmmcBlockIoPei.inf | 4 +- MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf | 4 +- .../Bus/Sd/SdBlockIoPei/SdBlockIoPei.inf | 4 +- MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf | 4 +- .../Bus/Ufs/UfsBlockIoPei/UfsBlockIoPei.inf | 4 +- .../Bus/Ufs/UfsPassThruDxe/UfsPassThruDxe.inf | 2 +- MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf | 4 +- MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf | 2 +- MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf | 2 +- MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf | 2 +- .../UsbMassStorageDxe/UsbMassStorageDxe.inf | 2 +- .../UsbMouseAbsolutePointerDxe.inf | 2 +- .../Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf | 2 +- MdeModulePkg/Core/Dxe/DxeMain.inf | 2 +- MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf | 5 +- .../Core/DxeIplPeim/Ipf/DxeLoadFunc.c | 85 - MdeModulePkg/Core/Pei/PeiMain.inf | 2 +- MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf | 2 +- MdeModulePkg/Include/Guid/VariableFormat.h | 7 +- .../BasePlatformHookLibNull.inf | 4 +- .../BaseResetSystemLibNull.inf | 4 +- .../Library/BaseSortLib/BaseSortLib.inf | 4 +- .../Library/BootLogoLib/BootLogoLib.inf | 2 +- .../BootMaintenanceManagerUiLib.inf | 2 +- .../BootManagerUiLib/BootManagerUiLib.inf | 2 +- .../CpuExceptionHandlerLibNull.inf | 4 +- .../CustomizedDisplayLib.inf | 2 +- .../DebugAgentLibNull/DebugAgentLibNull.inf | 4 +- .../DeviceManagerUiLib/DeviceManagerUiLib.inf | 2 +- .../DisplayUpdateProgressLibGraphics.inf | 2 +- .../DisplayUpdateProgressLibText.inf | 2 +- .../DxeCapsuleLibFmp/DxeCapsuleLib.inf | 2 +- .../DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf | 2 +- .../DxeCapsuleLibNull/DxeCapsuleLibNull.inf | 4 +- .../DxeCoreMemoryAllocationLib.inf | 4 +- .../DxeCoreMemoryAllocationProfileLib.inf | 4 +- .../DxeCorePerformanceLib.inf | 2 +- .../DxeCrc32GuidedSectionExtractLib.inf | 4 +- .../DxeDebugPrintErrorLevelLib.inf | 4 +- MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf | 6 +- .../DxeFileExplorerProtocol.inf | 2 +- .../Library/DxeHttpLib/DxeHttpLib.inf | 4 +- .../Library/DxeIpIoLib/DxeIpIoLib.inf | 6 +- MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf | 4 +- .../DxePerformanceLib/DxePerformanceLib.inf | 4 +- .../DxePrintLibPrint2Protocol.inf | 4 +- .../DxeReportStatusCodeLib.inf | 6 +- .../DxeResetSystemLib/DxeResetSystemLib.inf | 2 +- .../DxeSecurityManagementLib.inf | 4 +- .../Library/DxeTcpIoLib/DxeTcpIoLib.inf | 4 +- .../Library/DxeUdpIoLib/DxeUdpIoLib.inf | 4 +- .../FileExplorerLib/FileExplorerLib.inf | 2 +- .../FmpAuthenticationLibNull.inf | 4 +- .../LzmaCustomDecompressLib.inf | 4 +- .../OemHookStatusCodeLibNull.inf | 2 +- .../PciHostBridgeLibNull.inf | 4 +- .../PeiCrc32GuidedSectionExtractLib.inf | 2 +- .../PeiDxeDebugLibReportStatusCode.inf | 4 +- .../PeiPerformanceLib/PeiPerformanceLib.inf | 2 +- .../PeiRecoveryLibNull/PeiRecoveryLibNull.inf | 2 +- .../PeiReportStatusCodeLib.inf | 2 +- .../PeiResetSystemLib/PeiResetSystemLib.inf | 2 +- .../Library/PeiS3LibNull/PeiS3LibNull.inf | 2 +- .../DxeS3BootScriptLib.inf | 6 +- .../PlatformHookLibSerialPortPpi.inf | 6 +- .../PlatformVarCleanupLib.inf | 4 +- .../RuntimeDxeReportStatusCodeLib.inf | 4 +- .../TpmMeasurementLibNull.inf | 6 +- .../UefiBootManagerLib/UefiBootManagerLib.inf | 2 +- .../Library/UefiHiiLib/UefiHiiLib.inf | 6 +- .../UefiHiiServicesLib/UefiHiiServicesLib.inf | 4 +- .../UefiMemoryAllocationProfileLib.inf | 6 +- .../Library/UefiSortLib/UefiSortLib.inf | 4 +- MdeModulePkg/Logo/Logo.inf | 4 +- MdeModulePkg/MdeModulePkg.dsc | 28 +- .../Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf | 2 +- .../Acpi/AcpiTableDxe/AcpiTableDxe.inf | 2 +- .../BootGraphicsResourceTableDxe.inf | 2 +- .../FirmwarePerformanceDxe.inf | 2 +- .../FirmwarePerformancePei.inf | 2 +- .../Acpi/S3SaveStateDxe/S3SaveStateDxe.inf | 2 +- .../Acpi/SmmS3SaveState/SmmS3SaveState.inf | 2 +- MdeModulePkg/Universal/BdsDxe/BdsDxe.inf | 2 +- .../BootManagerPolicyDxe.inf | 2 +- .../Universal/CapsulePei/CapsulePei.inf | 2 +- .../CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf | 4 +- .../Console/ConPlatformDxe/ConPlatformDxe.inf | 2 +- .../Console/ConSplitterDxe/ConSplitterDxe.inf | 2 +- .../GraphicsConsoleDxe/GraphicsConsoleDxe.inf | 2 +- .../Console/TerminalDxe/TerminalDxe.inf | 4 +- .../Universal/DebugPortDxe/DebugPortDxe.inf | 4 +- .../DebugSupportDxe/DebugSupportDxe.inf | 10 +- .../Universal/DebugSupportDxe/Ipf/AsmFuncs.s | 1382 ----------------- .../Universal/DebugSupportDxe/Ipf/Common.i | 29 - .../DebugSupportDxe/Ipf/Ds64Macros.i | 78 - .../DebugSupportDxe/Ipf/PlDebugSupport.c | 467 ------ .../DebugSupportDxe/Ipf/PlDebugSupport.h | 324 ---- .../Universal/DevicePathDxe/DevicePathDxe.inf | 2 +- .../Disk/CdExpressPei/CdExpressPei.inf | 2 +- .../Universal/Disk/DiskIoDxe/DiskIoDxe.inf | 2 +- .../Disk/PartitionDxe/PartitionDxe.inf | 2 +- MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf | 3 +- .../EnglishDxe/EnglishDxe.inf | 2 +- .../DisplayEngineDxe/DisplayEngineDxe.inf | 2 +- .../DriverHealthManagerDxe.inf | 2 +- .../DriverSampleDxe/DriverSampleDxe.inf | 2 +- MdeModulePkg/Universal/EbcDxe/EbcDebugger.inf | 7 +- .../Universal/EbcDxe/EbcDebuggerConfig.inf | 4 +- MdeModulePkg/Universal/EbcDxe/EbcDxe.inf | 7 +- .../Universal/EbcDxe/Ipf/EbcLowLevel.s | 206 --- .../Universal/EbcDxe/Ipf/EbcSupport.c | 884 ----------- .../Universal/EbcDxe/Ipf/EbcSupport.h | 41 - MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf | 2 +- .../FaultTolerantWriteDxe.inf | 2 +- .../FaultTolerantWritePei.inf | 4 +- .../FileExplorerDxe/FileExplorerDxe.inf | 2 +- .../HiiDatabaseDxe/HiiDatabaseDxe.inf | 2 +- .../HiiResourcesSampleDxe.inf | 2 +- .../LegacyRegion2Dxe/LegacyRegion2Dxe.inf | 2 +- .../Universal/LoadFileOnFv2/LoadFileOnFv2.inf | 4 +- .../GenericMemoryTestDxe.inf | 4 +- .../NullMemoryTestDxe/NullMemoryTestDxe.inf | 2 +- .../Universal/Metronome/Metronome.inf | 2 +- .../MonotonicCounterRuntimeDxe.inf | 4 +- .../Universal/Network/ArpDxe/ArpDxe.inf | 2 +- .../Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf | 2 +- .../Universal/Network/DpcDxe/DpcDxe.inf | 4 +- .../Universal/Network/IScsiDxe/IScsiDxe.inf | 2 +- .../Universal/Network/Ip4Dxe/Ip4Dxe.inf | 2 +- .../Universal/Network/MnpDxe/MnpDxe.inf | 2 +- .../Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf | 2 +- .../Universal/Network/SnpDxe/SnpDxe.inf | 2 +- .../Universal/Network/Tcp4Dxe/Tcp4Dxe.inf | 2 +- .../Universal/Network/Udp4Dxe/Udp4Dxe.inf | 2 +- .../Network/UefiPxeBcDxe/UefiPxeBcDxe.inf | 2 +- .../Network/VlanConfigDxe/VlanConfigDxe.inf | 4 +- MdeModulePkg/Universal/PCD/Dxe/Pcd.inf | 2 +- MdeModulePkg/Universal/PCD/Pei/Pcd.inf | 2 +- .../PcatSingleSegmentPciCfg2Pei.inf | 4 +- .../PlatformDriOverrideDxe.inf | 2 +- MdeModulePkg/Universal/PrintDxe/PrintDxe.inf | 4 +- .../PropertiesTableAttributesDxe.inf | 4 +- .../RegularExpressionDxe.inf | 3 +- .../Pei/ReportStatusCodeRouterPei.inf | 4 +- .../ReportStatusCodeRouterRuntimeDxe.inf | 2 +- .../SectionExtractionPei.inf | 2 +- .../SecurityStubDxe/SecurityStubDxe.inf | 4 +- .../SetupBrowserDxe/SetupBrowserDxe.inf | 2 +- .../Universal/SmbiosDxe/SmbiosDxe.inf | 2 +- .../SmbiosMeasurementDxe.inf | 2 +- .../Pei/StatusCodeHandlerPei.inf | 2 +- .../StatusCodeHandlerRuntimeDxe.inf | 2 +- .../Universal/TimestampDxe/TimestampDxe.inf | 2 +- .../Universal/Variable/Pei/VariablePei.inf | 4 +- .../WatchdogTimerDxe/WatchdogTimer.inf | 2 +- 186 files changed, 258 insertions(+), 3802 deletions(-) delete mode 100644 MdeModulePkg/Core/DxeIplPeim/Ipf/DxeLoadFunc.c delete mode 100644 MdeModulePkg/Universal/DebugSupportDxe/Ipf/AsmFuncs.s delete mode 100644 MdeModulePkg/Universal/DebugSupportDxe/Ipf/Common.i delete mode 100644 MdeModulePkg/Universal/DebugSupportDxe/Ipf/Ds64Macros.i delete mode 100644 MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.c delete mode 100644 MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.h delete mode 100644 MdeModulePkg/Universal/EbcDxe/Ipf/EbcLowLevel.s delete mode 100644 MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.c delete mode 100644 MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.h diff --git a/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf b/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf index 3dc1bab9a0..8e0d1a5bf2 100644 --- a/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf +++ b/MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Application/HelloWorld/HelloWorld.inf b/MdeModulePkg/Application/HelloWorld/HelloWorld.inf index 1cfed2d85c..fff8255a8d 100644 --- a/MdeModulePkg/Application/HelloWorld/HelloWorld.inf +++ b/MdeModulePkg/Application/HelloWorld/HelloWorld.inf @@ -6,7 +6,7 @@ # # It demos how to use EDKII PCD mechanism to make code more flexible. # -# Copyright (c) 2008 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2008 - 2018, 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 @@ -35,7 +35,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.inf b/MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.inf index 4bb7a9df1d..061b6f3af4 100644 --- a/MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.inf +++ b/MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.inf @@ -4,7 +4,7 @@ # Note that if the feature is not enabled by setting PcdMemoryProfilePropertyMask, # the application will not display memory profile information. # -# Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2014 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Application/UiApp/UiApp.inf b/MdeModulePkg/Application/UiApp/UiApp.inf index 417f1a3ec9..eef7e1ec54 100644 --- a/MdeModulePkg/Application/UiApp/UiApp.inf +++ b/MdeModulePkg/Application/UiApp/UiApp.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Application/VariableInfo/VariableInfo.inf b/MdeModulePkg/Application/VariableInfo/VariableInfo.inf index 484ad32a4e..fa2f0460f2 100644 --- a/MdeModulePkg/Application/VariableInfo/VariableInfo.inf +++ b/MdeModulePkg/Application/VariableInfo/VariableInfo.inf @@ -6,7 +6,7 @@ # Note that if Variable Dxe/Smm driver doesn't enable the feature by setting PcdVariableCollectStatistics # as TRUE, the application will not display variable statistical information. # -# Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, 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 @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf index 74e62649ce..a12c9ab1de 100644 --- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf +++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gAtaAtapiPassThruDriverBinding # COMPONENT_NAME = gAtaAtapiPassThruComponentName diff --git a/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf b/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf index d067df0400..a58d910124 100644 --- a/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf +++ b/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf @@ -5,7 +5,7 @@ # in UEFI spec 2.2. It installs Block IO and Disk Info protocol for each ATA device # it enumerates and identifies successfully. # -# Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gAtaBusDriverBinding # COMPONENT_NAME = gAtaBusComponentName diff --git a/MdeModulePkg/Bus/I2c/I2cDxe/I2cBusDxe.inf b/MdeModulePkg/Bus/I2c/I2cDxe/I2cBusDxe.inf index 4dbe2f5e68..66a3d6e341 100644 --- a/MdeModulePkg/Bus/I2c/I2cDxe/I2cBusDxe.inf +++ b/MdeModulePkg/Bus/I2c/I2cDxe/I2cBusDxe.inf @@ -1,7 +1,7 @@ ## @file # This driver enumerates I2C devices on I2C bus and produce I2C IO Protocol on I2C devices. # -# Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2013 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.inf b/MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.inf index 5cd53b2fc4..f2234c015d 100644 --- a/MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.inf +++ b/MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.inf @@ -4,7 +4,7 @@ # This driver produce I2C Host Protocol on I2C controller handle, enumerate I2C # devices on I2C bus and produce I2C IO Protocol on I2C devices. # -# Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2013 - 2018, 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 @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Bus/I2c/I2cDxe/I2cHostDxe.inf b/MdeModulePkg/Bus/I2c/I2cDxe/I2cHostDxe.inf index c9b87eb50c..3daca2234b 100644 --- a/MdeModulePkg/Bus/I2c/I2cDxe/I2cHostDxe.inf +++ b/MdeModulePkg/Bus/I2c/I2cDxe/I2cHostDxe.inf @@ -1,7 +1,7 @@ ## @file # This driver produce I2C Host Protocol on I2C controller handle. # -# Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2013 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf b/MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf index b257e99dba..208947eed7 100644 --- a/MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf +++ b/MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gIsaBusDriverBinding # COMPONENT_NAME = gIsaBusComponentName diff --git a/MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf b/MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf index a0172eabf8..c7d097f665 100644 --- a/MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf +++ b/MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf @@ -4,7 +4,7 @@ # Ps2 Keyboard Driver for UEFI. The keyboard type implemented follows IBM # compatible PS2 protocol using Scan Code Set 1. # -# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -27,7 +27,7 @@ ENTRY_POINT = InitializePs2Keyboard # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # DRIVER_BINDING = gKeyboardControllerDriver; # COMPONENT_NAME = gPs2KeyboardComponentName; # COMPONENT_NAME2 = gPs2KeyboardComponentName2; diff --git a/MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf b/MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf index 2c7688a051..5050688e8f 100644 --- a/MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf +++ b/MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf @@ -3,7 +3,7 @@ # # This dirver provides support for PS2 based mice. # -# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -26,7 +26,7 @@ ENTRY_POINT = InitializePs2Mouse # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # DRIVER_BINDING = gPS2MouseDriver; # COMPONENT_NAME = gPs2MouseComponentName; # COMPONENT_NAME2 = gPs2MouseComponentName2; diff --git a/MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf b/MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf index bc6bd4ce29..1d3b0be57a 100644 --- a/MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf +++ b/MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = gEhciDriverBinding # COMPONENT_NAME = gEhciComponentName diff --git a/MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf b/MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf index 74c13db1c1..e49f21873d 100644 --- a/MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf +++ b/MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Pci/IdeBusPei/IdeBusPei.inf b/MdeModulePkg/Bus/Pci/IdeBusPei/IdeBusPei.inf index 8bcef7bc6a..de5f94e2c4 100644 --- a/MdeModulePkg/Bus/Pci/IdeBusPei/IdeBusPei.inf +++ b/MdeModulePkg/Bus/Pci/IdeBusPei/IdeBusPei.inf @@ -4,7 +4,7 @@ # for Atapi CD ROM device. # # This module discovers CDROM devices in Legacy and native mode and installs block IO ppis for them. -# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupportDxe.inf b/MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupportDxe.inf index fa3e012cc7..987af4ca91 100644 --- a/MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupportDxe.inf +++ b/MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupportDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf b/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf index bfb783205c..38d793645b 100644 --- a/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf +++ b/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gNvmExpressDriverBinding # COMPONENT_NAME = gNvmExpressComponentName diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf b/MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf index faf68c7d90..cb93db606d 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = gPciBusDriverBinding # COMPONENT_NAME = gPciBusComponentName diff --git a/MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf b/MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf index 03fddfe75e..94f948827e 100644 --- a/MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf +++ b/MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf @@ -3,7 +3,7 @@ # # Produces the Serial I/O protocol for standard UARTS using Super I/O or PCI I/O. # -# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gSerialControllerDriver # COMPONENT_NAME = gPciSioSerialComponentName diff --git a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf index 4fcb9678aa..54de60cd8e 100644 --- a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf +++ b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = gSataControllerDriverBinding # COMPONENT_NAME = gSataControllerComponentName diff --git a/MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf b/MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf index 154ce45d82..1246e1d88d 100644 --- a/MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf +++ b/MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf @@ -5,7 +5,7 @@ # It will produce EFI_SD_MMC_PASS_THRU_PROTOCOL to allow sending SD/MMC/eMMC cmds # to specified devices from upper layer. # -# Copyright (c) 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, 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 @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gSdMmcPciHcDxeDriverBinding # COMPONENT_NAME = gSdMmcPciHcDxeComponentName diff --git a/MdeModulePkg/Bus/Pci/SdMmcPciHcPei/SdMmcPciHcPei.inf b/MdeModulePkg/Bus/Pci/SdMmcPciHcPei/SdMmcPciHcPei.inf index 51675f5bfb..588fba2263 100644 --- a/MdeModulePkg/Bus/Pci/SdMmcPciHcPei/SdMmcPciHcPei.inf +++ b/MdeModulePkg/Bus/Pci/SdMmcPciHcPei/SdMmcPciHcPei.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Pci/UfsPciHcDxe/UfsPciHcDxe.inf b/MdeModulePkg/Bus/Pci/UfsPciHcDxe/UfsPciHcDxe.inf index 900fa01698..c1345f6f57 100644 --- a/MdeModulePkg/Bus/Pci/UfsPciHcDxe/UfsPciHcDxe.inf +++ b/MdeModulePkg/Bus/Pci/UfsPciHcDxe/UfsPciHcDxe.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUfsHcDriverBinding # COMPONENT_NAME = gUfsHcComponentName diff --git a/MdeModulePkg/Bus/Pci/UfsPciHcPei/UfsPciHcPei.inf b/MdeModulePkg/Bus/Pci/UfsPciHcPei/UfsPciHcPei.inf index 3535da17f0..c885ca053f 100644 --- a/MdeModulePkg/Bus/Pci/UfsPciHcPei/UfsPciHcPei.inf +++ b/MdeModulePkg/Bus/Pci/UfsPciHcPei/UfsPciHcPei.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf b/MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf index 5dccd3b22e..accb0ba390 100644 --- a/MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf +++ b/MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = gUhciDriverBinding # COMPONENT_NAME = gUhciComponentName diff --git a/MdeModulePkg/Bus/Pci/UhciPei/UhciPei.inf b/MdeModulePkg/Bus/Pci/UhciPei/UhciPei.inf index 95ddea2162..7f20fb4331 100644 --- a/MdeModulePkg/Bus/Pci/UhciPei/UhciPei.inf +++ b/MdeModulePkg/Bus/Pci/UhciPei/UhciPei.inf @@ -4,7 +4,7 @@ # It produces gPeiUsbHostControllerPpiGuid based on gPeiUsbControllerPpiGuid which is used # to enable recovery function from USB Drivers. # -# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf b/MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf index 9bdabd10bc..86a80946e3 100644 --- a/MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf +++ b/MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = gXhciDriverBinding # COMPONENT_NAME = gXhciComponentName diff --git a/MdeModulePkg/Bus/Pci/XhciPei/XhciPei.inf b/MdeModulePkg/Bus/Pci/XhciPei/XhciPei.inf index f307ea7646..206446170f 100644 --- a/MdeModulePkg/Bus/Pci/XhciPei/XhciPei.inf +++ b/MdeModulePkg/Bus/Pci/XhciPei/XhciPei.inf @@ -4,7 +4,7 @@ # It produces gPeiUsb2HostControllerPpiGuid based on gPeiUsbControllerPpiGuid # which is used to enable recovery function from USB Drivers. # -# Copyright (c) 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf b/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf index abcd267668..16208fa78b 100644 --- a/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf +++ b/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gSCSIBusDriverBinding # COMPONENT_NAME = gScsiBusComponentName diff --git a/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf b/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf index 397d314272..14010802a8 100644 --- a/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf +++ b/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gScsiDiskDriverBinding # COMPONENT_NAME = gScsiDiskComponentName diff --git a/MdeModulePkg/Bus/Sd/EmmcBlockIoPei/EmmcBlockIoPei.inf b/MdeModulePkg/Bus/Sd/EmmcBlockIoPei/EmmcBlockIoPei.inf index b4127b791d..770fbbc57c 100644 --- a/MdeModulePkg/Bus/Sd/EmmcBlockIoPei/EmmcBlockIoPei.inf +++ b/MdeModulePkg/Bus/Sd/EmmcBlockIoPei/EmmcBlockIoPei.inf @@ -1,7 +1,7 @@ ## @file # Description file for the Embedded MMC (eMMC) Peim driver. # -# Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf b/MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf index 3f27bdbcaf..58e077b567 100644 --- a/MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf +++ b/MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf @@ -4,7 +4,7 @@ # It produces BlockIo, BlockIo2 and StorageSecurity protocols to allow upper layer # access the EMMC device. # -# Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gEmmcDxeDriverBinding # COMPONENT_NAME = gEmmcDxeComponentName diff --git a/MdeModulePkg/Bus/Sd/SdBlockIoPei/SdBlockIoPei.inf b/MdeModulePkg/Bus/Sd/SdBlockIoPei/SdBlockIoPei.inf index 1530f1efdb..326781855a 100644 --- a/MdeModulePkg/Bus/Sd/SdBlockIoPei/SdBlockIoPei.inf +++ b/MdeModulePkg/Bus/Sd/SdBlockIoPei/SdBlockIoPei.inf @@ -1,7 +1,7 @@ ## @file # Description file for the SD memory card Peim driver. # -# Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf b/MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf index a763314275..c094898005 100644 --- a/MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf +++ b/MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf @@ -4,7 +4,7 @@ # It produces BlockIo and BlockIo2 protocols to allow upper layer # access the SD memory card device. # -# Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gSdDxeDriverBinding # COMPONENT_NAME = gSdDxeComponentName diff --git a/MdeModulePkg/Bus/Ufs/UfsBlockIoPei/UfsBlockIoPei.inf b/MdeModulePkg/Bus/Ufs/UfsBlockIoPei/UfsBlockIoPei.inf index 28daf67ffc..48a459843d 100644 --- a/MdeModulePkg/Bus/Ufs/UfsBlockIoPei/UfsBlockIoPei.inf +++ b/MdeModulePkg/Bus/Ufs/UfsBlockIoPei/UfsBlockIoPei.inf @@ -1,7 +1,7 @@ ## @file # Description file for the Universal Flash Storage (UFS) Peim driver. # -# Copyright (c) 2014 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2014 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThruDxe.inf b/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThruDxe.inf index 93b6424020..e550cd02b4 100644 --- a/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThruDxe.inf +++ b/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThruDxe.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUfsPassThruDriverBinding # COMPONENT_NAME = gUfsPassThruComponentName diff --git a/MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf b/MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf index 977bef5c8b..c321d39edf 100644 --- a/MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf +++ b/MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf @@ -1,7 +1,7 @@ ## @file # The Usb mass storage device Peim driver is used to support recovery from USB device. # -# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf b/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf index 30d59adb34..2e6236ed6c 100644 --- a/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf +++ b/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = mUsbBusDriverBinding # COMPONENT_NAME = mUsbBusComponentName diff --git a/MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf b/MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf index 0d81bf8dc2..5b03fc6a2b 100644 --- a/MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf +++ b/MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf b/MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf index 41f0d9ab9b..49b5491482 100644 --- a/MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf +++ b/MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf @@ -37,7 +37,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # # DRIVER_BINDING = gUsbKeyboardDriverBinding # COMPONENT_NAME = gUsbKeyboardComponentName diff --git a/MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf b/MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf index 1fdd43443f..0ce35b9d31 100644 --- a/MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf +++ b/MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf @@ -38,7 +38,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUSBMassDriverBinding # COMPONENT_NAME = gUsbMassStorageComponentName diff --git a/MdeModulePkg/Bus/Usb/UsbMouseAbsolutePointerDxe/UsbMouseAbsolutePointerDxe.inf b/MdeModulePkg/Bus/Usb/UsbMouseAbsolutePointerDxe/UsbMouseAbsolutePointerDxe.inf index 10e74b9783..90da43e977 100644 --- a/MdeModulePkg/Bus/Usb/UsbMouseAbsolutePointerDxe/UsbMouseAbsolutePointerDxe.inf +++ b/MdeModulePkg/Bus/Usb/UsbMouseAbsolutePointerDxe/UsbMouseAbsolutePointerDxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUsbMouseAbsolutePointerDriverBinding # COMPONENT_NAME = gUsbMouseAbsolutePointerComponentName diff --git a/MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf b/MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf index 5bea024d20..4ca0bbfa16 100644 --- a/MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf +++ b/MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUsbMouseDriverBinding # COMPONENT_NAME = gUsbMouseComponentName diff --git a/MdeModulePkg/Core/Dxe/DxeMain.inf b/MdeModulePkg/Core/Dxe/DxeMain.inf index 69065d1305..10375443c0 100644 --- a/MdeModulePkg/Core/Dxe/DxeMain.inf +++ b/MdeModulePkg/Core/Dxe/DxeMain.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf index 302934283a..fd82657404 100644 --- a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf +++ b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf @@ -31,7 +31,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) AARCH64 # [Sources] @@ -49,9 +49,6 @@ X64/VirtualMemory.c X64/DxeLoadFunc.c -[Sources.IPF] - Ipf/DxeLoadFunc.c - [Sources.EBC] Ebc/DxeLoadFunc.c diff --git a/MdeModulePkg/Core/DxeIplPeim/Ipf/DxeLoadFunc.c b/MdeModulePkg/Core/DxeIplPeim/Ipf/DxeLoadFunc.c deleted file mode 100644 index 7443648017..0000000000 --- a/MdeModulePkg/Core/DxeIplPeim/Ipf/DxeLoadFunc.c +++ /dev/null @@ -1,85 +0,0 @@ -/** @file - Ipf-specific functionality for DxeLoad. - -Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.
-This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#include "DxeIpl.h" - - - -/** - Transfers control to DxeCore. - - This function performs a CPU architecture specific operations to execute - the entry point of DxeCore with the parameters of HobList. - It also installs EFI_END_OF_PEI_PPI to signal the end of PEI phase. - - @param DxeCoreEntryPoint The entry point of DxeCore. - @param HobList The start of HobList passed to DxeCore. - -**/ -VOID -HandOffToDxeCore ( - IN EFI_PHYSICAL_ADDRESS DxeCoreEntryPoint, - IN EFI_PEI_HOB_POINTERS HobList - ) -{ - VOID *BaseOfStack; - VOID *TopOfStack; - VOID *BspStore; - EFI_STATUS Status; - - // - // Allocate 128KB for the Stack - // - BaseOfStack = AllocatePages (EFI_SIZE_TO_PAGES (STACK_SIZE)); - ASSERT (BaseOfStack != NULL); - - // - // Allocate 16KB for the BspStore - // - BspStore = AllocatePages (EFI_SIZE_TO_PAGES (BSP_STORE_SIZE)); - ASSERT (BspStore != NULL); - // - // Build BspStoreHob - // - BuildBspStoreHob ((EFI_PHYSICAL_ADDRESS) (UINTN) BspStore, BSP_STORE_SIZE, EfiBootServicesData); - - // - // Compute the top of the stack we were allocated. Pre-allocate a UINTN - // for safety. - // - TopOfStack = (VOID *) ((UINTN) BaseOfStack + EFI_SIZE_TO_PAGES (STACK_SIZE) * EFI_PAGE_SIZE - CPU_STACK_ALIGNMENT); - TopOfStack = ALIGN_POINTER (TopOfStack, CPU_STACK_ALIGNMENT); - - // - // End of PEI phase signal - // - Status = PeiServicesInstallPpi (&gEndOfPeiSignalPpi); - ASSERT_EFI_ERROR (Status); - - // - // Update the contents of BSP stack HOB to reflect the real stack info passed to DxeCore. - // - UpdateStackHob ((EFI_PHYSICAL_ADDRESS)(UINTN) BaseOfStack, STACK_SIZE); - - // - // Transfer the control to the entry point of DxeCore. - // - SwitchStack ( - (SWITCH_STACK_ENTRY_POINT)(UINTN)DxeCoreEntryPoint, - HobList.Raw, - NULL, - TopOfStack, - BspStore - ); -} diff --git a/MdeModulePkg/Core/Pei/PeiMain.inf b/MdeModulePkg/Core/Pei/PeiMain.inf index 2fb01958e5..4e1581a926 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.inf +++ b/MdeModulePkg/Core/Pei/PeiMain.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf b/MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf index d66c8b9f09..00e23acddf 100644 --- a/MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf +++ b/MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf @@ -31,7 +31,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Include/Guid/VariableFormat.h b/MdeModulePkg/Include/Guid/VariableFormat.h index b0c2616c4d..c076cef7b4 100644 --- a/MdeModulePkg/Include/Guid/VariableFormat.h +++ b/MdeModulePkg/Include/Guid/VariableFormat.h @@ -2,7 +2,7 @@ The variable data structures are related to EDK II-specific implementation of UEFI variables. VariableFormat.h defines variable data headers and variable storage region headers. -Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 2018, 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 that accompanies this distribution. The full text of the license may be found at @@ -28,13 +28,8 @@ extern EFI_GUID gEfiAuthenticatedVariableGuid; /// /// Alignment of variable name and data, according to the architecture: /// * For IA-32 and Intel(R) 64 architectures: 1. -/// * For IA-64 architecture: 8. /// -#if defined (MDE_CPU_IPF) -#define ALIGNMENT 8 -#else #define ALIGNMENT 1 -#endif // // GET_PAD_SIZE calculates the miminal pad bytes needed to make the current pad size satisfy the alignment requirement. diff --git a/MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf b/MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf index 6d5195576f..a0a9c87178 100644 --- a/MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf +++ b/MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf @@ -1,7 +1,7 @@ ## @file # Null Platform Hook Library instance. # -# Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2010 - 2018, 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 @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf index 96e0ebb212..a8e25ec759 100644 --- a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf +++ b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf @@ -1,7 +1,7 @@ ## @file # Null Reset System Library instance that only generates ASSERT() conditions. # -# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, 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 @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf b/MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf index 4b493f4eb6..f807cd7fd1 100644 --- a/MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf +++ b/MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf @@ -1,7 +1,7 @@ ## @file # Library used for sorting routines. # -# Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -23,7 +23,7 @@ LIBRARY_CLASS = SortLib|DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_APPLICATION UEFI_DRIVER # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf b/MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf index a2afc9e089..dab944583e 100644 --- a/MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf +++ b/MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf index aad9d7678e..ff4aaf85f7 100644 --- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf +++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf b/MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf index f6fc074b9d..8447f63b8c 100644 --- a/MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf +++ b/MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf b/MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf index c79c5a76ee..0bc5844919 100644 --- a/MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf +++ b/MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf @@ -1,7 +1,7 @@ ## @file # Null instance of CPU Exception Handler Library with empty functions. # -# Copyright (c) 2012 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2012 - 2018, 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 @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf b/MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf index 4b1f6b4404..0e0bf7e616 100644 --- a/MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf +++ b/MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf b/MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf index ce1eab2623..c76b8bbd95 100644 --- a/MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf +++ b/MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf @@ -1,7 +1,7 @@ ## @file # Null instance of Debug Agent Library with empty functions. # -# Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2010 - 2018, 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 @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf b/MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf index d493b37baa..1848e8a88f 100644 --- a/MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf +++ b/MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DisplayUpdateProgressLibGraphics/DisplayUpdateProgressLibGraphics.inf b/MdeModulePkg/Library/DisplayUpdateProgressLibGraphics/DisplayUpdateProgressLibGraphics.inf index ada6076770..324ab7dab9 100644 --- a/MdeModulePkg/Library/DisplayUpdateProgressLibGraphics/DisplayUpdateProgressLibGraphics.inf +++ b/MdeModulePkg/Library/DisplayUpdateProgressLibGraphics/DisplayUpdateProgressLibGraphics.inf @@ -37,7 +37,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf b/MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf index c3134439e4..24d22ea094 100644 --- a/MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf +++ b/MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf @@ -37,7 +37,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf b/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf index 8367264f76..14629c64fa 100644 --- a/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf +++ b/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf b/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf index 342df9e99c..0f8c633d6e 100644 --- a/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf +++ b/MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf b/MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf index b836607aae..1d2cf4f084 100644 --- a/MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf +++ b/MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf @@ -2,7 +2,7 @@ # NULL Dxe Capsule library instance. # It can make core modules pass package level build. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf b/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf index caba8cd4a4..5e77ae1b5d 100644 --- a/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf +++ b/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf @@ -4,7 +4,7 @@ # for memory allocation instead of using UEFI boot services in an indirect way. # It is assumed that this library instance must be linked with DxeCore in this package. # -# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationProfileLib.inf b/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationProfileLib.inf index a2b5f8c102..f8287bf137 100644 --- a/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationProfileLib.inf +++ b/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationProfileLib.inf @@ -4,7 +4,7 @@ # for memory allocation/profile instead of using UEFI boot services or memory profile protocol in an indirect way. # It is assumed that this library instance must be linked with DxeCore in this package. # -# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2008 - 2018, 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 @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf b/MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf index 8fab47ff02..685f5ee981 100644 --- a/MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf +++ b/MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf @@ -35,7 +35,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf b/MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf index 7a8efbf8cf..5626cb0bd3 100644 --- a/MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf +++ b/MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf @@ -25,14 +25,14 @@ FILE_GUID = 387A2490-81FC-4E7C-8E0A-3E58C30FCD0B MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = NULL|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = NULL|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = DxeCrc32GuidedSectionExtractLibConstructor # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf b/MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf index 69a41f40c7..4d20cc5725 100644 --- a/MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf +++ b/MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf @@ -22,12 +22,12 @@ FILE_GUID = 1D564EC9-9373-49a4-9E3F-E4D7B9974C84 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = DebugPrintErrorLevelLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = DebugPrintErrorLevelLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = DxeDebugPrintErrorLevelLibConstructor DESTRUCTOR = DxeDebugPrintErrorLevelLibDestructor # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf b/MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf index d541acd5a9..c91383aa31 100644 --- a/MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf +++ b/MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf @@ -1,7 +1,7 @@ ## @file # This library instance provides DPC service by consuming EFI DPC Protocol. # -# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, 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 @@ -19,13 +19,13 @@ FILE_GUID = 38897D86-FF36-4472-AE64-1DB9AE715C81 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = DpcLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = DpcLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = DpcLibConstructor # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeFileExplorerProtocol/DxeFileExplorerProtocol.inf b/MdeModulePkg/Library/DxeFileExplorerProtocol/DxeFileExplorerProtocol.inf index 9db58cb8f6..f307aeac03 100644 --- a/MdeModulePkg/Library/DxeFileExplorerProtocol/DxeFileExplorerProtocol.inf +++ b/MdeModulePkg/Library/DxeFileExplorerProtocol/DxeFileExplorerProtocol.inf @@ -20,7 +20,7 @@ FILE_GUID = 6806C45F-13C4-4274-B8A3-055EF641A060 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = FileExplorerLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = FileExplorerLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = FileExplorerConstructor [Sources] diff --git a/MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf b/MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf index d6d5391b3a..371bd20f51 100644 --- a/MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf +++ b/MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf @@ -21,12 +21,12 @@ FILE_GUID = ABBAB4CD-EA88-45b9-8234-C8A7450531FC MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = HttpLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = HttpLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf b/MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf index 086c74d1f1..4cab1afddb 100644 --- a/MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf +++ b/MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf @@ -1,7 +1,7 @@ ## @file # This library instance provides IP services upon EFI IPv4/IPv6 Protocols. # -# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -20,12 +20,12 @@ FILE_GUID = A302F877-8625-425c-B1EC-7487B62C4FDA MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = IpIoLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = IpIoLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf b/MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf index c31a04bb72..e46ef45363 100644 --- a/MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf +++ b/MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf @@ -21,12 +21,12 @@ FILE_GUID = db6dcef3-9f4e-4340-9351-fc35aa8a5888 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = NetLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = NetLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf b/MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf index d9c7e833b5..2a6a1b14fb 100644 --- a/MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf +++ b/MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf @@ -24,12 +24,12 @@ FILE_GUID = 8B8B4CCC-65FC-41a5-8067-308B8E42CCF2 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = PerformanceLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = PerformanceLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf b/MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf index 1cda2dc5cf..986777baab 100644 --- a/MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf +++ b/MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf @@ -1,7 +1,7 @@ ## @file # Library instance that implements Print Library class based on protocol gEfiPrint2ProtocolGuid. # -# Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -20,7 +20,7 @@ FILE_GUID = 55D460DB-8FEA-415a-B95D-70145AE0675C MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = PrintLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = PrintLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = PrintLibConstructor [Sources] diff --git a/MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf b/MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf index 962cf8b05b..d56e79a820 100644 --- a/MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf +++ b/MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf @@ -3,7 +3,7 @@ # # Retrieve status code and report status code in DXE phase. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -22,12 +22,12 @@ FILE_GUID = EBF144C8-70F5-4e09-ADE2-F41F5C59AFDA MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = ReportStatusCodeLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE + LIBRARY_CLASS = ReportStatusCodeLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.inf b/MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.inf index e25c3e7d55..7453917d1e 100644 --- a/MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.inf +++ b/MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf b/MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf index 41d8ff8fd1..f7ef0b3f56 100644 --- a/MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf +++ b/MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf @@ -22,12 +22,12 @@ FILE_GUID = 7F61122C-19DF-47c3-BA0D-6C1149E30FA1 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = SecurityManagementLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = SecurityManagementLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf b/MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf index 2dc74a73e2..fe437cbe1c 100644 --- a/MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf +++ b/MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf @@ -20,12 +20,12 @@ FILE_GUID = D4608509-1AB0-4cc7-827A-AB8E1E7BD3E6 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = TcpIoLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = TcpIoLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf b/MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf index 3e541ee6ee..9c129fb5b7 100644 --- a/MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf +++ b/MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf @@ -20,12 +20,12 @@ FILE_GUID = 7E615AA1-41EE-49d4-B7E9-1D7A60AA5C8D MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = UdpIoLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = UdpIoLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf b/MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf index 5d9822d95f..c79fb1d0fd 100644 --- a/MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf +++ b/MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf b/MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf index f9b87ca53a..19deece6c2 100644 --- a/MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf +++ b/MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf @@ -3,7 +3,7 @@ # # NULL Instance of FmpAuthentication Library. # -# Copyright (c) 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2016 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf b/MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf index 127c7ded86..df485ac466 100644 --- a/MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf +++ b/MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf @@ -5,7 +5,7 @@ # LZMA SDK 16.04 was placed in the public domain on 2016-10-04. # It was released on the http://www.7-zip.org/sdk.html website. # -# Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf b/MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf index 34555761a0..a5d1869cb4 100644 --- a/MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf +++ b/MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf index 8df14924ad..abff03e2d1 100644 --- a/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf +++ b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf @@ -1,7 +1,7 @@ ## @file # Null instance of PCI Host Bridge Library with empty functions. # -# Copyright (c) 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2016 - 2018, 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 @@ -27,7 +27,7 @@ # The following information is for reference only and not required by the build # tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/PeiCrc32GuidedSectionExtractLib/PeiCrc32GuidedSectionExtractLib.inf b/MdeModulePkg/Library/PeiCrc32GuidedSectionExtractLib/PeiCrc32GuidedSectionExtractLib.inf index c1d6f27992..19b80be34f 100644 --- a/MdeModulePkg/Library/PeiCrc32GuidedSectionExtractLib/PeiCrc32GuidedSectionExtractLib.inf +++ b/MdeModulePkg/Library/PeiCrc32GuidedSectionExtractLib/PeiCrc32GuidedSectionExtractLib.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf b/MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf index 12a063f5b8..3c56d8f17a 100644 --- a/MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf +++ b/MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf @@ -21,12 +21,12 @@ FILE_GUID = bda39d3a-451b-4350-8266-81ab10fa0523 MODULE_TYPE = PEIM VERSION_STRING = 1.0 - LIBRARY_CLASS = DebugLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE PEIM SEC PEI_CORE UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = DebugLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER SMM_CORE PEIM SEC PEI_CORE UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf b/MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf index cad3a120a2..995642eb7f 100644 --- a/MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf +++ b/MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf b/MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf index 70c9a88491..c1cdd70162 100644 --- a/MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf +++ b/MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf b/MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf index 5b1df7e2bb..0b37fa799f 100644 --- a/MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf +++ b/MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.inf b/MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.inf index 5af03f305c..2df732ba7f 100644 --- a/MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.inf +++ b/MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf b/MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf index f408d7f528..c9b7ba1d69 100644 --- a/MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf +++ b/MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf b/MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf index 0feff36612..f2e3dad01d 100644 --- a/MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf +++ b/MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf @@ -1,7 +1,7 @@ ## @file # DXE S3 boot script Library. # -# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -20,7 +20,7 @@ FILE_GUID = 57F9967B-26CD-4262-837A-55B8AA158254 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = S3BootScriptLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION + LIBRARY_CLASS = S3BootScriptLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_DRIVER UEFI_APPLICATION CONSTRUCTOR = S3BootScriptLibInitialize @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/PlatformHookLibSerialPortPpi/PlatformHookLibSerialPortPpi.inf b/MdeModulePkg/Library/PlatformHookLibSerialPortPpi/PlatformHookLibSerialPortPpi.inf index d577506b26..3803fcff29 100644 --- a/MdeModulePkg/Library/PlatformHookLibSerialPortPpi/PlatformHookLibSerialPortPpi.inf +++ b/MdeModulePkg/Library/PlatformHookLibSerialPortPpi/PlatformHookLibSerialPortPpi.inf @@ -1,7 +1,7 @@ ## @file # Null Platform Hook Library instance with dependency on gPeiSerialPortPpiGuid # -# Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2010 - 2018, 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 @@ -18,13 +18,13 @@ FILE_GUID = 621734D8-8B5E-4c01-B330-9F89A1081710 MODULE_TYPE = PEIM VERSION_STRING = 1.0 - LIBRARY_CLASS = PlatformHookLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE PEIM SEC PEI_CORE UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = PlatformHookLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER SMM_CORE PEIM SEC PEI_CORE UEFI_APPLICATION UEFI_DRIVER MODULE_UNI_FILE = PlatformHookLibSerialPortPpi.uni # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/PlatformVarCleanupLib/PlatformVarCleanupLib.inf b/MdeModulePkg/Library/PlatformVarCleanupLib/PlatformVarCleanupLib.inf index 6e7fcb6a5c..faf7908de6 100644 --- a/MdeModulePkg/Library/PlatformVarCleanupLib/PlatformVarCleanupLib.inf +++ b/MdeModulePkg/Library/PlatformVarCleanupLib/PlatformVarCleanupLib.inf @@ -1,7 +1,7 @@ ## @file # Sample platform variable cleanup library instance. # -# Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions @@ -21,7 +21,7 @@ FILE_GUID = 9C9623EB-4EF3-44e0-A931-F3A340D1A0F9 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = PlatformVarCleanupLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = PlatformVarCleanupLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = PlatformVarCleanupLibConstructor DESTRUCTOR = PlatformVarCleanupLibDestructor diff --git a/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf b/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf index 9f03e2a1ed..1c7f7c7883 100644 --- a/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf +++ b/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf @@ -20,13 +20,13 @@ FILE_GUID = 07D25BBB-F832-41bb-BBA0-612E9F033067 MODULE_TYPE = DXE_RUNTIME_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = ReportStatusCodeLib|DXE_RUNTIME_DRIVER DXE_SAL_DRIVER + LIBRARY_CLASS = ReportStatusCodeLib|DXE_RUNTIME_DRIVER CONSTRUCTOR = ReportStatusCodeLibConstructor DESTRUCTOR = ReportStatusCodeLibDestructor # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf b/MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf index fef783a4f9..628bc1dd6a 100644 --- a/MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf +++ b/MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf @@ -1,7 +1,7 @@ ## @file # Provides NULL TPM measurement function. # -# Copyright (c) 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, 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 @@ -17,13 +17,13 @@ FILE_GUID = 6DFD6E9F-9278-48D8-8F45-B6CFF2C2B69C MODULE_TYPE = UEFI_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = TpmMeasurementLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = TpmMeasurementLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER MODULE_UNI_FILE = TpmMeasurementLibNull.uni # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF +# VALID_ARCHITECTURES = IA32 X64 # [Sources] diff --git a/MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf b/MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf index 72c5ca1cd5..228b910336 100644 --- a/MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf +++ b/MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf b/MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf index 7ee68428a1..810b7cc208 100644 --- a/MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf +++ b/MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf @@ -1,7 +1,7 @@ ## @file # HII Library implementation using UEFI HII protocols and services. # -# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -21,10 +21,10 @@ FILE_GUID = 3143687A-7C80-404e-B5FE-2D88980E1B1C MODULE_TYPE = UEFI_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = HiiLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = HiiLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf b/MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf index fba1d6620e..50fc7f71f4 100644 --- a/MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf +++ b/MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf @@ -20,12 +20,12 @@ FILE_GUID = 894DC1B6-07A3-4a9d-8CDD-333580B3D4B1 MODULE_TYPE = UEFI_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = UefiHiiServicesLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = UefiHiiServicesLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = UefiHiiServicesLibConstructor # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/UefiMemoryAllocationProfileLib/UefiMemoryAllocationProfileLib.inf b/MdeModulePkg/Library/UefiMemoryAllocationProfileLib/UefiMemoryAllocationProfileLib.inf index c4954efb04..a11542a329 100644 --- a/MdeModulePkg/Library/UefiMemoryAllocationProfileLib/UefiMemoryAllocationProfileLib.inf +++ b/MdeModulePkg/Library/UefiMemoryAllocationProfileLib/UefiMemoryAllocationProfileLib.inf @@ -27,12 +27,12 @@ FILE_GUID = 9E8A380A-231E-41E4-AD40-5E706196B853 MODULE_TYPE = UEFI_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = MemoryAllocationLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER - LIBRARY_CLASS = MemoryProfileLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = MemoryAllocationLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER + LIBRARY_CLASS = MemoryProfileLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER CONSTRUCTOR = MemoryProfileLibConstructor # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf b/MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf index 4c3d5e0545..b227c97e64 100644 --- a/MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf +++ b/MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf @@ -1,7 +1,7 @@ ## @file # Library used for sorting routines. # -# Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -23,7 +23,7 @@ LIBRARY_CLASS = SortLib|UEFI_APPLICATION UEFI_DRIVER UEFI_DRIVER DXE_RUNTIME_DRIVER DXE_DRIVER # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources.common] diff --git a/MdeModulePkg/Logo/Logo.inf b/MdeModulePkg/Logo/Logo.inf index e2e61c82c5..59768834e2 100644 --- a/MdeModulePkg/Logo/Logo.inf +++ b/MdeModulePkg/Logo/Logo.inf @@ -1,7 +1,7 @@ ## @file # The default logo bitmap picture shown on setup screen, which is corresponding to gEfiDefaultBmpLogoGuid. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # [Binaries] diff --git a/MdeModulePkg/MdeModulePkg.dsc b/MdeModulePkg/MdeModulePkg.dsc index e0d8eed066..8a81ea141f 100644 --- a/MdeModulePkg/MdeModulePkg.dsc +++ b/MdeModulePkg/MdeModulePkg.dsc @@ -20,7 +20,7 @@ PLATFORM_VERSION = 0.98 DSC_SPECIFICATION = 0x00010005 OUTPUT_DIRECTORY = Build/MdeModule - SUPPORTED_ARCHITECTURES = IA32|IPF|X64|EBC|ARM|AARCH64 + SUPPORTED_ARCHITECTURES = IA32|X64|EBC|ARM|AARCH64 BUILD_TARGETS = DEBUG|RELEASE|NOOPT SKUID_IDENTIFIER = DEFAULT @@ -202,28 +202,6 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x0 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|28 -[PcdsFixedAtBuild.IPF] - gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000 - -################################################################################################### -# -# Components Section - list of the modules and components that will be processed by compilation -# tools and the EDK II tools to generate PE32/PE32+/Coff image files. -# -# Note: The EDK II DSC file is not used to specify how compiled binary images get placed -# into firmware volume images. This section is just a list of modules to compile from -# source into UEFI-compliant binaries. -# It is the FDF file that contains information on combining binary files into firmware -# volume images, whose concept is beyond UEFI and is described in PI specification. -# Binary modules do not need to be listed in this section, as they should be -# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), -# Logo (Logo.bmp), and etc. -# There may also be modules listed in this section that are not required in the FDF file, -# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be -# generated for it, but the binary will not be put into any firmware volume. -# -################################################################################################### - [Components] MdeModulePkg/Application/HelloWorld/HelloWorld.inf MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.inf @@ -445,14 +423,14 @@ MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf -[Components.IA32, Components.X64, Components.IPF, Components.AARCH64] +[Components.IA32, Components.X64, Components.AARCH64] MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf MdeModulePkg/Universal/DebugSupportDxe/DebugSupportDxe.inf MdeModulePkg/Universal/EbcDxe/EbcDxe.inf MdeModulePkg/Universal/EbcDxe/EbcDebugger.inf MdeModulePkg/Universal/EbcDxe/EbcDebuggerConfig.inf -[Components.IA32, Components.X64, Components.IPF, Components.ARM, Components.AARCH64] +[Components.IA32, Components.X64, Components.ARM, Components.AARCH64] MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf MdeModulePkg/Core/Dxe/DxeMain.inf { diff --git a/MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf b/MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf index f01a6c858a..bf67d17242 100644 --- a/MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf +++ b/MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf index 32c66785d5..55cb6bd4cb 100644 --- a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf +++ b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf b/MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf index 080a939cc0..955a3394a8 100644 --- a/MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf +++ b/MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf index 983ce41b48..ec77cf0b1d 100644 --- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf +++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf index 1b69e49cf9..a78fdb027a 100644 --- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf +++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf b/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf index 36ed80cc79..744cf8ab32 100644 --- a/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf +++ b/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.inf b/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.inf index 0742da60ca..bdecccc2f9 100644 --- a/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.inf +++ b/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf b/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf index 7030d67907..82eb8aafc6 100644 --- a/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf +++ b/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/BootManagerPolicyDxe/BootManagerPolicyDxe.inf b/MdeModulePkg/Universal/BootManagerPolicyDxe/BootManagerPolicyDxe.inf index 33014723d0..02c722696a 100644 --- a/MdeModulePkg/Universal/BootManagerPolicyDxe/BootManagerPolicyDxe.inf +++ b/MdeModulePkg/Universal/BootManagerPolicyDxe/BootManagerPolicyDxe.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/CapsulePei/CapsulePei.inf b/MdeModulePkg/Universal/CapsulePei/CapsulePei.inf index 02cf90c75d..a2c027fe1d 100644 --- a/MdeModulePkg/Universal/CapsulePei/CapsulePei.inf +++ b/MdeModulePkg/Universal/CapsulePei/CapsulePei.inf @@ -33,7 +33,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf b/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf index 3849bc84a8..ad7af5fe62 100644 --- a/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf +++ b/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf @@ -27,14 +27,14 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # [Sources] CapsuleService.c CapsuleService.h -[Sources.Ia32, Sources.IPF, Sources.EBC] +[Sources.Ia32, Sources.EBC, Sources.ARM, Sources.AARCH64] SaveLongModeContext.c CapsuleReset.c diff --git a/MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf b/MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf index bc57e2c8a1..176fd2fa0b 100644 --- a/MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf +++ b/MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gConPlatformTextInDriverBinding # COMPONENT_NAME = gConPlatformComponentName diff --git a/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf b/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf index a191ebcd9b..c934887130 100644 --- a/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf +++ b/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gConSplitterConInDriverBinding # COMPONENT_NAME = gConSplitterConInComponentName diff --git a/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf b/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf index bf387cd97b..1d15eb7ee7 100644 --- a/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf +++ b/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gGraphicsConsoleDriverBinding # COMPONENT_NAME = gGraphicsConsoleComponentName diff --git a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf index 0780296798..15b4ac1c33 100644 --- a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf +++ b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf @@ -5,7 +5,7 @@ # protocols based on Serial I/O protocol for serial devices including hotplug serial # devices. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gTerminalDriverBinding # COMPONENT_NAME = gTerminalComponentName diff --git a/MdeModulePkg/Universal/DebugPortDxe/DebugPortDxe.inf b/MdeModulePkg/Universal/DebugPortDxe/DebugPortDxe.inf index b727cda3cf..2ae841499c 100644 --- a/MdeModulePkg/Universal/DebugPortDxe/DebugPortDxe.inf +++ b/MdeModulePkg/Universal/DebugPortDxe/DebugPortDxe.inf @@ -4,7 +4,7 @@ # This driver binds exclusively to a standard UART serial port on the controller handle, # and initializes serial Io interface, publishs Debug Port and Device Path Protocol. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gDebugPortDriverBinding # COMPONENT_NAME = gDebugPortComponentName diff --git a/MdeModulePkg/Universal/DebugSupportDxe/DebugSupportDxe.inf b/MdeModulePkg/Universal/DebugSupportDxe/DebugSupportDxe.inf index 0d37f5fb64..c81404baf1 100644 --- a/MdeModulePkg/Universal/DebugSupportDxe/DebugSupportDxe.inf +++ b/MdeModulePkg/Universal/DebugSupportDxe/DebugSupportDxe.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF +# VALID_ARCHITECTURES = IA32 X64 # [Sources] @@ -50,14 +50,6 @@ X64/PlDebugSupportX64.c X64/AsmFuncs.nasm -[Sources.IPF] - Ipf/PlDebugSupport.h - Ipf/PlDebugSupport.c - Ipf/Ds64Macros.i - Ipf/Common.i - Ipf/AsmFuncs.s - - [Packages] MdePkg/MdePkg.dec MdeModulePkg/MdeModulePkg.dec diff --git a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/AsmFuncs.s b/MdeModulePkg/Universal/DebugSupportDxe/Ipf/AsmFuncs.s deleted file mode 100644 index db75fc088e..0000000000 --- a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/AsmFuncs.s +++ /dev/null @@ -1,1382 +0,0 @@ -/// @file -/// Low level IPF routines used by the debug support driver -/// -/// Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.
-/// This program and the accompanying materials -/// are licensed and made available under the terms and conditions of the BSD License -/// which accompanies this distribution. The full text of the license may be found at -/// http://opensource.org/licenses/bsd-license.php -/// -/// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -/// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -/// -/// - - -#include "Common.i" -#include "Ds64Macros.i" - -ASM_GLOBAL PatchSaveBuffer -ASM_GLOBAL IpfContextBuf -ASM_GLOBAL CommonHandler -ASM_GLOBAL ExternalInterruptCount - - -///////////////////////////////////////////// -// -// Name: -// InstructionCacheFlush -// -// Description: -// Flushes instruction cache for specified number of bytes -// - ASM_GLOBAL InstructionCacheFlush - .proc InstructionCacheFlush - .align 32 -InstructionCacheFlush:: - { .mii - alloc r3=2, 0, 0, 0 - cmp4.leu p0,p6=32, r33;; - (p6) mov r33=32;; - } - { .mii - nop.m 0 - zxt4 r29=r33;; - dep.z r30=r29, 0, 5;; - } - { .mii - cmp4.eq p0,p7=r0, r30 - shr.u r28=r29, 5;; - (p7) adds r28=1, r28;; - } - { .mii - nop.m 0 - shl r27=r28, 5;; - zxt4 r26=r27;; - } - { .mfb - add r31=r26, r32 - nop.f 0 - nop.b 0 - } -LoopBack: // $L143: - { .mii - fc r32 - adds r32=32, r32;; - cmp.ltu p14,p15=r32, r31 - } - { .mfb - nop.m 0 - nop.f 0 - //(p14) br.cond.dptk.few $L143#;; - (p14) br.cond.dptk.few LoopBack;; - } - { .mmi - sync.i;; - srlz.i - nop.i 0;; - } - { .mfb - nop.m 0 - nop.f 0 - br.ret.sptk.few b0;; - } - .endp InstructionCacheFlush - - -///////////////////////////////////////////// -// -// Name: -// ChainHandler -// -// Description: -// Chains an interrupt handler -// -// The purpose of this function is to enable chaining of the external interrupt. -// Since there's no clean SAL abstraction for doing this, we must do it -// surreptitiously. -// -// The reserved IVT entry at offset 0x3400 is coopted for use by this handler. -// According to Itanium architecture, it is reserved. Strictly speaking, this is -// not safe, as we're cheating and violating the Itanium architecture. However, -// as long as we're the only ones cheating, we should be OK. Without hooks in -// the SAL to enable IVT management, there aren't many good options. -// -// The strategy is to replace the first bundle of the external interrupt handler -// with our own that will branch into a piece of code we've supplied and located -// in the reserved IVT entry. Only the first bundle of the external interrupt -// IVT entry is modified. -// -// The original bundle is moved and relocated to space -// allocated within the reserved IVT entry. The next bundle following is -// is generated to go a hard coded branch back to the second bundle of the -// external interrupt IVT entry just in case the first bundle had no branch. -// -// Our new code will execute our handler, and then fall through to the -// original bundle after restoring all context appropriately. -// -// The following is a representation of what the IVT memory map looks like with -// our chained handler installed: -// -// -// -// -// -// This IVT entry is Failsafe bundle -// reserved by the -// Itanium architecture Original bundle 0 -// and is used for -// for locating our -// handler and the -// original bundle Patch code... -// zero of the ext -// interrupt handler -// -// RSVD (3400) Unused -// -// -// -// -// -// -// -// -// -// -// -// -// EXT_INT (3000) Bundle 0 Bundle zero - This one is -// modified, all other bundles -// in the EXT_INT entry are -// untouched. -// -// -// Arguments: -// -// Returns: -// -// Notes: -// -// - ASM_GLOBAL ChainHandler - .proc ChainHandler -ChainHandler: - - NESTED_SETUP( 0,2+3,3,0 ) - - mov r8=1 // r8 = success - mov r2=cr.iva;; -// -// NOTE: There's a potential hazard here in that we're simply stealing a bunch of -// bundles (memory) from the IVT and assuming there's no catastrophic side effect. -// -// First, save IVT area we're taking over with the patch so we can restore it later -// - addl out0=PATCH_ENTRY_OFFSET, r2 // out0 = source buffer - movl out1=PatchSaveBuffer // out1 = destination buffer - mov out2=0x40;; // out2 = number of bundles to copy... save entire IDT entry - br.call.sptk.few b0 = CopyBundles - -// Next, copy the patch code into the IVT - movl out0=PatchCode // out0 = source buffer of patch code - addl out1=PATCH_OFFSET, r2 // out1 = destination buffer - in IVT - mov out2=PATCH_CODE_SIZE;; - shr out2=out2, 4;; // out2 = number of bundles to copy - br.call.sptk.few b0 = CopyBundles - - -// copy original bundle 0 from the external interrupt handler to the -// appropriate place in the reserved IVT interrupt slot - addl out0=EXT_INT_ENTRY_OFFSET, r2 // out0 = source buffer - addl out1=RELOCATED_EXT_INT, r2 // out1 = destination buffer - in reserved IVT - mov out2=1;; // out2 = copy 1 bundle - br.call.sptk.few b0 = CopyBundles - -// Now relocate it there because it very likely had a branch instruction that -// that must now be fixed up. - addl out0=RELOCATED_EXT_INT, r2 // out0 = new runtime address of bundle - in reserved IVT - addl out1=EXT_INT_ENTRY_OFFSET, r2;;// out1 = IP address of previous location - mov out2=out0;; // out2 = IP address of new location - br.call.sptk.few b0 = RelocateBundle - -// Now copy into the failsafe branch into the next bundle just in case -// the original ext int bundle 0 bundle did not contain a branch instruction - movl out0=FailsafeBranch // out0 = source buffer - addl out1=FAILSAFE_BRANCH_OFFSET, r2 // out1 = destination buffer - in reserved IVT - mov out2=1;; // out2 = copy 1 bundle - br.call.sptk.few b0 = CopyBundles - -// Last, copy in our replacement for the external interrupt IVT entry bundle 0 - movl out0=PatchCodeNewBun0 // out0 = source buffer - our replacement bundle 0 - addl out1=EXT_INT_ENTRY_OFFSET, r2 // out1 = destination buffer - bundle 0 of External interrupt entry - mov out2=1;; // out2 = copy 1 bundle - br.call.sptk.few b0 = CopyBundles - -ChainHandlerDone: - NESTED_RETURN - - .endp ChainHandler - - -///////////////////////////////////////////// -// -// Name: -// UnchainHandler -// -// Description: -// Unchains an interrupt handler -// -// Arguments: -// -// Returns: -// -// Notes: -// -// - ASM_GLOBAL UnchainHandler - .proc UnchainHandler - -UnchainHandler: - - NESTED_SETUP( 0,2+3,3,0 ) - - mov r8=1 // r8 = success - mov r2=cr.iva;; // r2 = interrupt vector address - -// First copy original Ext Int bundle 0 back to it's proper home... - addl out0=RELOCATED_EXT_INT, r2 // out0 = source - in reserved IVT - addl out1=EXT_INT_ENTRY_OFFSET, r2 // out1 = destination buffer - first bundle of Ext Int entry - mov out2=1;; // out2 = copy 1 bundle - br.call.sptk.few b0 = CopyBundles - -// Now, relocate it again... - addl out0=EXT_INT_ENTRY_OFFSET, r2 // out1 = New runtime address - addl out1=RELOCATED_EXT_INT, r2;; // out0 = IP address of previous location - mov out2=out0;; // out2 = IP address of new location - br.call.sptk.few b0 = RelocateBundle - -// Last, restore the patch area - movl out0=PatchSaveBuffer // out0 = source buffer - addl out1=PATCH_ENTRY_OFFSET, r2 // out1 = destination buffer - mov out2=0x40;; // out2 = number of bundles to copy... save entire IDT entry - br.call.sptk.few b0 = CopyBundles - -UnchainHandlerDone: - NESTED_RETURN - - .endp UnchainHandler - - -///////////////////////////////////////////// -// -// Name: -// CopyBundles -// -// Description: -// Copies instruction bundles - flushes icache as necessary -// -// Arguments: -// in0 - Bundle source -// in1 - Bundle destination -// in2 - Bundle count -// -// Returns: -// -// Notes: -// This procedure is a leaf routine -// - .proc CopyBundles - -CopyBundles: - - NESTED_SETUP(3,2+1,0,0) - - shl in2=in2, 1;; // in2 = count of 8 byte blocks to copy - -CopyBundlesLoop: - - cmp.eq p14, p15 = 0, in2;; // Check if done -(p14) br.sptk.few CopyBundlesDone;; - - ld8 loc2=[in0], 0x8;; // loc2 = source bytes - st8 [in1]=loc2;; // [in1] = destination bytes - fc in1;; // Flush instruction cache - sync.i;; // Ensure local and remote data/inst caches in sync - srlz.i;; // Ensure sync has been observed - add in1=0x8, in1;; // in1 = next destination - add in2=-1, in2;; // in2 = decrement 8 bytes blocks to copy - br.sptk.few CopyBundlesLoop;; - -CopyBundlesDone: - NESTED_RETURN - - .endp CopyBundles - - -///////////////////////////////////////////// -// -// Name: -// RelocateBundle -// -// Description: -// Relocates an instruction bundle by updating any ip-relative branch instructions. -// -// Arguments: -// in0 - Runtime address of bundle -// in1 - IP address of previous location of bundle -// in2 - IP address of new location of bundle -// -// Returns: -// in0 - 1 if successful or 0 if unsuccessful -// -// Notes: -// This routine examines all slots in the given bundle that are destined for the -// branch execution unit. If any of these slots contain an IP-relative branch -// namely instructions B1, B2, B3, or B6, the slot is fixed-up with a new relative -// address. Errors can occur if a branch cannot be reached. -// - .proc RelocateBundle - -RelocateBundle: - - NESTED_SETUP(3,2+4,3,0) - - mov loc2=SLOT0 // loc2 = slot index - mov loc5=in0;; // loc5 = runtime address of bundle - mov in0=1;; // in0 = success - -RelocateBundleNextSlot: - - cmp.ge p14, p15 = SLOT2, loc2;; // Check if maximum slot -(p15) br.sptk.few RelocateBundleDone - - mov out0=loc5;; // out0 = runtime address of bundle - br.call.sptk.few b0 = GetTemplate - mov loc3=out0;; // loc3 = instruction template - mov out0=loc5 // out0 = runtime address of bundle - mov out1=loc2;; // out1 = instruction slot number - br.call.sptk.few b0 = GetSlot - mov loc4=out0;; // loc4 = instruction encoding - mov out0=loc4 // out0 = instuction encoding - mov out1=loc2 // out1 = instruction slot number - mov out2=loc3;; // out2 = instruction template - br.call.sptk.few b0 = IsSlotBranch - cmp.eq p14, p15 = 1, out0;; // Check if branch slot -(p15) add loc2=1,loc2 // Increment slot -(p15) br.sptk.few RelocateBundleNextSlot - mov out0=loc4 // out0 = instuction encoding - mov out1=in1 // out1 = IP address of previous location - mov out2=in2;; // out2 = IP address of new location - br.call.sptk.few b0 = RelocateSlot - cmp.eq p14, p15 = 1, out1;; // Check if relocated slot -(p15) mov in0=0 // in0 = failure -(p15) br.sptk.few RelocateBundleDone - mov out2=out0;; // out2 = instruction encoding - mov out0=loc5 // out0 = runtime address of bundle - mov out1=loc2;; // out1 = instruction slot number - br.call.sptk.few b0 = SetSlot - add loc2=1,loc2;; // Increment slot - br.sptk.few RelocateBundleNextSlot - -RelocateBundleDone: - NESTED_RETURN - - .endp RelocateBundle - - -///////////////////////////////////////////// -// -// Name: -// RelocateSlot -// -// Description: -// Relocates an instruction bundle by updating any ip-relative branch instructions. -// -// Arguments: -// in0 - Instruction encoding (41-bits, right justified) -// in1 - IP address of previous location of bundle -// in2 - IP address of new location of bundle -// -// Returns: -// in0 - Instruction encoding (41-bits, right justified) -// in1 - 1 if successful otherwise 0 -// -// Notes: -// This procedure is a leaf routine -// - .proc RelocateSlot - -RelocateSlot: - NESTED_SETUP(3,2+5,0,0) - extr.u loc2=in0, 37, 4;; // loc2 = instruction opcode - cmp.eq p14, p15 = 4, loc2;; // IP-relative branch (B1) or - // IP-relative counted branch (B2) -(p15) cmp.eq p14, p15 = 5, loc2;; // IP-relative call (B3) -(p15) cmp.eq p14, p15 = 7, loc2;; // IP-relative predict (B6) -(p15) mov in1=1 // Instruction did not need to be reencoded -(p15) br.sptk.few RelocateSlotDone - tbit.nz p14, p15 = in0, 36;; // put relative offset sign bit in p14 - extr.u loc2=in0, 13, 20;; // loc2 = relative offset in instruction -(p14) movl loc3=0xfffffffffff00000;; // extend sign -(p14) or loc2=loc2, loc3;; - shl loc2=loc2,4;; // convert to byte offset instead of bundle offset - add loc3=loc2, in1;; // loc3 = physical address of branch target -(p14) sub loc2=r0,loc2;; // flip sign in loc2 if offset is negative - sub loc4=loc3,in2;; // loc4 = relative offset from new ip to branch target - cmp.lt p15, p14 = 0, loc4;; // get new sign bit -(p14) sub loc5=r0,loc4 // get absolute value of offset -(p15) mov loc5=loc4;; - movl loc6=0x0FFFFFF;; // maximum offset in bytes for ip-rel branch - cmp.gt p14, p15 = loc5, loc6;; // check to see we're not out of range for an ip-relative branch -(p14) br.sptk.few RelocateSlotError - cmp.lt p15, p14 = 0, loc4;; // store sign in p14 again -(p14) dep in0=-1,in0,36,1 // store sign bit in instruction -(p15) dep in0=0,in0,36,1 - shr loc4=loc4, 4;; // convert back to bundle offset - dep in0=loc4,in0,13,16;; // put first 16 bits of new offset into instruction - shr loc4=loc4,16;; - dep in0=loc4,in0,13+16,4 // put last 4 bits of new offset into instruction - mov in1=1;; // in1 = success - br.sptk.few RelocateSlotDone;; - -RelocateSlotError: - mov in1=0;; // in1 = failure - -RelocateSlotDone: - NESTED_RETURN - - .endp RelocateSlot - - -///////////////////////////////////////////// -// -// Name: -// IsSlotBranch -// -// Description: -// Determines if the given instruction is a branch instruction. -// -// Arguments: -// in0 - Instruction encoding (41-bits, right justified) -// in1 - Instruction slot number -// in2 - Bundle template -// -// Returns: -// in0 - 1 if branch or 0 if not branch -// -// Notes: -// This procedure is a leaf routine -// -// IsSlotBranch recognizes all branch instructions by looking at the provided template. -// The instruction encoding is only passed to this routine for future expansion. -// - .proc IsSlotBranch - -IsSlotBranch: - - NESTED_SETUP (3,2+0,0,0) - - mov in0=1;; // in0 = 1 which destroys the instruction - andcm in2=in2,in0;; // in2 = even template to reduce compares - mov in0=0;; // in0 = not a branch - cmp.eq p14, p15 = 0x16, in2;; // Template 0x16 is BBB -(p14) br.sptk.few IsSlotBranchTrue - cmp.eq p14, p15 = SLOT0, in1;; // Slot 0 has no other possiblities -(p14) br.sptk.few IsSlotBranchDone - cmp.eq p14, p15 = 0x12, in2;; // Template 0x12 is MBB -(p14) br.sptk.few IsSlotBranchTrue - cmp.eq p14, p15 = SLOT1, in1;; // Slot 1 has no other possiblities -(p14) br.sptk.few IsSlotBranchDone - cmp.eq p14, p15 = 0x10, in2;; // Template 0x10 is MIB -(p14) br.sptk.few IsSlotBranchTrue - cmp.eq p14, p15 = 0x18, in2;; // Template 0x18 is MMB -(p14) br.sptk.few IsSlotBranchTrue - cmp.eq p14, p15 = 0x1C, in2;; // Template 0x1C is MFB -(p14) br.sptk.few IsSlotBranchTrue - br.sptk.few IsSlotBranchDone - -IsSlotBranchTrue: - mov in0=1;; // in0 = branch - -IsSlotBranchDone: - NESTED_RETURN - - .endp IsSlotBranch - - -///////////////////////////////////////////// -// -// Name: -// GetTemplate -// -// Description: -// Retrieves the instruction template for an instruction bundle -// -// Arguments: -// in0 - Runtime address of bundle -// -// Returns: -// in0 - Instruction template (5-bits, right-justified) -// -// Notes: -// This procedure is a leaf routine -// - .proc GetTemplate - -GetTemplate: - - NESTED_SETUP (1,2+2,0,0) - - ld8 loc2=[in0], 0x8 // loc2 = first 8 bytes of branch bundle - movl loc3=MASK_0_4;; // loc3 = template mask - and loc2=loc2,loc3;; // loc2 = template, right justified - mov in0=loc2;; // in0 = template, right justified - - NESTED_RETURN - - .endp GetTemplate - - -///////////////////////////////////////////// -// -// Name: -// GetSlot -// -// Description: -// Gets the instruction encoding for an instruction slot and bundle -// -// Arguments: -// in0 - Runtime address of bundle -// in1 - Instruction slot (either 0, 1, or 2) -// -// Returns: -// in0 - Instruction encoding (41-bits, right justified) -// -// Notes: -// This procedure is a leaf routine -// -// Slot0 - [in0 + 0x8] Bits 45-5 -// Slot1 - [in0 + 0x8] Bits 63-46 and [in0] Bits 22-0 -// Slot2 - [in0] Bits 63-23 -// - .proc GetSlot - -GetSlot: - NESTED_SETUP (2,2+3,0,0) - - ld8 loc2=[in0], 0x8;; // loc2 = first 8 bytes of branch bundle - ld8 loc3=[in0];; // loc3 = second 8 bytes of branch bundle - cmp.eq p14, p15 = 2, in1;; // check if slot 2 specified - (p14) br.cond.sptk.few GetSlot2;; // get slot 2 - cmp.eq p14, p15 = 1, in1;; // check if slot 1 specified - (p14) br.cond.sptk.few GetSlot1;; // get slot 1 - -GetSlot0: - extr.u in0=loc2, 5, 45 // in0 = extracted slot 0 - br.sptk.few GetSlotDone;; - -GetSlot1: - extr.u in0=loc2, 46, 18 // in0 = bits 63-46 of loc2 right-justified - extr.u loc4=loc3, 0, 23;; // loc4 = bits 22-0 of loc3 right-justified - dep in0=loc4, in0, 18, 15;; - shr.u loc4=loc4,15;; - dep in0=loc4, in0, 33, 8;; // in0 = extracted slot 1 - br.sptk.few GetSlotDone;; - -GetSlot2: - extr.u in0=loc3, 23, 41;; // in0 = extracted slot 2 - -GetSlotDone: - NESTED_RETURN - - .endp GetSlot - - -///////////////////////////////////////////// -// -// Name: -// SetSlot -// -// Description: -// Sets the instruction encoding for an instruction slot and bundle -// -// Arguments: -// in0 - Runtime address of bundle -// in1 - Instruction slot (either 0, 1, or 2) -// in2 - Instruction encoding (41-bits, right justified) -// -// Returns: -// -// Notes: -// This procedure is a leaf routine -// - .proc SetSlot - -SetSlot: - NESTED_SETUP (3,2+3,0,0) - - ld8 loc2=[in0], 0x8;; // loc2 = first 8 bytes of bundle - ld8 loc3=[in0];; // loc3 = second 8 bytes of bundle - cmp.eq p14, p15 = 2, in1;; // check if slot 2 specified - (p14) br.cond.sptk.few SetSlot2;; // set slot 2 - cmp.eq p14, p15 = 1, in1;; // check if slot 1 specified - (p14) br.cond.sptk.few SetSlot1;; // set slot 1 - -SetSlot0: - dep loc2=0, loc2, 5, 41;; // remove old instruction from slot 0 - shl loc4=in2, 5;; // loc4 = new instruction ready to be inserted - or loc2=loc2, loc4;; // loc2 = updated first 8 bytes of bundle - add loc4=0x8,in0;; // loc4 = address to store first 8 bytes of bundle - st8 [loc4]=loc2 // [loc4] = updated bundle - br.sptk.few SetSlotDone;; - ;; - -SetSlot1: - dep loc2=0, loc2, 46, 18 // remove old instruction from slot 1 - dep loc3=0, loc3, 0, 23;; - shl loc4=in2, 46;; // loc4 = partial instruction ready to be inserted - or loc2=loc2, loc4;; // loc2 = updated first 8 bytes of bundle - add loc4=0x8,in0;; // loc4 = address to store first 8 bytes of bundle - st8 [loc4]=loc2;; // [loc4] = updated bundle - shr.u loc4=in2, 18;; // loc4 = partial instruction ready to be inserted - or loc3=loc3, loc4;; // loc3 = updated second 8 bytes of bundle - st8 [in0]=loc3;; // [in0] = updated bundle - br.sptk.few SetSlotDone;; - -SetSlot2: - dep loc3=0, loc3, 23, 41;; // remove old instruction from slot 2 - shl loc4=in2, 23;; // loc4 = instruction ready to be inserted - or loc3=loc3, loc4;; // loc3 = updated second 8 bytes of bundle - st8 [in0]=loc3;; // [in0] = updated bundle - -SetSlotDone: - - NESTED_RETURN - .endp SetSlot - - -///////////////////////////////////////////// -// -// Name: -// GetIva -// -// Description: -// C callable function to obtain the current value of IVA -// -// Returns: -// Current value if IVA - - ASM_GLOBAL GetIva - .proc GetIva -GetIva: - mov r8=cr2;; - br.ret.sptk.many b0 - - .endp GetIva - - -///////////////////////////////////////////// -// -// Name: -// ProgramInterruptFlags -// -// Description: -// C callable function to enable/disable interrupts -// -// Returns: -// Previous state of psr.ic -// - ASM_GLOBAL ProgramInterruptFlags - .proc ProgramInterruptFlags -ProgramInterruptFlags: - alloc loc0=1,2,0,0;; - mov loc0=psr - mov loc1=0x6000;; - and r8=loc0, loc1 // obtain current psr.ic and psr.i state - and in0=in0, loc1 // insure no extra bits set in input - andcm loc0=loc0,loc1;; // clear original psr.i and psr.ic - or loc0=loc0,in0;; // OR in new psr.ic value - mov psr.l=loc0;; // write new psr - srlz.d - br.ret.sptk.many b0 // return - - .endp ProgramInterruptFlags - - -///////////////////////////////////////////// -// -// Name: -// SpillContext -// -// Description: -// Saves system context to context record. -// -// Arguments: -// in0 = 512 byte aligned context record address -// in1 = original B0 -// in2 = original ar.bsp -// in3 = original ar.bspstore -// in4 = original ar.rnat -// in5 = original ar.pfs -// -// Notes: -// loc0 - scratch -// loc1 - scratch -// loc2 - temporary application unat storage -// loc3 - temporary exception handler unat storage - - .proc SpillContext - -SpillContext: - alloc loc0=6,4,0,0;; // alloc 6 input, 4 locals, 0 outs - mov loc2=ar.unat;; // save application context unat (spilled later) - mov ar.unat=r0;; // set UNAT=0 - st8.spill [in0]=r0,8;; - st8.spill [in0]=r1,8;; // save R1 - R31 - st8.spill [in0]=r2,8;; - st8.spill [in0]=r3,8;; - st8.spill [in0]=r4,8;; - st8.spill [in0]=r5,8;; - st8.spill [in0]=r6,8;; - st8.spill [in0]=r7,8;; - st8.spill [in0]=r8,8;; - st8.spill [in0]=r9,8;; - st8.spill [in0]=r10,8;; - st8.spill [in0]=r11,8;; - st8.spill [in0]=r12,8;; - st8.spill [in0]=r13,8;; - st8.spill [in0]=r14,8;; - st8.spill [in0]=r15,8;; - st8.spill [in0]=r16,8;; - st8.spill [in0]=r17,8;; - st8.spill [in0]=r18,8;; - st8.spill [in0]=r19,8;; - st8.spill [in0]=r20,8;; - st8.spill [in0]=r21,8;; - st8.spill [in0]=r22,8;; - st8.spill [in0]=r23,8;; - st8.spill [in0]=r24,8;; - st8.spill [in0]=r25,8;; - st8.spill [in0]=r26,8;; - st8.spill [in0]=r27,8;; - st8.spill [in0]=r28,8;; - st8.spill [in0]=r29,8;; - st8.spill [in0]=r30,8;; - st8.spill [in0]=r31,8;; - mov loc3=ar.unat;; // save debugger context unat (spilled later) - stf.spill [in0]=f2,16;; // save f2 - f31 - stf.spill [in0]=f3,16;; - stf.spill [in0]=f4,16;; - stf.spill [in0]=f5,16;; - stf.spill [in0]=f6,16;; - stf.spill [in0]=f7,16;; - stf.spill [in0]=f8,16;; - stf.spill [in0]=f9,16;; - stf.spill [in0]=f10,16;; - stf.spill [in0]=f11,16;; - stf.spill [in0]=f12,16;; - stf.spill [in0]=f13,16;; - stf.spill [in0]=f14,16;; - stf.spill [in0]=f15,16;; - stf.spill [in0]=f16,16;; - stf.spill [in0]=f17,16;; - stf.spill [in0]=f18,16;; - stf.spill [in0]=f19,16;; - stf.spill [in0]=f20,16;; - stf.spill [in0]=f21,16;; - stf.spill [in0]=f22,16;; - stf.spill [in0]=f23,16;; - stf.spill [in0]=f24,16;; - stf.spill [in0]=f25,16;; - stf.spill [in0]=f26,16;; - stf.spill [in0]=f27,16;; - stf.spill [in0]=f28,16;; - stf.spill [in0]=f29,16;; - stf.spill [in0]=f30,16;; - stf.spill [in0]=f31,16;; - mov loc0=pr;; // save predicates - st8.spill [in0]=loc0,8;; - st8.spill [in0]=in1,8;; // save b0 - b7... in1 already equals saved b0 - mov loc0=b1;; - st8.spill [in0]=loc0,8;; - mov loc0=b2;; - st8.spill [in0]=loc0,8;; - mov loc0=b3;; - st8.spill [in0]=loc0,8;; - mov loc0=b4;; - st8.spill [in0]=loc0,8;; - mov loc0=b5;; - st8.spill [in0]=loc0,8;; - mov loc0=b6;; - st8.spill [in0]=loc0,8;; - mov loc0=b7;; - st8.spill [in0]=loc0,8;; - mov loc0=ar.rsc;; // save ar.rsc - st8.spill [in0]=loc0,8;; - st8.spill [in0]=in2,8;; // save ar.bsp (in2) - st8.spill [in0]=in3,8;; // save ar.bspstore (in3) - st8.spill [in0]=in4,8;; // save ar.rnat (in4) - mov loc0=ar.fcr;; // save ar.fcr (ar21 - IA32 floating-point control register) - st8.spill [in0]=loc0,8;; - mov loc0=ar.eflag;; // save ar.eflag (ar24) - st8.spill [in0]=loc0,8;; - mov loc0=ar.csd;; // save ar.csd (ar25 - ia32 CS descriptor) - st8.spill [in0]=loc0,8;; - mov loc0=ar.ssd;; // save ar.ssd (ar26 - ia32 ss descriptor) - st8.spill [in0]=loc0,8;; - mov loc0=ar.cflg;; // save ar.cflg (ar27 - ia32 cr0 and cr4) - st8.spill [in0]=loc0,8;; - mov loc0=ar.fsr;; // save ar.fsr (ar28 - ia32 floating-point status register) - st8.spill [in0]=loc0,8;; - mov loc0=ar.fir;; // save ar.fir (ar29 - ia32 floating-point instruction register) - st8.spill [in0]=loc0,8;; - mov loc0=ar.fdr;; // save ar.fdr (ar30 - ia32 floating-point data register) - st8.spill [in0]=loc0,8;; - mov loc0=ar.ccv;; // save ar.ccv - st8.spill [in0]=loc0,8;; - st8.spill [in0]=loc2,8;; // save ar.unat (saved to loc2 earlier) - mov loc0=ar.fpsr;; // save floating point status register - st8.spill [in0]=loc0,8;; - st8.spill [in0]=in5,8;; // save ar.pfs - mov loc0=ar.lc;; // save ar.lc - st8.spill [in0]=loc0,8;; - mov loc0=ar.ec;; // save ar.ec - st8.spill [in0]=loc0,8;; - - // save control registers - mov loc0=cr.dcr;; // save dcr - st8.spill [in0]=loc0,8;; - mov loc0=cr.itm;; // save itm - st8.spill [in0]=loc0,8;; - mov loc0=cr.iva;; // save iva - st8.spill [in0]=loc0,8;; - mov loc0=cr.pta;; // save pta - st8.spill [in0]=loc0,8;; - mov loc0=cr.ipsr;; // save ipsr - st8.spill [in0]=loc0,8;; - mov loc0=cr.isr;; // save isr - st8.spill [in0]=loc0,8;; - mov loc0=cr.iip;; // save iip - st8.spill [in0]=loc0,8;; - mov loc0=cr.ifa;; // save ifa - st8.spill [in0]=loc0,8;; - mov loc0=cr.itir;; // save itir - st8.spill [in0]=loc0,8;; - mov loc0=cr.iipa;; // save iipa - st8.spill [in0]=loc0,8;; - mov loc0=cr.ifs;; // save ifs - st8.spill [in0]=loc0,8;; - mov loc0=cr.iim;; // save iim - st8.spill [in0]=loc0,8;; - mov loc0=cr.iha;; // save iha - st8.spill [in0]=loc0,8;; - - // save debug registers - mov loc0=dbr[r0];; // save dbr0 - dbr7 - st8.spill [in0]=loc0,8;; - movl loc1=1;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=2;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=3;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=4;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=5;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=6;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=7;; - mov loc0=dbr[loc1];; - st8.spill [in0]=loc0,8;; - mov loc0=ibr[r0];; // save ibr0 - ibr7 - st8.spill [in0]=loc0,8;; - movl loc1=1;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=2;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=3;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=4;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=5;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=6;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - movl loc1=7;; - mov loc0=ibr[loc1];; - st8.spill [in0]=loc0,8;; - st8.spill [in0]=loc3;; - - br.ret.sptk.few b0 - - .endp SpillContext - - -///////////////////////////////////////////// -// -// Name: -// FillContext -// -// Description: -// Restores register context from context record. -// -// Arguments: -// in0 = address of last element 512 byte aligned context record address -// in1 = modified B0 -// in2 = modified ar.bsp -// in3 = modified ar.bspstore -// in4 = modified ar.rnat -// in5 = modified ar.pfs -// -// Notes: -// loc0 - scratch -// loc1 - scratch -// loc2 - temporary application unat storage -// loc3 - temporary exception handler unat storage - - .proc FillContext -FillContext: - alloc loc0=6,4,0,0;; // alloc 6 inputs, 4 locals, 0 outs - ld8.fill loc3=[in0],-8;; // int_nat (nat bits for R1-31) - movl loc1=7;; // ibr7 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - movl loc1=6;; // ibr6 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - movl loc1=5;; // ibr5 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - movl loc1=4;; // ibr4 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - movl loc1=3;; // ibr3 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - movl loc1=2;; // ibr2 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - movl loc1=1;; // ibr1 - ld8.fill loc0=[in0],-8;; - mov ibr[loc1]=loc0;; - ld8.fill loc0=[in0],-8;; // ibr0 - mov ibr[r0]=loc0;; - movl loc1=7;; // dbr7 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - movl loc1=6;; // dbr6 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - movl loc1=5;; // dbr5 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - movl loc1=4;; // dbr4 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - movl loc1=3;; // dbr3 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - movl loc1=2;; // dbr2 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - movl loc1=1;; // dbr1 - ld8.fill loc0=[in0],-8;; - mov dbr[loc1]=loc0;; - ld8.fill loc0=[in0],-8;; // dbr0 - mov dbr[r0]=loc0;; - ld8.fill loc0=[in0],-8;; // iha - mov cr.iha=loc0;; - ld8.fill loc0=[in0],-8;; // iim - mov cr.iim=loc0;; - ld8.fill loc0=[in0],-8;; // ifs - mov cr.ifs=loc0;; - ld8.fill loc0=[in0],-8;; // iipa - mov cr.iipa=loc0;; - ld8.fill loc0=[in0],-8;; // itir - mov cr.itir=loc0;; - ld8.fill loc0=[in0],-8;; // ifa - mov cr.ifa=loc0;; - ld8.fill loc0=[in0],-8;; // iip - mov cr.iip=loc0;; - ld8.fill loc0=[in0],-8;; // isr - mov cr.isr=loc0;; - ld8.fill loc0=[in0],-8;; // ipsr - mov cr.ipsr=loc0;; - ld8.fill loc0=[in0],-8;; // pta - mov cr.pta=loc0;; - ld8.fill loc0=[in0],-8;; // iva - mov cr.iva=loc0;; - ld8.fill loc0=[in0],-8;; // itm - mov cr.itm=loc0;; - ld8.fill loc0=[in0],-8;; // dcr - mov cr.dcr=loc0;; - ld8.fill loc0=[in0],-8;; // ec - mov ar.ec=loc0;; - ld8.fill loc0=[in0],-8;; // lc - mov ar.lc=loc0;; - ld8.fill in5=[in0],-8;; // ar.pfs - ld8.fill loc0=[in0],-8;; // ar.fpsr - mov ar.fpsr=loc0;; - ld8.fill loc2=[in0],-8;; // ar.unat - restored later... - ld8.fill loc0=[in0],-8;; // ar.ccv - mov ar.ccv=loc0;; - ld8.fill loc0=[in0],-8;; // ar.fdr - mov ar.fdr=loc0;; - ld8.fill loc0=[in0],-8;; // ar.fir - mov ar.fir=loc0;; - ld8.fill loc0=[in0],-8;; // ar.fsr - mov ar.fsr=loc0;; - ld8.fill loc0=[in0],-8;; // ar.cflg - mov ar.cflg=loc0;; - ld8.fill loc0=[in0],-8;; // ar.ssd - mov ar.ssd=loc0;; - ld8.fill loc0=[in0],-8;; // ar.csd - mov ar.csd=loc0;; - ld8.fill loc0=[in0],-8;; // ar.eflag - mov ar.eflag=loc0;; - ld8.fill loc0=[in0],-8;; // ar.fcr - mov ar.fcr=loc0;; - ld8.fill in4=[in0],-8;; // ar.rnat - ld8.fill in3=[in0],-8;; // bspstore - ld8.fill in2=[in0],-8;; // bsp - ld8.fill loc0=[in0],-8;; // ar.rsc - mov ar.rsc=loc0;; - ld8.fill loc0=[in0],-8;; // B7 - B0 - mov b7=loc0;; - ld8.fill loc0=[in0],-8;; - mov b6=loc0;; - ld8.fill loc0=[in0],-8;; - mov b5=loc0;; - ld8.fill loc0=[in0],-8;; - mov b4=loc0;; - ld8.fill loc0=[in0],-8;; - mov b3=loc0;; - ld8.fill loc0=[in0],-8;; - mov b2=loc0;; - ld8.fill loc0=[in0],-8;; - mov b1=loc0;; - ld8.fill in1=[in0],-8;; // b0 is temporarily stored in in1 - ld8.fill loc0=[in0],-16;; // predicates - mov pr=loc0;; - ldf.fill f31=[in0],-16;; - ldf.fill f30=[in0],-16;; - ldf.fill f29=[in0],-16;; - ldf.fill f28=[in0],-16;; - ldf.fill f27=[in0],-16;; - ldf.fill f26=[in0],-16;; - ldf.fill f25=[in0],-16;; - ldf.fill f24=[in0],-16;; - ldf.fill f23=[in0],-16;; - ldf.fill f22=[in0],-16;; - ldf.fill f21=[in0],-16;; - ldf.fill f20=[in0],-16;; - ldf.fill f19=[in0],-16;; - ldf.fill f18=[in0],-16;; - ldf.fill f17=[in0],-16;; - ldf.fill f16=[in0],-16;; - ldf.fill f15=[in0],-16;; - ldf.fill f14=[in0],-16;; - ldf.fill f13=[in0],-16;; - ldf.fill f12=[in0],-16;; - ldf.fill f11=[in0],-16;; - ldf.fill f10=[in0],-16;; - ldf.fill f9=[in0],-16;; - ldf.fill f8=[in0],-16;; - ldf.fill f7=[in0],-16;; - ldf.fill f6=[in0],-16;; - ldf.fill f5=[in0],-16;; - ldf.fill f4=[in0],-16;; - ldf.fill f3=[in0],-16;; - ldf.fill f2=[in0],-8;; - mov ar.unat=loc3;; // restore unat (int_nat) before fill of general registers - ld8.fill r31=[in0],-8;; - ld8.fill r30=[in0],-8;; - ld8.fill r29=[in0],-8;; - ld8.fill r28=[in0],-8;; - ld8.fill r27=[in0],-8;; - ld8.fill r26=[in0],-8;; - ld8.fill r25=[in0],-8;; - ld8.fill r24=[in0],-8;; - ld8.fill r23=[in0],-8;; - ld8.fill r22=[in0],-8;; - ld8.fill r21=[in0],-8;; - ld8.fill r20=[in0],-8;; - ld8.fill r19=[in0],-8;; - ld8.fill r18=[in0],-8;; - ld8.fill r17=[in0],-8;; - ld8.fill r16=[in0],-8;; - ld8.fill r15=[in0],-8;; - ld8.fill r14=[in0],-8;; - ld8.fill r13=[in0],-8;; - ld8.fill r12=[in0],-8;; - ld8.fill r11=[in0],-8;; - ld8.fill r10=[in0],-8;; - ld8.fill r9=[in0],-8;; - ld8.fill r8=[in0],-8;; - ld8.fill r7=[in0],-8;; - ld8.fill r6=[in0],-8;; - ld8.fill r5=[in0],-8;; - ld8.fill r4=[in0],-8;; - ld8.fill r3=[in0],-8;; - ld8.fill r2=[in0],-8;; - ld8.fill r1=[in0],-8;; - mov ar.unat=loc2;; // restore application context unat - - br.ret.sptk.many b0 - - .endp FillContext - - -///////////////////////////////////////////// -// -// Name: -// HookHandler -// -// Description: -// Common branch target from hooked IVT entries. Runs in interrupt context. -// Responsible for saving and restoring context and calling common C -// handler. Banked registers running on bank 0 at entry. -// -// Arguments: -// All arguments are passed in banked registers: -// B0_REG = Original B0 -// SCRATCH_REG1 = IVT entry index -// -// Returns: -// Returns via rfi -// -// Notes: -// loc0 - scratch -// loc1 - scratch -// loc2 - vector number / mask -// loc3 - 16 byte aligned context record address -// loc4 - temporary storage of last address in context record - -HookHandler: - flushrs;; // Synch RSE with backing store - mov SCRATCH_REG2=ar.bsp // save interrupted context bsp - mov SCRATCH_REG3=ar.bspstore // save interrupted context bspstore - mov SCRATCH_REG4=ar.rnat // save interrupted context rnat - mov SCRATCH_REG6=cr.ifs;; // save IFS in case we need to chain... - cover;; // creates new frame, moves old - // CFM to IFS. - alloc SCRATCH_REG5=0,5,6,0 // alloc 5 locals, 6 outs - ;; - // save banked registers to locals - mov out1=B0_REG // out1 = Original B0 - mov out2=SCRATCH_REG2 // out2 = original ar.bsp - mov out3=SCRATCH_REG3 // out3 = original ar.bspstore - mov out4=SCRATCH_REG4 // out4 = original ar.rnat - mov out5=SCRATCH_REG5 // out5 = original ar.pfs - mov loc2=SCRATCH_REG1;; // loc2 = vector number + chain flag - bsw.1;; // switch banked registers to bank 1 - srlz.d // explicit serialize required - // now fill in context record structure - movl loc3=IpfContextBuf // Insure context record is aligned - add loc0=-0x200,r0;; // mask the lower 9 bits (align on 512 byte boundary) - and loc3=loc3,loc0;; - add loc3=0x200,loc3;; // move to next 512 byte boundary - // loc3 now contains the 512 byte aligned context record - // spill register context into context record - mov out0=loc3;; // Context record base in out0 - // original B0 in out1 already - // original ar.bsp in out2 already - // original ar.bspstore in out3 already - br.call.sptk.few b0=SpillContext;; // spill context - mov loc4=out0 // save modified address - - // At this point, the context has been saved to the context record and we're - // ready to call the C part of the handler... - - movl loc0=CommonHandler;; // obtain address of plabel - ld8 loc1=[loc0];; // get entry point of CommonHandler - mov b6=loc1;; // put it in a branch register - adds loc1= 8, loc0;; // index to GP in plabel - ld8 r1=[loc1];; // set up gp for C call - mov loc1=0xfffff;; // mask off so only vector bits are present - and out0=loc2,loc1;; // pass vector number (exception type) - mov out1=loc3;; // pass context record address - br.call.sptk.few b0=b6;; // call C handler - - // We've returned from the C call, so restore the context and either rfi - // back to interrupted thread, or chain into the SAL if this was an external interrupt - mov out0=loc4;; // pass address of last element in context record - br.call.sptk.few b0=FillContext;; // Fill context - mov b0=out1 // fill in b0 - mov ar.rnat=out4 - mov ar.pfs=out5 - - // Loadrs is necessary because the debugger may have changed some values in - // the backing store. The processor, however may not be aware that the - // stacked registers need to be reloaded from the backing store. Therefore, - // we explicitly cause the RSE to refresh the stacked register's contents - // from the backing store. - mov loc0=ar.rsc // get RSC value - mov loc1=ar.rsc // save it so we can restore it - movl loc3=0xffffffffc000ffff;; // create mask for clearing RSC.loadrs - and loc0=loc0,loc3;; // create value for RSC with RSC.loadrs==0 - mov ar.rsc=loc0;; // modify RSC - loadrs;; // invalidate register stack - mov ar.rsc=loc1;; // restore original RSC - - bsw.0;; // switch banked registers back to bank 0 - srlz.d;; // explicit serialize required - mov PR_REG=pr // save predicates - to be restored after chaining decision - mov B0_REG=b0 // save b0 - required by chain code - mov loc2=EXCPT_EXTERNAL_INTERRUPT;; - cmp.eq p7,p0=SCRATCH_REG1,loc2;; // check to see if this is the timer tick - (p7) br.cond.dpnt.few DO_CHAIN;; - -NO_CHAIN: - mov pr=PR_REG;; - rfi;; // we're outa here. - -DO_CHAIN: - mov pr=PR_REG - mov SCRATCH_REG1=cr.iva - mov SCRATCH_REG2=PATCH_RETURN_OFFSET;; - add SCRATCH_REG1=SCRATCH_REG1, SCRATCH_REG2;; - mov b0=SCRATCH_REG1;; - br.cond.sptk.few b0;; - -EndHookHandler: - - -///////////////////////////////////////////// -// -// Name: -// HookStub -// -// Description: -// HookStub will be copied from it's loaded location into the IVT when -// an IVT entry is hooked. The IVT entry does an indirect jump via B0 to -// HookHandler, which in turn calls into the default C handler, which calls -// the user-installed C handler. The calls return and HookHandler executes -// an rfi. -// -// Notes: -// Saves B0 to B0_REG -// Saves IVT index to SCRATCH_REG1 (immediate value is fixed up when code is copied -// to the IVT entry. - - ASM_GLOBAL HookStub - .proc HookStub -HookStub: - - mov B0_REG=b0 - movl SCRATCH_REG1=HookHandler;; - mov b0=SCRATCH_REG1;; - mov SCRATCH_REG1=0;;// immediate value is fixed up during install of handler to be the vector number - br.cond.sptk.few b0 - - .endp HookStub - - -///////////////////////////////////////////// -// The following code is moved into IVT entry 14 (offset 3400) which is reserved -// in the Itanium architecture. The patch code is located at the end of the -// IVT entry. - -PatchCode: - mov SCRATCH_REG0=psr - mov SCRATCH_REG6=cr.ipsr - mov PR_REG=pr - mov B0_REG=b0;; - - // turn off any virtual translations - movl SCRATCH_REG1 = ~( MASK(PSR_DT,1) | MASK(PSR_RT,1));; - and SCRATCH_REG1 = SCRATCH_REG0, SCRATCH_REG1;; - mov psr.l = SCRATCH_REG1;; - srlz.d - tbit.z p14, p15 = SCRATCH_REG6, PSR_IS;; // Check to see if we were - // interrupted from IA32 - // context. If so, bail out - // and chain to SAL immediately - (p15) br.cond.sptk.few Stub_IVT_Passthru;; - // we only want to take 1 out of 32 external interrupts to minimize the - // impact to system performance. Check our interrupt count and bail - // out if we're not up to 32 - movl SCRATCH_REG1=ExternalInterruptCount;; - ld8 SCRATCH_REG2=[SCRATCH_REG1];; // ExternalInterruptCount - tbit.z p14, p15 = SCRATCH_REG2, 5;; // bit 5 set? - (p14) add SCRATCH_REG2=1, SCRATCH_REG2;; // No? Then increment - // ExternalInterruptCount - // and Chain to SAL - // immediately - (p14) st8 [SCRATCH_REG1]=SCRATCH_REG2;; - (p14) br.cond.sptk.few Stub_IVT_Passthru;; - (p15) mov SCRATCH_REG2=0;; // Yes? Then reset - // ExternalInterruptCount - // and branch to - // HookHandler - (p15) st8 [SCRATCH_REG1]=SCRATCH_REG2;; - mov pr=PR_REG - movl SCRATCH_REG1=HookHandler;; // SCRATCH_REG1 = entrypoint of HookHandler - mov b0=SCRATCH_REG1;; // b0 = entrypoint of HookHandler - mov SCRATCH_REG1=EXCPT_EXTERNAL_INTERRUPT;; - br.sptk.few b0;; // branch to HookHandler - -PatchCodeRet: - // fake-up an rfi to get RSE back to being coherent and insure psr has - // original contents when interrupt occured, then exit to SAL - // at this point: - // cr.ifs has been modified by previous "cover" - // SCRATCH_REG6 has original cr.ifs - - mov SCRATCH_REG5=cr.ipsr - mov SCRATCH_REG4=cr.iip;; - mov cr.ipsr=SCRATCH_REG0 - mov SCRATCH_REG1=ip;; - add SCRATCH_REG1=0x30, SCRATCH_REG1;; - mov cr.iip=SCRATCH_REG1;; - rfi;; // rfi to next instruction - -Stub_RfiTarget: - mov cr.ifs=SCRATCH_REG6 - mov cr.ipsr=SCRATCH_REG5 - mov cr.iip=SCRATCH_REG4;; - -Stub_IVT_Passthru: - mov pr=PR_REG // pr = saved predicate registers - mov b0=B0_REG;; // b0 = saved b0 -EndPatchCode: - - -///////////////////////////////////////////// -// The following bundle is moved into IVT entry 14 (offset 0x3400) which is reserved -// in the Itanium architecture. This bundle will be the last bundle and will -// be located at offset 0x37F0 in the IVT. - -FailsafeBranch: -{ - .mib - nop.m 0 - nop.i 0 - br.sptk.few -(FAILSAFE_BRANCH_OFFSET - EXT_INT_ENTRY_OFFSET - 0x10) -} - - -///////////////////////////////////////////// -// The following bundle is moved into IVT entry 13 (offset 0x3000) which is the -// external interrupt. It branches to the patch code. - -PatchCodeNewBun0: -{ - .mib - nop.m 0 - nop.i 0 - br.cond.sptk.few PATCH_BRANCH -} diff --git a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/Common.i b/MdeModulePkg/Universal/DebugSupportDxe/Ipf/Common.i deleted file mode 100644 index a11f780125..0000000000 --- a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/Common.i +++ /dev/null @@ -1,29 +0,0 @@ -/// @file -/// This is set of useful macros. -/// -/// Copyright (c) 2006, 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. -/// -/// Module Name: Common.i -/// -/// - - -#define NESTED_SETUP(i,l,o,r) \ - alloc loc1=ar##.##pfs,i,l,o,r ; \ - mov loc0=b0 ;; - - -#define NESTED_RETURN \ - mov b0=loc0 ; \ - mov ar##.##pfs=loc1 ;; \ - br##.##ret##.##dpnt b0 ;; - -#define MASK(bp,value) (value << bp) - diff --git a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/Ds64Macros.i b/MdeModulePkg/Universal/DebugSupportDxe/Ipf/Ds64Macros.i deleted file mode 100644 index 8ce97f32c2..0000000000 --- a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/Ds64Macros.i +++ /dev/null @@ -1,78 +0,0 @@ -/// @file -/// This is set of macros used in calculating offsets in the IVT. -/// -/// Copyright (c) 2006 - 2008, 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. -/// -/// - - -#define EXCPT_EXTERNAL_INTERRUPT 12 -#define MASK_0_4 0x000000000000001F // mask bits 0 through 4 -#define SLOT0 0 -#define SLOT1 1 -#define SLOT2 2 - -#define PSR_DT 17 -#define PSR_TB 26 -#define PSR_RT 27 -#define PSR_IS 34 -#define PSR_IT 36 -#define PSR_IC 13 -#define PSR_I 14 -#define PSR_SS 40 -#define PSR_BN 44 -#define PSR_RI_MASK 0x60000000000 - -#define EXCPT_EXTERNAL_INTERRUPT 12 - -#define SCRATCH_REG0 r23 -#define SCRATCH_REG1 r24 -#define SCRATCH_REG2 r25 -#define SCRATCH_REG3 r26 -#define SCRATCH_REG4 r27 -#define SCRATCH_REG5 r28 -#define SCRATCH_REG6 r29 -#define PR_REG r30 -#define B0_REG r31 - - -// EXT_INT_OFFSET is the offset of the external interrupt entry in the IVT -#define EXT_INT_ENTRY_OFFSET 0x03000 - -// PATCH_ENTRY_OFFSET is the offset into the IVT of the entry that is coopted (stolen) -// for use by the handler. The entire entry is restored when the handler is -// unloaded. -#define PATCH_ENTRY_OFFSET 0x03400 - -// PATCH_CODE_SIZE is the size of patch code -#define PATCH_CODE_SIZE (EndPatchCode - PatchCode) - -// A hard coded branch back into the external interrupt IVT entry's second bundle -// is put here, just in case the original bundle zero did not have a branch -// This is the last bundle in the reserved IVT entry -#define FAILSAFE_BRANCH_OFFSET (PATCH_ENTRY_OFFSET + 0x400 - 0x10) - -// the original external interrupt IVT entry bundle zero is copied and relocated -// here... also in the reserved IVT entry -// This is the second-to-last bundle in the reserved IVT entry -#define RELOCATED_EXT_INT (PATCH_ENTRY_OFFSET + 0x400 - 0x20) - -// The patch is actually stored at the end of IVT:PATCH_ENTRY. The PATCH_OFFSET -// is the offset into IVT where the patch is actually stored. It is carefully -// located so that when we run out of patch code, the next bundle is the -// relocated bundle 0 from the original external interrupt handler -#define PATCH_OFFSET (PATCH_ENTRY_OFFSET + 0x400 - ( EndPatchCode - PatchCode ) - 0x20) - -#define PATCH_RETURN_OFFSET (PATCH_ENTRY_OFFSET + 0x400 - ( EndPatchCode - PatchCodeRet ) - 0x20) - -// PATCH_BRANCH is used only in the new bundle that is placed at the beginning -// of the external interrupt IVT entry. -#define PATCH_BRANCH (PATCH_OFFSET - EXT_INT_ENTRY_OFFSET) - diff --git a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.c b/MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.c deleted file mode 100644 index 44f59e8ec8..0000000000 --- a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.c +++ /dev/null @@ -1,467 +0,0 @@ -/** @file - IPF specific functions to support Debug Support protocol. - -Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
-This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#include "PlDebugSupport.h" - -BOOLEAN mInHandler = FALSE; - -// -// number of bundles to swap in ivt -// -#define NUM_BUNDLES_IN_STUB 5 -#define NUM_IVT_ENTRIES 64 - -typedef struct { - BUNDLE OrigBundles[NUM_BUNDLES_IN_STUB]; - CALLBACK_FUNC RegisteredCallback; -} IVT_ENTRY; - -IVT_ENTRY IvtEntryTable[NUM_IVT_ENTRIES]; - -// -// IPF context record is overallocated by 512 bytes to guarantee a 512 byte alignment exists -// within the buffer and still have a large enough buffer to hold a whole IPF context record. -// -UINT8 IpfContextBuf[sizeof (EFI_SYSTEM_CONTEXT_IPF) + 512]; - -// -// The PatchSaveBuffer is used to store the original bundles from the IVT where it is patched -// with the common handler. -// -UINT8 PatchSaveBuffer[0x400]; -UINTN ExternalInterruptCount; - - -/** - IPF specific DebugSupport driver initialization. - - Must be public because it's referenced from DebugSupport.c - - @retval EFI_SUCCESS Always. - -**/ -EFI_STATUS -PlInitializeDebugSupportDriver ( - VOID - ) -{ - ZeroMem (IvtEntryTable, sizeof (IvtEntryTable)); - ExternalInterruptCount = 0; - return EFI_SUCCESS; -} - -/** - Unload handler that is called during UnloadImage() - deallocates pool memory - used by the driver. - - Must be public because it's referenced from DebugSuport.c - - @param ImageHandle The firmware allocated handle for the EFI image. - - @retval EFI_SUCCESS Always. - -**/ -EFI_STATUS -EFIAPI -PlUnloadDebugSupportDriver ( - IN EFI_HANDLE ImageHandle - ) -{ - EFI_EXCEPTION_TYPE ExceptionType; - - for (ExceptionType = 0; ExceptionType < NUM_IVT_ENTRIES; ExceptionType++) { - ManageIvtEntryTable (ExceptionType, NULL, NULL); - } - - return EFI_SUCCESS; -} - -/** - C routine that is called for all registered exceptions. This is the main - exception dispatcher. - - Must be public because it's referenced from AsmFuncs.s. - - @param ExceptionType Specifies which processor exception. - @param Context System Context. -**/ -VOID -CommonHandler ( - IN EFI_EXCEPTION_TYPE ExceptionType, - IN EFI_SYSTEM_CONTEXT Context - ) -{ - DEBUG_CODE_BEGIN (); - if (mInHandler) { - DEBUG ((EFI_D_INFO, "ERROR: Re-entered debugger!\n" - " ExceptionType == %X\n" - " Context == %X\n" - " Context.SystemContextIpf->CrIip == %LX\n" - " Context.SystemContextIpf->CrIpsr == %LX\n" - " mInHandler == %X\n", - (INT32)ExceptionType, - Context, - Context.SystemContextIpf->CrIip, - Context.SystemContextIpf->CrIpsr, - mInHandler)); - } - DEBUG_CODE_END (); - - ASSERT (!mInHandler); - mInHandler = TRUE; - if (IvtEntryTable[ExceptionType].RegisteredCallback != NULL) { - if (ExceptionType != EXCEPT_IPF_EXTERNAL_INTERRUPT) { - IvtEntryTable[ExceptionType].RegisteredCallback (ExceptionType, Context.SystemContextIpf); - } else { - IvtEntryTable[ExceptionType].RegisteredCallback (Context.SystemContextIpf); - } - } else { - ASSERT (0); - } - - mInHandler = FALSE; -} - -/** - Given an integer number, return the physical address of the entry point in the IFT. - - @param HandlerIndex Index of the Handler - @param EntryPoint IFT Entrypoint - -**/ -VOID -GetHandlerEntryPoint ( - UINTN HandlerIndex, - VOID **EntryPoint - ) -{ - UINT8 *TempPtr; - - // - // get base address of IVT - // - TempPtr = GetIva (); - - if (HandlerIndex < 20) { - // - // first 20 provide 64 bundles per vector - // - TempPtr += 0x400 * HandlerIndex; - } else { - // - // the rest provide 16 bundles per vector - // - TempPtr += 0x5000 + 0x100 * (HandlerIndex - 20); - } - - *EntryPoint = (VOID *) TempPtr; -} - -/** - This is the worker function that uninstalls and removes all handlers. - - @param ExceptionType Specifies which processor exception. - @param NewBundles New Boundles. - @param NewCallback A pointer to the new function to be registered. - - @retval EFI_ALEADY_STARTED Ivt already hooked. - @retval EFI_SUCCESS Successfully uninstalled. - -**/ -EFI_STATUS -ManageIvtEntryTable ( - IN EFI_EXCEPTION_TYPE ExceptionType, - IN BUNDLE NewBundles[NUM_BUNDLES_IN_STUB], - IN CALLBACK_FUNC NewCallback - ) -{ - BUNDLE *B0Ptr; - UINT64 InterruptFlags; - EFI_TPL OldTpl; - - // - // Get address of bundle 0 - // - GetHandlerEntryPoint (ExceptionType, (VOID **) &B0Ptr); - - if (IvtEntryTable[ExceptionType].RegisteredCallback != NULL) { - // - // we've already installed to this vector - // - if (NewCallback != NULL) { - // - // if the input handler is non-null, error - // - return EFI_ALREADY_STARTED; - } else { - // - // else remove the previously installed handler - // - OldTpl = gBS->RaiseTPL (TPL_HIGH_LEVEL); - InterruptFlags = ProgramInterruptFlags (DISABLE_INTERRUPTS); - if (ExceptionType == EXCEPT_IPF_EXTERNAL_INTERRUPT) { - UnchainExternalInterrupt (); - } else { - UnhookEntry (ExceptionType); - } - - ProgramInterruptFlags (InterruptFlags); - gBS->RestoreTPL (OldTpl); - // - // re-init IvtEntryTable - // - ZeroMem (&IvtEntryTable[ExceptionType], sizeof (IVT_ENTRY)); - } - } else { - // - // no user handler installed on this vector - // - if (NewCallback != NULL) { - OldTpl = gBS->RaiseTPL (TPL_HIGH_LEVEL); - InterruptFlags = ProgramInterruptFlags (DISABLE_INTERRUPTS); - if (ExceptionType == EXCEPT_IPF_EXTERNAL_INTERRUPT) { - ChainExternalInterrupt (NewCallback); - } else { - HookEntry (ExceptionType, NewBundles, NewCallback); - } - - ProgramInterruptFlags (InterruptFlags); - gBS->RestoreTPL (OldTpl); - } - } - - return EFI_SUCCESS; -} - -/** - Saves original IVT contents and inserts a few new bundles which are fixed up - to store the ExceptionType and then call the common handler. - - @param ExceptionType Specifies which processor exception. - @param NewBundles New Boundles. - @param NewCallback A pointer to the new function to be hooked. - -**/ -VOID -HookEntry ( - IN EFI_EXCEPTION_TYPE ExceptionType, - IN BUNDLE NewBundles[4], - IN CALLBACK_FUNC NewCallback - ) -{ - BUNDLE *FixupBundle; - BUNDLE *B0Ptr; - - // - // Get address of bundle 0 - // - GetHandlerEntryPoint (ExceptionType, (VOID **) &B0Ptr); - - // - // copy original bundles from IVT to IvtEntryTable so we can restore them later - // - CopyMem ( - IvtEntryTable[ExceptionType].OrigBundles, - B0Ptr, - sizeof (BUNDLE) * NUM_BUNDLES_IN_STUB - ); - // - // insert new B0 - // - CopyMem (B0Ptr, NewBundles, sizeof (BUNDLE) * NUM_BUNDLES_IN_STUB); - - // - // fixup IVT entry so it stores its index and whether or not to chain... - // - FixupBundle = B0Ptr + 2; - FixupBundle->High |= ExceptionType << 36; - - InstructionCacheFlush (B0Ptr, 5); - IvtEntryTable[ExceptionType].RegisteredCallback = NewCallback; -} - -/** - Restores original IVT contents when unregistering a callback function. - - @param ExceptionType Specifies which processor exception. - -**/ -VOID -UnhookEntry ( - IN EFI_EXCEPTION_TYPE ExceptionType - ) -{ - BUNDLE *B0Ptr; - - // - // Get address of bundle 0 - // - GetHandlerEntryPoint (ExceptionType, (VOID **) &B0Ptr); - // - // restore original bundles in IVT - // - CopyMem ( - B0Ptr, - IvtEntryTable[ExceptionType].OrigBundles, - sizeof (BUNDLE) * NUM_BUNDLES_IN_STUB - ); - InstructionCacheFlush (B0Ptr, 5); -} - -/** - Sets up cache flush and calls assembly function to chain external interrupt. - - Records new callback in IvtEntryTable. - - @param NewCallback A pointer to the interrupt handle. - -**/ -VOID -ChainExternalInterrupt ( - IN CALLBACK_FUNC NewCallback - ) -{ - VOID *Start; - - Start = (VOID *) ((UINT8 *) GetIva () + 0x400 * EXCEPT_IPF_EXTERNAL_INTERRUPT + 0x400); - IvtEntryTable[EXCEPT_IPF_EXTERNAL_INTERRUPT].RegisteredCallback = NewCallback; - ChainHandler (); - InstructionCacheFlush (Start, 0x400); -} - -/** - Sets up cache flush and calls assembly function to restore external interrupt. - Removes registered callback from IvtEntryTable. - -**/ -VOID -UnchainExternalInterrupt ( - VOID - ) -{ - VOID *Start; - - Start = (VOID *) ((UINT8 *) GetIva () + 0x400 * EXCEPT_IPF_EXTERNAL_INTERRUPT + 0x400); - UnchainHandler (); - InstructionCacheFlush (Start, 0x400); - IvtEntryTable[EXCEPT_IPF_EXTERNAL_INTERRUPT].RegisteredCallback = NULL; -} - -/** - Returns the maximum value that may be used for the ProcessorIndex parameter in - RegisterPeriodicCallback() and RegisterExceptionCallback(). - - Hard coded to support only 1 processor for now. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param MaxProcessorIndex Pointer to a caller-allocated UINTN in which the maximum supported - processor index is returned. Always 0 returned. - - @retval EFI_SUCCESS Always returned with **MaxProcessorIndex set to 0. - -**/ -EFI_STATUS -EFIAPI -GetMaximumProcessorIndex ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - OUT UINTN *MaxProcessorIndex - ) -{ - *MaxProcessorIndex = 0; - return (EFI_SUCCESS); -} - -/** - Registers a function to be called back periodically in interrupt context. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param ProcessorIndex Specifies which processor the callback function applies to. - @param PeriodicCallback A pointer to a function of type PERIODIC_CALLBACK that is the main - periodic entry point of the debug agent. - - @retval EFI_SUCCESS The function completed successfully. - @retval EFI_ALREADY_STARTED Non-NULL PeriodicCallback parameter when a callback - function was previously registered. - @retval EFI_OUT_OF_RESOURCES System has insufficient memory resources to register new callback - function. -**/ -EFI_STATUS -EFIAPI -RegisterPeriodicCallback ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - IN UINTN ProcessorIndex, - IN EFI_PERIODIC_CALLBACK PeriodicCallback - ) -{ - return ManageIvtEntryTable (EXCEPT_IPF_EXTERNAL_INTERRUPT, NULL, PeriodicCallback); -} - -/** - Registers a function to be called when a given processor exception occurs. - - This code executes in boot services context. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param ProcessorIndex Specifies which processor the callback function applies to. - @param ExceptionCallback A pointer to a function of type EXCEPTION_CALLBACK that is called - when the processor exception specified by ExceptionType occurs. - @param ExceptionType Specifies which processor exception to hook. - - @retval EFI_SUCCESS The function completed successfully. - @retval EFI_ALREADY_STARTED Non-NULL PeriodicCallback parameter when a callback - function was previously registered. - @retval EFI_OUT_OF_RESOURCES System has insufficient memory resources to register new callback - function. -**/ -EFI_STATUS -EFIAPI -RegisterExceptionCallback ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - IN UINTN ProcessorIndex, - IN EFI_EXCEPTION_CALLBACK ExceptionCallback, - IN EFI_EXCEPTION_TYPE ExceptionType - ) -{ - return ManageIvtEntryTable ( - ExceptionType, - (BUNDLE *) ((EFI_PLABEL *) HookStub)->EntryPoint, - ExceptionCallback - ); -} - -/** - Invalidates processor instruction cache for a memory range. Subsequent execution in this range - causes a fresh memory fetch to retrieve code to be executed. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param ProcessorIndex Specifies which processor's instruction cache is to be invalidated. - @param Start Specifies the physical base of the memory range to be invalidated. - @param Length Specifies the minimum number of bytes in the processor's instruction - cache to invalidate. - - @retval EFI_SUCCESS Always returned. - -**/ -EFI_STATUS -EFIAPI -InvalidateInstructionCache ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - IN UINTN ProcessorIndex, - IN VOID *Start, - IN UINTN Length - ) -{ - InstructionCacheFlush (Start, Length); - return EFI_SUCCESS; -} diff --git a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.h b/MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.h deleted file mode 100644 index 1701fbff42..0000000000 --- a/MdeModulePkg/Universal/DebugSupportDxe/Ipf/PlDebugSupport.h +++ /dev/null @@ -1,324 +0,0 @@ -/** @file - IPF specific types, macros, and definitions for Debug Support Driver. - -Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.
-This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#ifndef _PLDEBUG_SUPPORT_H_ -#define _PLDEBUG_SUPPORT_H_ - -#include - -#include -#include - -#include -#include -#include -#include -#include - -#define DISABLE_INTERRUPTS 0UL - -#define EFI_ISA IsaIpf - -typedef struct { - UINT64 Low; - UINT64 High; -} BUNDLE; - -typedef -VOID -(*CALLBACK_FUNC) ( - ); - -/** - IPF specific DebugSupport driver initialization. - - Must be public because it's referenced from DebugSupport.c - - @retval EFI_SUCCESS Always. - -**/ -EFI_STATUS -PlInitializeDebugSupportDriver ( - VOID - ); - -/** - Unload handler that is called during UnloadImage() - deallocates pool memory - used by the driver. - - Must be public because it's referenced from DebugSuport.c - - @param ImageHandle The firmware allocated handle for the EFI image. - - @retval EFI_SUCCESS Always. - -**/ -EFI_STATUS -EFIAPI -PlUnloadDebugSupportDriver ( - IN EFI_HANDLE ImageHandle - ); - -/** - C callable function to obtain the current value of IVA. - - @return Current value of IVA. - -**/ -VOID * -GetIva ( - VOID - ); - -/** - C callable function that HookStub will be copied from it's loaded location into the IVT when - an IVT entry is hooked. - -**/ -VOID -HookStub ( - VOID - ); - -/** - C callable function to chain an interrupt handler. - -**/ -VOID -ChainHandler ( - VOID - ); - -/** - C callable function to unchain an interrupt handler. - -**/ -VOID -UnchainHandler ( - VOID - ); - -/** - C callable function to enable/disable interrupts. - - @param NewInterruptState New Interrupt State. - - @return Previous state of psr.ic. - -**/ -UINT64 -ProgramInterruptFlags ( - IN UINT64 NewInterruptState - ); - -/** - Flushes instruction cache for specified number of bytes. - - @param StartAddress Cache Start Address. - @param SizeInBytes Cache Size. - -**/ -VOID -InstructionCacheFlush ( - IN VOID *StartAddress, - IN UINTN SizeInBytes - ); - -/** - Returns the maximum value that may be used for the ProcessorIndex parameter in - RegisterPeriodicCallback() and RegisterExceptionCallback(). - - Hard coded to support only 1 processor for now. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param MaxProcessorIndex Pointer to a caller-allocated UINTN in which the maximum supported - processor index is returned. Always 0 returned. - - @retval EFI_SUCCESS Always returned with **MaxProcessorIndex set to 0. - -**/ -EFI_STATUS -EFIAPI -GetMaximumProcessorIndex ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - OUT UINTN *MaxProcessorIndex - ); - -/** - Registers a function to be called back periodically in interrupt context. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param ProcessorIndex Specifies which processor the callback function applies to. - @param PeriodicCallback A pointer to a function of type PERIODIC_CALLBACK that is the main - periodic entry point of the debug agent. - - @retval EFI_SUCCESS The function completed successfully. - @retval EFI_ALREADY_STARTED Non-NULL PeriodicCallback parameter when a callback - function was previously registered. - @retval EFI_OUT_OF_RESOURCES System has insufficient memory resources to register new callback - function. -**/ -EFI_STATUS -EFIAPI -RegisterPeriodicCallback ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - IN UINTN ProcessorIndex, - IN EFI_PERIODIC_CALLBACK PeriodicCallback - ); - -/** - Registers a function to be called when a given processor exception occurs. - - This code executes in boot services context. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param ProcessorIndex Specifies which processor the callback function applies to. - @param ExceptionCallback A pointer to a function of type EXCEPTION_CALLBACK that is called - when the processor exception specified by ExceptionType occurs. - @param ExceptionType Specifies which processor exception to hook. - - @retval EFI_SUCCESS The function completed successfully. - @retval EFI_ALREADY_STARTED Non-NULL PeriodicCallback parameter when a callback - function was previously registered. - @retval EFI_OUT_OF_RESOURCES System has insufficient memory resources to register new callback - function. -**/ -EFI_STATUS -EFIAPI -RegisterExceptionCallback ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - IN UINTN ProcessorIndex, - IN EFI_EXCEPTION_CALLBACK ExceptionCallback, - IN EFI_EXCEPTION_TYPE ExceptionType - ); - -/** - Invalidates processor instruction cache for a memory range. Subsequent execution in this range - causes a fresh memory fetch to retrieve code to be executed. - - @param This A pointer to the EFI_DEBUG_SUPPORT_PROTOCOL instance. - @param ProcessorIndex Specifies which processor's instruction cache is to be invalidated. - @param Start Specifies the physical base of the memory range to be invalidated. - @param Length Specifies the minimum number of bytes in the processor's instruction - cache to invalidate. - - @retval EFI_SUCCESS Always returned. - -**/ -EFI_STATUS -EFIAPI -InvalidateInstructionCache ( - IN EFI_DEBUG_SUPPORT_PROTOCOL *This, - IN UINTN ProcessorIndex, - IN VOID *Start, - IN UINTN Length - ); - -/** - C routine that is called for all registered exceptions. This is the main - exception dispatcher. - - Must be public because it's referenced from AsmFuncs.s. - - @param ExceptionType Specifies which processor exception. - @param Context System Context. -**/ -VOID -CommonHandler ( - IN EFI_EXCEPTION_TYPE ExceptionType, - IN EFI_SYSTEM_CONTEXT Context - ); - -/** - This is the worker function that uninstalls and removes all handlers. - - @param ExceptionType Specifies which processor exception. - @param NewBundles New Boundles. - @param NewCallback A pointer to the new function to be registered. - - @retval EFI_ALEADY_STARTED Ivt already hooked. - @retval EFI_SUCCESS Successfully uninstalled. - -**/ -EFI_STATUS -ManageIvtEntryTable ( - IN EFI_EXCEPTION_TYPE ExceptionType, - IN BUNDLE NewBundles[4], - IN CALLBACK_FUNC NewCallback - ); - -/** - Saves original IVT contents and inserts a few new bundles which are fixed up - to store the ExceptionType and then call the common handler. - - @param ExceptionType Specifies which processor exception. - @param NewBundles New Boundles. - @param NewCallback A pointer to the new function to be hooked. - -**/ -VOID -HookEntry ( - IN EFI_EXCEPTION_TYPE ExceptionType, - IN BUNDLE NewBundles[4], - IN CALLBACK_FUNC NewCallback - ); - -/** - Restores original IVT contents when unregistering a callback function. - - @param ExceptionType Specifies which processor exception. - -**/ -VOID -UnhookEntry ( - IN EFI_EXCEPTION_TYPE ExceptionType - ); - -/** - Sets up cache flush and calls assembly function to chain external interrupt. - - Records new callback in IvtEntryTable. - - @param NewCallback A pointer to the interrupt handle. - -**/ -VOID -ChainExternalInterrupt ( - IN CALLBACK_FUNC NewCallback - ); - -/** - Sets up cache flush and calls assembly function to restore external interrupt. - Removes registered callback from IvtEntryTable. - -**/ -VOID -UnchainExternalInterrupt ( - VOID - ); - -/** - Given an integer number, return the physical address of the entry point in the IFT. - - @param HandlerIndex Index of the Handler - @param EntryPoint IFT Entrypoint - -**/ -VOID -GetHandlerEntryPoint ( - UINTN HandlerIndex, - VOID **EntryPoint - ); - -#endif diff --git a/MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf b/MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf index 37bbe297e6..6bdbb17d9d 100644 --- a/MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf +++ b/MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf b/MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf index e9ddecf967..fe2cbad47a 100644 --- a/MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf +++ b/MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf @@ -31,7 +31,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf b/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf index 6c00f553aa..f8566baa4b 100644 --- a/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf +++ b/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf @@ -31,7 +31,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gDiskIoDriverBinding # COMPONENT_NAME = gDiskIoComponentName diff --git a/MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf b/MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf index 46e39129cf..98c5c91ad3 100644 --- a/MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf +++ b/MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gPartitionDriverBinding # COMPONENT_NAME = gPartitionComponentName diff --git a/MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf b/MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf index 7fea6bd9dc..c8bfc880ed 100644 --- a/MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf +++ b/MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf @@ -1,6 +1,7 @@ ## @file # UDF/ECMA-167 file system driver. # +# Copyright (c) 2018, Intel Corporation. All rights reserved.
# Copyright (C) 2014-2017 Paulo Alcantara # # This program and the accompanying materials @@ -23,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUdfDriverBinding # COMPONENT_NAME = gUdfComponentName diff --git a/MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf b/MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf index ad763b1af4..50942608d8 100644 --- a/MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf +++ b/MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf b/MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf index c1c1974c13..1db6199db5 100644 --- a/MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf +++ b/MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf b/MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf index d84c7cee15..e6fcb883a4 100644 --- a/MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf +++ b/MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf @@ -33,7 +33,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # diff --git a/MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf b/MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf index f856efebc7..2da50e2838 100644 --- a/MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf +++ b/MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebugger.inf b/MdeModulePkg/Universal/EbcDxe/EbcDebugger.inf index 10a6b2c06e..8f293f5c7c 100644 --- a/MdeModulePkg/Universal/EbcDxe/EbcDebugger.inf +++ b/MdeModulePkg/Universal/EbcDxe/EbcDebugger.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF AARCH64 +# VALID_ARCHITECTURES = IA32 X64 AARCH64 # [Sources] @@ -73,11 +73,6 @@ X64/EbcSupport.c X64/EbcLowLevel.nasm -[Sources.IPF] - Ipf/EbcSupport.h - Ipf/EbcSupport.c - Ipf/EbcLowLevel.s - [Sources.AARCH64] AArch64/EbcSupport.c AArch64/EbcLowLevel.S diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDebuggerConfig.inf b/MdeModulePkg/Universal/EbcDxe/EbcDebuggerConfig.inf index 0d931a46f0..e04ffe2b08 100644 --- a/MdeModulePkg/Universal/EbcDxe/EbcDebuggerConfig.inf +++ b/MdeModulePkg/Universal/EbcDxe/EbcDebuggerConfig.inf @@ -1,7 +1,7 @@ ## @file # EBC Debugger configuration application. # -# Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, 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 @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF AARCH64 +# VALID_ARCHITECTURES = IA32 X64 AARCH64 # [Sources] diff --git a/MdeModulePkg/Universal/EbcDxe/EbcDxe.inf b/MdeModulePkg/Universal/EbcDxe/EbcDxe.inf index 8f128b121d..d6ee6194a0 100644 --- a/MdeModulePkg/Universal/EbcDxe/EbcDxe.inf +++ b/MdeModulePkg/Universal/EbcDxe/EbcDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF AARCH64 +# VALID_ARCHITECTURES = IA32 X64 AARCH64 # [Sources] @@ -48,11 +48,6 @@ X64/EbcSupport.c X64/EbcLowLevel.nasm -[Sources.IPF] - Ipf/EbcSupport.h - Ipf/EbcSupport.c - Ipf/EbcLowLevel.s - [Sources.AARCH64] AArch64/EbcSupport.c AArch64/EbcLowLevel.S diff --git a/MdeModulePkg/Universal/EbcDxe/Ipf/EbcLowLevel.s b/MdeModulePkg/Universal/EbcDxe/Ipf/EbcLowLevel.s deleted file mode 100644 index 4ae24dee7d..0000000000 --- a/MdeModulePkg/Universal/EbcDxe/Ipf/EbcLowLevel.s +++ /dev/null @@ -1,206 +0,0 @@ -///** @file -// -// Contains low level routines for the Virtual Machine implementation -// on an Itanium-based platform. -// -// Copyright (c) 2006 - 2011, 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. -// -//**/ - -.file "EbcLowLevel.s" - -#define PROCEDURE_ENTRY(name) .##text; \ - .##type name, @function; \ - .##proc name; \ -name:: - -#define PROCEDURE_EXIT(name) .##endp name - -// Note: use of NESTED_SETUP requires number of locals (l) >= 3 - -#define NESTED_SETUP(i,l,o,r) \ - alloc loc1=ar##.##pfs,i,l,o,r ;\ - mov loc0=b0 - -#define NESTED_RETURN \ - mov b0=loc0 ;\ - mov ar##.##pfs=loc1 ;;\ - br##.##ret##.##dpnt b0;; - -.type CopyMem, @function; - -//----------------------------------------------------------------------------- -//++ -// EbcAsmLLCALLEX -// -// Implements the low level EBC CALLEX instruction. Sets up the -// stack pointer, does the spill of function arguments, and -// calls the native function. On return it restores the original -// stack pointer and returns to the caller. -// -// Arguments : -// -// On Entry : -// in0 = Address of native code to call -// in1 = New stack pointer -// -// Return Value: -// -// As per static calling conventions. -// -//-- -//--------------------------------------------------------------------------- -;// void EbcAsmLLCALLEX (UINTN FunctionAddr, UINTN EbcStackPointer) -PROCEDURE_ENTRY(EbcAsmLLCALLEX) - NESTED_SETUP (2,6,8,0) - - // NESTED_SETUP uses loc0 and loc1 for context save - - // - // Save a copy of the EBC VM stack pointer - // - mov r8 = in1;; - - // - // Copy stack arguments from EBC stack into registers. - // Assume worst case and copy 8. - // - ld8 out0 = [r8], 8;; - ld8 out1 = [r8], 8;; - ld8 out2 = [r8], 8;; - ld8 out3 = [r8], 8;; - ld8 out4 = [r8], 8;; - ld8 out5 = [r8], 8;; - ld8 out6 = [r8], 8;; - ld8 out7 = [r8], 8;; - - // - // Save the original stack pointer - // - mov loc2 = r12; - - // - // Save the gp - // - or loc3 = r1, r0 - - // - // Set the new aligned stack pointer. Reserve space for the required - // 16-bytes of scratch area as well. - // - add r12 = 48, in1 - - // - // Now call the function. Load up the function address from the descriptor - // pointed to by in0. Then get the gp from the descriptor at the following - // address in the descriptor. - // - ld8 r31 = [in0], 8;; - ld8 r30 = [in0];; - mov b1 = r31 - mov r1 = r30 - (p0) br.call.dptk.many b0 = b1;; - - // - // Restore the original stack pointer and gp - // - mov r12 = loc2 - or r1 = loc3, r0 - - // - // Now return - // - NESTED_RETURN - -PROCEDURE_EXIT(EbcAsmLLCALLEX) - -//----------------------------------------------------------------------------- -//++ -// EbcLLCALLEXNative -// -// This function is called to execute an EBC CALLEX instruction. -// This instruction requires that we thunk out to external native -// code. On return, we restore the stack pointer to its original location. -// Destroys no working registers. For IPF, at least 8 register slots -// must be allocated on the stack frame to support any number of -// arguments beiung passed to the external native function. The -// size of the stack frame is FramePtr - EbcSp. If this size is less -// than 64-bytes, the amount of stack frame allocated is rounded up -// to 64-bytes -// -// Arguments On Entry : -// in0 = CallAddr The function address. -// in1 = EbcSp The new EBC stack pointer. -// in2 = FramePtr The frame pointer. -// -// Return Value: -// None -// -// C Function Prototype: -// VOID -// EFIAPI -// EbcLLCALLEXNative ( -// IN UINTN CallAddr, -// IN UINTN EbcSp, -// IN VOID *FramePtr -// ); -//-- -//--------------------------------------------------------------------------- - -PROCEDURE_ENTRY(EbcLLCALLEXNative) - NESTED_SETUP (3,6,3,0) - - mov loc2 = in2;; // loc2 = in2 = FramePtr - mov loc3 = in1;; // loc3 = in1 = EbcSp - sub loc2 = loc2, loc3;; // loc2 = loc2 - loc3 = FramePtr - EbcSp - mov out2 = loc2;; // out2 = loc2 = FramePtr - EbcSp - mov loc4 = 0x40;; // loc4 = 0x40 - cmp.leu p6 = out2, loc4;; // IF out2 < loc4 THEN P6=1 ELSE P6=0; IF (FramePtr - EbcSp) < 0x40 THEN P6 = 1 ELSE P6=0 - (p6) mov loc2 = loc4;; // IF P6==1 THEN loc2 = loc4 = 0x40 - mov loc4 = r12;; // save sp - or loc5 = r1, r0 // save gp - - sub r12 = r12, loc2;; // sp = sp - loc2 = sp - MAX (0x40, FramePtr - EbcSp) - - and r12 = -0x10, r12 // Round sp down to the nearest 16-byte boundary - mov out1 = in1;; // out1 = EbcSp - mov out0 = r12;; // out0 = sp - adds r12 = -0x8, r12 - (p0) br.call.dptk.many b0 = CopyMem;; // CopyMem (sp, EbcSp, (FramePtr - EbcSp)) - adds r12 = 0x8, r12 - - mov out0 = in0;; // out0 = CallAddr - mov out1 = r12;; // out1 = sp - (p0) br.call.dptk.many b0 = EbcAsmLLCALLEX;; // EbcAsmLLCALLEX (CallAddr, sp) - mov r12 = loc4;; // restore sp - or r1 = loc5, r0 // restore gp - - NESTED_RETURN -PROCEDURE_EXIT(EbcLLCALLEXNative) - - -// -// UINTN EbcLLGetEbcEntryPoint(VOID) -// -// Description: -// Simply return, so that the caller retrieves the return register -// contents (R8). That's where the thunk-to-ebc code stuffed the -// EBC entry point. -// -PROCEDURE_ENTRY(EbcLLGetEbcEntryPoint) - br.ret.sptk b0 ;; -PROCEDURE_EXIT(EbcLLGetEbcEntryPoint) - - - - - - - diff --git a/MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.c b/MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.c deleted file mode 100644 index f99348f181..0000000000 --- a/MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.c +++ /dev/null @@ -1,884 +0,0 @@ -/** @file - This module contains EBC support routines that are customized based on - the target processor. - -Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
-This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#include "EbcInt.h" -#include "EbcExecute.h" -#include "EbcSupport.h" -#include "EbcDebuggerHook.h" - -/** - Given raw bytes of Itanium based code, format them into a bundle and - write them out. - - @param MemPtr pointer to memory location to write the bundles - to. - @param Template 5-bit template. - @param Slot0 Instruction slot 0 data for the bundle. - @param Slot1 Instruction slot 1 data for the bundle. - @param Slot2 Instruction slot 2 data for the bundle. - - @retval EFI_INVALID_PARAMETER Pointer is not aligned - @retval EFI_INVALID_PARAMETER No more than 5 bits in template - @retval EFI_INVALID_PARAMETER More than 41 bits used in code - @retval EFI_SUCCESS All data is written. - -**/ -EFI_STATUS -WriteBundle ( - IN VOID *MemPtr, - IN UINT8 Template, - IN UINT64 Slot0, - IN UINT64 Slot1, - IN UINT64 Slot2 - ); - -/** - Pushes a 64 bit unsigned value to the VM stack. - - @param VmPtr The pointer to current VM context. - @param Arg The value to be pushed. - -**/ -VOID -PushU64 ( - IN VM_CONTEXT *VmPtr, - IN UINT64 Arg - ) -{ - // - // Advance the VM stack down, and then copy the argument to the stack. - // Hope it's aligned. - // - VmPtr->Gpr[0] -= sizeof (UINT64); - *(UINT64 *) VmPtr->Gpr[0] = Arg; -} - -/** - Begin executing an EBC image. The address of the entry point is passed - in via a processor register, so we'll need to make a call to get the - value. - - This is a thunk function. Microsoft x64 compiler only provide fast_call - calling convention, so the first four arguments are passed by rcx, rdx, - r8, and r9, while other arguments are passed in stack. - - @param Arg1 The 1st argument. - @param ... The variable arguments list. - - @return The value returned by the EBC application we're going to run. - -**/ -UINT64 -EFIAPI -EbcInterpret ( - UINT64 Arg1, - ... - ) -{ - // - // Create a new VM context on the stack - // - VM_CONTEXT VmContext; - UINTN Addr; - EFI_STATUS Status; - UINTN StackIndex; - VA_LIST List; - UINT64 Arg2; - UINT64 Arg3; - UINT64 Arg4; - UINT64 Arg5; - UINT64 Arg6; - UINT64 Arg7; - UINT64 Arg8; - UINT64 Arg9; - UINT64 Arg10; - UINT64 Arg11; - UINT64 Arg12; - UINT64 Arg13; - UINT64 Arg14; - UINT64 Arg15; - UINT64 Arg16; - // - // Get the EBC entry point from the processor register. Make sure you don't - // call any functions before this or you could mess up the register the - // entry point is passed in. - // - Addr = EbcLLGetEbcEntryPoint (); - // - // Need the args off the stack. - // - VA_START (List, Arg1); - Arg2 = VA_ARG (List, UINT64); - Arg3 = VA_ARG (List, UINT64); - Arg4 = VA_ARG (List, UINT64); - Arg5 = VA_ARG (List, UINT64); - Arg6 = VA_ARG (List, UINT64); - Arg7 = VA_ARG (List, UINT64); - Arg8 = VA_ARG (List, UINT64); - Arg9 = VA_ARG (List, UINT64); - Arg10 = VA_ARG (List, UINT64); - Arg11 = VA_ARG (List, UINT64); - Arg12 = VA_ARG (List, UINT64); - Arg13 = VA_ARG (List, UINT64); - Arg14 = VA_ARG (List, UINT64); - Arg15 = VA_ARG (List, UINT64); - Arg16 = VA_ARG (List, UINT64); - VA_END (List); - // - // Now clear out our context - // - ZeroMem ((VOID *) &VmContext, sizeof (VM_CONTEXT)); - // - // Set the VM instruction pointer to the correct location in memory. - // - VmContext.Ip = (VMIP) Addr; - // - // Initialize the stack pointer for the EBC. Get the current system stack - // pointer and adjust it down by the max needed for the interpreter. - // - // - // NOTE: Eventually we should have the interpreter allocate memory - // for stack space which it will use during its execution. This - // would likely improve performance because the interpreter would - // no longer be required to test each memory access and adjust - // those reading from the stack gap. - // - // For IPF, the stack looks like (assuming 10 args passed) - // arg10 - // arg9 (Bottom of high stack) - // [ stack gap for interpreter execution ] - // [ magic value for detection of stack corruption ] - // arg8 (Top of low stack) - // arg7.... - // arg1 - // [ 64-bit return address ] - // [ ebc stack ] - // If the EBC accesses memory in the stack gap, then we assume that it's - // actually trying to access args9 and greater. Therefore we need to - // adjust memory accesses in this region to point above the stack gap. - // - // - // Now adjust the EBC stack pointer down to leave a gap for interpreter - // execution. Then stuff a magic value there. - // - - Status = GetEBCStack((EFI_HANDLE)(UINTN)-1, &VmContext.StackPool, &StackIndex); - if (EFI_ERROR(Status)) { - return Status; - } - VmContext.StackTop = (UINT8*)VmContext.StackPool + (STACK_REMAIN_SIZE); - VmContext.Gpr[0] = (UINT64) ((UINT8*)VmContext.StackPool + STACK_POOL_SIZE); - VmContext.HighStackBottom = (UINTN) VmContext.Gpr[0]; - VmContext.Gpr[0] -= sizeof (UINTN); - - - PushU64 (&VmContext, (UINT64) VM_STACK_KEY_VALUE); - VmContext.StackMagicPtr = (UINTN *) VmContext.Gpr[0]; - VmContext.LowStackTop = (UINTN) VmContext.Gpr[0]; - // - // Push the EBC arguments on the stack. Does not matter that they may not - // all be valid. - // - PushU64 (&VmContext, Arg16); - PushU64 (&VmContext, Arg15); - PushU64 (&VmContext, Arg14); - PushU64 (&VmContext, Arg13); - PushU64 (&VmContext, Arg12); - PushU64 (&VmContext, Arg11); - PushU64 (&VmContext, Arg10); - PushU64 (&VmContext, Arg9); - PushU64 (&VmContext, Arg8); - PushU64 (&VmContext, Arg7); - PushU64 (&VmContext, Arg6); - PushU64 (&VmContext, Arg5); - PushU64 (&VmContext, Arg4); - PushU64 (&VmContext, Arg3); - PushU64 (&VmContext, Arg2); - PushU64 (&VmContext, Arg1); - // - // Push a bogus return address on the EBC stack because the - // interpreter expects one there. For stack alignment purposes on IPF, - // EBC return addresses are always 16 bytes. Push a bogus value as well. - // - PushU64 (&VmContext, 0); - PushU64 (&VmContext, 0xDEADBEEFDEADBEEF); - VmContext.StackRetAddr = (UINT64) VmContext.Gpr[0]; - - // - // Begin executing the EBC code - // - EbcDebuggerHookEbcInterpret (&VmContext); - EbcExecute (&VmContext); - - // - // Return the value in Gpr[7] unless there was an error - // - ReturnEBCStack(StackIndex); - return (UINT64) VmContext.Gpr[7]; -} - - -/** - Begin executing an EBC image. The address of the entry point is passed - in via a processor register, so we'll need to make a call to get the - value. - - @param ImageHandle image handle for the EBC application we're executing - @param SystemTable standard system table passed into an driver's entry - point - - @return The value returned by the EBC application we're going to run. - -**/ -UINT64 -EFIAPI -ExecuteEbcImageEntryPoint ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - // - // Create a new VM context on the stack - // - VM_CONTEXT VmContext; - UINTN Addr; - EFI_STATUS Status; - UINTN StackIndex; - - // - // Get the EBC entry point from the processor register. Make sure you don't - // call any functions before this or you could mess up the register the - // entry point is passed in. - // - Addr = EbcLLGetEbcEntryPoint (); - - // - // Now clear out our context - // - ZeroMem ((VOID *) &VmContext, sizeof (VM_CONTEXT)); - - // - // Save the image handle so we can track the thunks created for this image - // - VmContext.ImageHandle = ImageHandle; - VmContext.SystemTable = SystemTable; - - // - // Set the VM instruction pointer to the correct location in memory. - // - VmContext.Ip = (VMIP) Addr; - - // - // Get the stack pointer. This is the bottom of the upper stack. - // - - Status = GetEBCStack(ImageHandle, &VmContext.StackPool, &StackIndex); - if (EFI_ERROR(Status)) { - return Status; - } - VmContext.StackTop = (UINT8*)VmContext.StackPool + (STACK_REMAIN_SIZE); - VmContext.Gpr[0] = (UINT64) ((UINT8*)VmContext.StackPool + STACK_POOL_SIZE); - VmContext.HighStackBottom = (UINTN) VmContext.Gpr[0]; - VmContext.Gpr[0] -= sizeof (UINTN); - - - // - // Allocate stack space for the interpreter. Then put a magic value - // at the bottom so we can detect stack corruption. - // - PushU64 (&VmContext, (UINT64) VM_STACK_KEY_VALUE); - VmContext.StackMagicPtr = (UINTN *) (UINTN) VmContext.Gpr[0]; - - // - // When we thunk to external native code, we copy the last 8 qwords from - // the EBC stack into the processor registers, and adjust the stack pointer - // up. If the caller is not passing 8 parameters, then we've moved the - // stack pointer up into the stack gap. If this happens, then the caller - // can mess up the stack gap contents (in particular our magic value). - // Therefore, leave another gap below the magic value. Pick 10 qwords down, - // just as a starting point. - // - VmContext.Gpr[0] -= 10 * sizeof (UINT64); - - // - // Align the stack pointer such that after pushing the system table, - // image handle, and return address on the stack, it's aligned on a 16-byte - // boundary as required for IPF. - // - VmContext.Gpr[0] &= (INT64)~0x0f; - VmContext.LowStackTop = (UINTN) VmContext.Gpr[0]; - // - // Simply copy the image handle and system table onto the EBC stack. - // Greatly simplifies things by not having to spill the args - // - PushU64 (&VmContext, (UINT64) SystemTable); - PushU64 (&VmContext, (UINT64) ImageHandle); - - // - // Interpreter assumes 64-bit return address is pushed on the stack. - // IPF does not do this so pad the stack accordingly. Also, a - // "return address" is 16 bytes as required for IPF stack alignments. - // - PushU64 (&VmContext, (UINT64) 0); - PushU64 (&VmContext, (UINT64) 0x1234567887654321); - VmContext.StackRetAddr = (UINT64) VmContext.Gpr[0]; - - // - // Begin executing the EBC code - // - EbcDebuggerHookExecuteEbcImageEntryPoint (&VmContext); - EbcExecute (&VmContext); - - // - // Return the value in Gpr[7] unless there was an error - // - ReturnEBCStack(StackIndex); - return (UINT64) VmContext.Gpr[7]; -} - - -/** - Create thunks for an EBC image entry point, or an EBC protocol service. - - @param ImageHandle Image handle for the EBC image. If not null, then - we're creating a thunk for an image entry point. - @param EbcEntryPoint Address of the EBC code that the thunk is to call - @param Thunk Returned thunk we create here - @param Flags Flags indicating options for creating the thunk - - @retval EFI_SUCCESS The thunk was created successfully. - @retval EFI_INVALID_PARAMETER The parameter of EbcEntryPoint is not 16-bit - aligned. - @retval EFI_OUT_OF_RESOURCES There is not enough memory to created the EBC - Thunk. - @retval EFI_BUFFER_TOO_SMALL EBC_THUNK_SIZE is not larger enough. - -**/ -EFI_STATUS -EbcCreateThunks ( - IN EFI_HANDLE ImageHandle, - IN VOID *EbcEntryPoint, - OUT VOID **Thunk, - IN UINT32 Flags - ) -{ - UINT8 *Ptr; - UINT8 *ThunkBase; - UINT64 Addr; - UINT64 Code[3]; // Code in a bundle - UINT64 RegNum; // register number for MOVL - UINT64 BitI; // bits of MOVL immediate data - UINT64 BitIc; // bits of MOVL immediate data - UINT64 BitImm5c; // bits of MOVL immediate data - UINT64 BitImm9d; // bits of MOVL immediate data - UINT64 BitImm7b; // bits of MOVL immediate data - UINT64 Br; // branch register for loading and jumping - UINT64 *Data64Ptr; - UINT32 ThunkSize; - UINT32 Size; - - // - // Check alignment of pointer to EBC code, which must always be aligned - // on a 2-byte boundary. - // - if ((UINT32) (UINTN) EbcEntryPoint & 0x01) { - return EFI_INVALID_PARAMETER; - } - // - // Allocate memory for the thunk. Make the (most likely incorrect) assumption - // that the returned buffer is not aligned, so round up to the next - // alignment size. - // - Size = EBC_THUNK_SIZE + EBC_THUNK_ALIGNMENT - 1; - ThunkSize = Size; - Ptr = EbcAllocatePoolForThunk (Size); - - if (Ptr == NULL) { - return EFI_OUT_OF_RESOURCES; - } - // - // Save the start address of the buffer. - // - ThunkBase = Ptr; - - // - // Make sure it's aligned for code execution. If not, then - // round up. - // - if ((UINT32) (UINTN) Ptr & (EBC_THUNK_ALIGNMENT - 1)) { - Ptr = (UINT8 *) (((UINTN) Ptr + (EBC_THUNK_ALIGNMENT - 1)) &~ (UINT64) (EBC_THUNK_ALIGNMENT - 1)); - } - // - // Return the pointer to the thunk to the caller to user as the - // image entry point. - // - *Thunk = (VOID *) Ptr; - - // - // Clear out the thunk entry - // ZeroMem(Ptr, Size); - // - // For IPF, when you do a call via a function pointer, the function pointer - // actually points to a function descriptor which consists of a 64-bit - // address of the function, followed by a 64-bit gp for the function being - // called. See the the Software Conventions and Runtime Architecture Guide - // for details. - // So first off in our thunk, create a descriptor for our actual thunk code. - // This means we need to create a pointer to the thunk code (which follows - // the descriptor we're going to create), followed by the gp of the Vm - // interpret function we're going to eventually execute. - // - Data64Ptr = (UINT64 *) Ptr; - - // - // Write the function's entry point (which is our thunk code that follows - // this descriptor we're creating). - // - *Data64Ptr = (UINT64) (Data64Ptr + 2); - // - // Get the gp from the descriptor for EbcInterpret and stuff it in our thunk - // descriptor. - // - *(Data64Ptr + 1) = *(UINT64 *) ((UINT64 *) (UINTN) EbcInterpret + 1); - // - // Advance our thunk data pointer past the descriptor. Since the - // descriptor consists of 16 bytes, the pointer is still aligned for - // IPF code execution (on 16-byte boundary). - // - Ptr += sizeof (UINT64) * 2; - - // - // *************************** MAGIC BUNDLE ******************************** - // - // Write magic code bundle for: movl r8 = 0xca112ebcca112ebc to help the VM - // to recognize it is a thunk. - // - Addr = (UINT64) 0xCA112EBCCA112EBC; - - // - // Now generate the code bytes. First is nop.m 0x0 - // - Code[0] = OPCODE_NOP; - - // - // Next is simply Addr[62:22] (41 bits) of the address - // - Code[1] = RShiftU64 (Addr, 22) & 0x1ffffffffff; - - // - // Extract bits from the address for insertion into the instruction - // i = Addr[63:63] - // - BitI = RShiftU64 (Addr, 63) & 0x01; - // - // ic = Addr[21:21] - // - BitIc = RShiftU64 (Addr, 21) & 0x01; - // - // imm5c = Addr[20:16] for 5 bits - // - BitImm5c = RShiftU64 (Addr, 16) & 0x1F; - // - // imm9d = Addr[15:7] for 9 bits - // - BitImm9d = RShiftU64 (Addr, 7) & 0x1FF; - // - // imm7b = Addr[6:0] for 7 bits - // - BitImm7b = Addr & 0x7F; - - // - // The EBC entry point will be put into r8, so r8 can be used here - // temporary. R8 is general register and is auto-serialized. - // - RegNum = 8; - - // - // Next is jumbled data, including opcode and rest of address - // - Code[2] = LShiftU64 (BitImm7b, 13); - Code[2] = Code[2] | LShiftU64 (0x00, 20); // vc - Code[2] = Code[2] | LShiftU64 (BitIc, 21); - Code[2] = Code[2] | LShiftU64 (BitImm5c, 22); - Code[2] = Code[2] | LShiftU64 (BitImm9d, 27); - Code[2] = Code[2] | LShiftU64 (BitI, 36); - Code[2] = Code[2] | LShiftU64 ((UINT64)MOVL_OPCODE, 37); - Code[2] = Code[2] | LShiftU64 ((RegNum & 0x7F), 6); - - WriteBundle ((VOID *) Ptr, 0x05, Code[0], Code[1], Code[2]); - - // - // *************************** FIRST BUNDLE ******************************** - // - // Write code bundle for: movl r8 = EBC_ENTRY_POINT so we pass - // the ebc entry point in to the interpreter function via a processor - // register. - // Note -- we could easily change this to pass in a pointer to a structure - // that contained, among other things, the EBC image's entry point. But - // for now pass it directly. - // - Ptr += 16; - Addr = (UINT64) EbcEntryPoint; - - // - // Now generate the code bytes. First is nop.m 0x0 - // - Code[0] = OPCODE_NOP; - - // - // Next is simply Addr[62:22] (41 bits) of the address - // - Code[1] = RShiftU64 (Addr, 22) & 0x1ffffffffff; - - // - // Extract bits from the address for insertion into the instruction - // i = Addr[63:63] - // - BitI = RShiftU64 (Addr, 63) & 0x01; - // - // ic = Addr[21:21] - // - BitIc = RShiftU64 (Addr, 21) & 0x01; - // - // imm5c = Addr[20:16] for 5 bits - // - BitImm5c = RShiftU64 (Addr, 16) & 0x1F; - // - // imm9d = Addr[15:7] for 9 bits - // - BitImm9d = RShiftU64 (Addr, 7) & 0x1FF; - // - // imm7b = Addr[6:0] for 7 bits - // - BitImm7b = Addr & 0x7F; - - // - // Put the EBC entry point in r8, which is the location of the return value - // for functions. - // - RegNum = 8; - - // - // Next is jumbled data, including opcode and rest of address - // - Code[2] = LShiftU64 (BitImm7b, 13); - Code[2] = Code[2] | LShiftU64 (0x00, 20); // vc - Code[2] = Code[2] | LShiftU64 (BitIc, 21); - Code[2] = Code[2] | LShiftU64 (BitImm5c, 22); - Code[2] = Code[2] | LShiftU64 (BitImm9d, 27); - Code[2] = Code[2] | LShiftU64 (BitI, 36); - Code[2] = Code[2] | LShiftU64 ((UINT64)MOVL_OPCODE, 37); - Code[2] = Code[2] | LShiftU64 ((RegNum & 0x7F), 6); - - WriteBundle ((VOID *) Ptr, 0x05, Code[0], Code[1], Code[2]); - - // - // *************************** NEXT BUNDLE ********************************* - // - // Write code bundle for: - // movl rx = offset_of(EbcInterpret|ExecuteEbcImageEntryPoint) - // - // Advance pointer to next bundle, then compute the offset from this bundle - // to the address of the entry point of the interpreter. - // - Ptr += 16; - if ((Flags & FLAG_THUNK_ENTRY_POINT) != 0) { - Addr = (UINT64) ExecuteEbcImageEntryPoint; - } else { - Addr = (UINT64) EbcInterpret; - } - // - // Indirection on Itanium-based systems - // - Addr = *(UINT64 *) Addr; - - // - // Now write the code to load the offset into a register - // - Code[0] = OPCODE_NOP; - - // - // Next is simply Addr[62:22] (41 bits) of the address - // - Code[1] = RShiftU64 (Addr, 22) & 0x1ffffffffff; - - // - // Extract bits from the address for insertion into the instruction - // i = Addr[63:63] - // - BitI = RShiftU64 (Addr, 63) & 0x01; - // - // ic = Addr[21:21] - // - BitIc = RShiftU64 (Addr, 21) & 0x01; - // - // imm5c = Addr[20:16] for 5 bits - // - BitImm5c = RShiftU64 (Addr, 16) & 0x1F; - // - // imm9d = Addr[15:7] for 9 bits - // - BitImm9d = RShiftU64 (Addr, 7) & 0x1FF; - // - // imm7b = Addr[6:0] for 7 bits - // - BitImm7b = Addr & 0x7F; - - // - // Put it in r31, a scratch register - // - RegNum = 31; - - // - // Next is jumbled data, including opcode and rest of address - // - Code[2] = LShiftU64(BitImm7b, 13); - Code[2] = Code[2] | LShiftU64 (0x00, 20); // vc - Code[2] = Code[2] | LShiftU64 (BitIc, 21); - Code[2] = Code[2] | LShiftU64 (BitImm5c, 22); - Code[2] = Code[2] | LShiftU64 (BitImm9d, 27); - Code[2] = Code[2] | LShiftU64 (BitI, 36); - Code[2] = Code[2] | LShiftU64 ((UINT64)MOVL_OPCODE, 37); - Code[2] = Code[2] | LShiftU64 ((RegNum & 0x7F), 6); - - WriteBundle ((VOID *) Ptr, 0x05, Code[0], Code[1], Code[2]); - - // - // *************************** NEXT BUNDLE ********************************* - // - // Load branch register with EbcInterpret() function offset from the bundle - // address: mov b6 = RegNum - // - // See volume 3 page 4-29 of the Arch. Software Developer's Manual. - // - // Advance pointer to next bundle - // - Ptr += 16; - Code[0] = OPCODE_NOP; - Code[1] = OPCODE_NOP; - Code[2] = OPCODE_MOV_BX_RX; - - // - // Pick a branch register to use. Then fill in the bits for the branch - // register and user register (same user register as previous bundle). - // - Br = 6; - Code[2] |= LShiftU64 (Br, 6); - Code[2] |= LShiftU64 (RegNum, 13); - WriteBundle ((VOID *) Ptr, 0x0d, Code[0], Code[1], Code[2]); - - // - // *************************** NEXT BUNDLE ********************************* - // - // Now do the branch: (p0) br.cond.sptk.few b6 - // - // Advance pointer to next bundle. - // Fill in the bits for the branch register (same reg as previous bundle) - // - Ptr += 16; - Code[0] = OPCODE_NOP; - Code[1] = OPCODE_NOP; - Code[2] = OPCODE_BR_COND_SPTK_FEW; - Code[2] |= LShiftU64 (Br, 13); - WriteBundle ((VOID *) Ptr, 0x1d, Code[0], Code[1], Code[2]); - - // - // Add the thunk to our list of allocated thunks so we can do some cleanup - // when the image is unloaded. Do this last since the Add function flushes - // the instruction cache for us. - // - EbcAddImageThunk (ImageHandle, (VOID *) ThunkBase, ThunkSize); - - // - // Done - // - return EFI_SUCCESS; -} - - -/** - Given raw bytes of Itanium based code, format them into a bundle and - write them out. - - @param MemPtr pointer to memory location to write the bundles - to. - @param Template 5-bit template. - @param Slot0 Instruction slot 0 data for the bundle. - @param Slot1 Instruction slot 1 data for the bundle. - @param Slot2 Instruction slot 2 data for the bundle. - - @retval EFI_INVALID_PARAMETER Pointer is not aligned - @retval EFI_INVALID_PARAMETER No more than 5 bits in template - @retval EFI_INVALID_PARAMETER More than 41 bits used in code - @retval EFI_SUCCESS All data is written. - -**/ -EFI_STATUS -WriteBundle ( - IN VOID *MemPtr, - IN UINT8 Template, - IN UINT64 Slot0, - IN UINT64 Slot1, - IN UINT64 Slot2 - ) -{ - UINT8 *BPtr; - UINT32 Index; - UINT64 Low64; - UINT64 High64; - - // - // Verify pointer is aligned - // - if ((UINT64) MemPtr & 0xF) { - return EFI_INVALID_PARAMETER; - } - // - // Verify no more than 5 bits in template - // - if ((Template &~0x1F) != 0) { - return EFI_INVALID_PARAMETER; - } - // - // Verify max of 41 bits used in code - // - if (((Slot0 | Slot1 | Slot2) &~0x1ffffffffff) != 0) { - return EFI_INVALID_PARAMETER; - } - - Low64 = LShiftU64 (Slot1, 46); - Low64 = Low64 | LShiftU64 (Slot0, 5) | Template; - - High64 = RShiftU64 (Slot1, 18); - High64 = High64 | LShiftU64 (Slot2, 23); - - // - // Now write it all out - // - BPtr = (UINT8 *) MemPtr; - for (Index = 0; Index < 8; Index++) { - *BPtr = (UINT8) Low64; - Low64 = RShiftU64 (Low64, 8); - BPtr++; - } - - for (Index = 0; Index < 8; Index++) { - *BPtr = (UINT8) High64; - High64 = RShiftU64 (High64, 8); - BPtr++; - } - - return EFI_SUCCESS; -} - - -/** - This function is called to execute an EBC CALLEX instruction. - The function check the callee's content to see whether it is common native - code or a thunk to another piece of EBC code. - If the callee is common native code, use EbcLLCAllEXASM to manipulate, - otherwise, set the VM->IP to target EBC code directly to avoid another VM - be startup which cost time and stack space. - - @param VmPtr Pointer to a VM context. - @param FuncAddr Callee's address - @param NewStackPointer New stack pointer after the call - @param FramePtr New frame pointer after the call - @param Size The size of call instruction - -**/ -VOID -EbcLLCALLEX ( - IN VM_CONTEXT *VmPtr, - IN UINTN FuncAddr, - IN UINTN NewStackPointer, - IN VOID *FramePtr, - IN UINT8 Size - ) -{ - UINTN IsThunk; - UINTN TargetEbcAddr; - UINTN CodeOne18; - UINTN CodeOne23; - UINTN CodeTwoI; - UINTN CodeTwoIc; - UINTN CodeTwo7b; - UINTN CodeTwo5c; - UINTN CodeTwo9d; - UINTN CalleeAddr; - - IsThunk = 1; - TargetEbcAddr = 0; - - // - // FuncAddr points to the descriptor of the target instructions. - // - CalleeAddr = *((UINT64 *)FuncAddr); - - // - // Processor specific code to check whether the callee is a thunk to EBC. - // - if (*((UINT64 *)CalleeAddr) != 0xBCCA000100000005) { - IsThunk = 0; - goto Action; - } - if (*((UINT64 *)CalleeAddr + 1) != 0x697623C1004A112E) { - IsThunk = 0; - goto Action; - } - - CodeOne18 = RShiftU64 (*((UINT64 *)CalleeAddr + 2), 46) & 0x3FFFF; - CodeOne23 = (*((UINT64 *)CalleeAddr + 3)) & 0x7FFFFF; - CodeTwoI = RShiftU64 (*((UINT64 *)CalleeAddr + 3), 59) & 0x1; - CodeTwoIc = RShiftU64 (*((UINT64 *)CalleeAddr + 3), 44) & 0x1; - CodeTwo7b = RShiftU64 (*((UINT64 *)CalleeAddr + 3), 36) & 0x7F; - CodeTwo5c = RShiftU64 (*((UINT64 *)CalleeAddr + 3), 45) & 0x1F; - CodeTwo9d = RShiftU64 (*((UINT64 *)CalleeAddr + 3), 50) & 0x1FF; - - TargetEbcAddr = CodeTwo7b; - TargetEbcAddr = TargetEbcAddr | LShiftU64 (CodeTwo9d, 7); - TargetEbcAddr = TargetEbcAddr | LShiftU64 (CodeTwo5c, 16); - TargetEbcAddr = TargetEbcAddr | LShiftU64 (CodeTwoIc, 21); - TargetEbcAddr = TargetEbcAddr | LShiftU64 (CodeOne18, 22); - TargetEbcAddr = TargetEbcAddr | LShiftU64 (CodeOne23, 40); - TargetEbcAddr = TargetEbcAddr | LShiftU64 (CodeTwoI, 63); - -Action: - if (IsThunk == 1){ - // - // The callee is a thunk to EBC, adjust the stack pointer down 16 bytes and - // put our return address and frame pointer on the VM stack. - // Then set the VM's IP to new EBC code. - // - VmPtr->Gpr[0] -= 8; - VmWriteMemN (VmPtr, (UINTN) VmPtr->Gpr[0], (UINTN) FramePtr); - VmPtr->FramePtr = (VOID *) (UINTN) VmPtr->Gpr[0]; - VmPtr->Gpr[0] -= 8; - VmWriteMem64 (VmPtr, (UINTN) VmPtr->Gpr[0], (UINT64) (VmPtr->Ip + Size)); - - VmPtr->Ip = (VMIP) (UINTN) TargetEbcAddr; - } else { - // - // The callee is not a thunk to EBC, call native code, - // and get return value. - // - VmPtr->Gpr[7] = EbcLLCALLEXNative (FuncAddr, NewStackPointer, FramePtr); - - // - // Advance the IP. - // - VmPtr->Ip += Size; - } -} diff --git a/MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.h b/MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.h deleted file mode 100644 index d90ea82ad0..0000000000 --- a/MdeModulePkg/Universal/EbcDxe/Ipf/EbcSupport.h +++ /dev/null @@ -1,41 +0,0 @@ -/** @file - Definition of EBC Support function. - -Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.
-This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#ifndef _IPF_EBC_SUPPORT_H_ -#define _IPF_EBC_SUPPORT_H_ - -#define VM_STACK_SIZE (1024 * 32) - -#define EBC_THUNK_SIZE 128 -#define STACK_REMAIN_SIZE (1024 * 4) - -// -// For code execution, thunks must be aligned on 16-byte boundary -// -#define EBC_THUNK_ALIGNMENT 16 - -// -// Opcodes for IPF instructions. We'll need to hand-create thunk code (stuffing -// bits) to insert a jump to the interpreter. -// -#define OPCODE_NOP (UINT64) 0x00008000000 -#define OPCODE_BR_COND_SPTK_FEW (UINT64) 0x00100000000 -#define OPCODE_MOV_BX_RX (UINT64) 0x00E00100000 - -// -// Opcode for MOVL instruction -// -#define MOVL_OPCODE 0x06 - -#endif diff --git a/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf b/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf index 7f2499b33d..368b2ac6bf 100644 --- a/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf +++ b/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf index 30a765c807..dcde58d632 100644 --- a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf +++ b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf b/MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf index 12b26604e2..ac66aa3469 100644 --- a/MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf +++ b/MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf @@ -3,7 +3,7 @@ # # This module installs gEdkiiFaultTolerantWriteGuid PPI to inform the check for FTW last write data has been done. # -# Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2013 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/FileExplorerDxe/FileExplorerDxe.inf b/MdeModulePkg/Universal/FileExplorerDxe/FileExplorerDxe.inf index 8f8b8b4294..c988fd5e96 100644 --- a/MdeModulePkg/Universal/FileExplorerDxe/FileExplorerDxe.inf +++ b/MdeModulePkg/Universal/FileExplorerDxe/FileExplorerDxe.inf @@ -27,7 +27,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf b/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf index 0593ff85bb..ed5c8cd7d4 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/HiiResourcesSampleDxe/HiiResourcesSampleDxe.inf b/MdeModulePkg/Universal/HiiResourcesSampleDxe/HiiResourcesSampleDxe.inf index 7287ba5050..121cf6dfcc 100644 --- a/MdeModulePkg/Universal/HiiResourcesSampleDxe/HiiResourcesSampleDxe.inf +++ b/MdeModulePkg/Universal/HiiResourcesSampleDxe/HiiResourcesSampleDxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/LegacyRegion2Dxe/LegacyRegion2Dxe.inf b/MdeModulePkg/Universal/LegacyRegion2Dxe/LegacyRegion2Dxe.inf index 3a34cf210f..86a57837ec 100644 --- a/MdeModulePkg/Universal/LegacyRegion2Dxe/LegacyRegion2Dxe.inf +++ b/MdeModulePkg/Universal/LegacyRegion2Dxe/LegacyRegion2Dxe.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/LoadFileOnFv2/LoadFileOnFv2.inf b/MdeModulePkg/Universal/LoadFileOnFv2/LoadFileOnFv2.inf index a4ded94e7f..102bd1e74d 100644 --- a/MdeModulePkg/Universal/LoadFileOnFv2/LoadFileOnFv2.inf +++ b/MdeModulePkg/Universal/LoadFileOnFv2/LoadFileOnFv2.inf @@ -5,7 +5,7 @@ # version of the module only supports loading of files for the purpose of # booting from the file. # -# Copyright (c) 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2016 - 2018, 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 @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf b/MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf index 975dc4cd3a..39b54ed8f9 100644 --- a/MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf +++ b/MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf @@ -1,7 +1,7 @@ ## @file # This driver first constructs the non-tested memory range, then performs the R/W/V memory test. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf b/MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf index a0d2ce7a89..b7d61b9001 100644 --- a/MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf +++ b/MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf @@ -24,7 +24,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Metronome/Metronome.inf b/MdeModulePkg/Universal/Metronome/Metronome.inf index 3a633ed753..0f96fe466b 100644 --- a/MdeModulePkg/Universal/Metronome/Metronome.inf +++ b/MdeModulePkg/Universal/Metronome/Metronome.inf @@ -34,7 +34,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Packages] diff --git a/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf b/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf index e44e268014..f3baf27d8c 100644 --- a/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf +++ b/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf @@ -1,7 +1,7 @@ ## @file # This module produces the UEFI boot service GetNextMonotonicCount() and runtime service GetNextHighMonotonicCount(). # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf b/MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf index 85f7982971..d06e03fd2e 100644 --- a/MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf +++ b/MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gArpDriverBinding # COMPONENT_NAME = gArpComponentName diff --git a/MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf b/MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf index e41bddb017..aaced4d8f1 100644 --- a/MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf +++ b/MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf @@ -29,7 +29,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gDhcp4DriverBinding # COMPONENT_NAME = gDhcp4ComponentName diff --git a/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf b/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf index 8a1f8baf79..147902c50d 100644 --- a/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf +++ b/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf @@ -1,7 +1,7 @@ ## @file # This module produces Deferred Procedure Call Protocol. # -# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, 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 @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf b/MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf index c6e7262cea..c3b8c7d15a 100644 --- a/MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf +++ b/MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf @@ -30,7 +30,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gIScsiDriverBinding # COMPONENT_NAME = gIScsiComponentName diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf index b2b934a8c3..e405ea6285 100644 --- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf +++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf @@ -31,7 +31,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gIp4DriverBinding # COMPONENT_NAME = gIp4ComponentName diff --git a/MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf b/MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf index 090ab732b9..18f46cb11a 100644 --- a/MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf +++ b/MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gMnpDriverBinding # COMPONENT_NAME = gMnpComponentName diff --git a/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf b/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf index ad9e7abce6..066fc40d95 100644 --- a/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf +++ b/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gMtftp4DriverBinding # COMPONENT_NAME = gMtftp4ComponentName diff --git a/MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf b/MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf index 021d45d44d..9d9affb4ac 100644 --- a/MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf +++ b/MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = mSimpleNetworkDriverBinding # COMPONENT_NAME = gSimpleNetworkComponentName diff --git a/MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf b/MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf index 5021cbc4b8..b54321caaa 100644 --- a/MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf +++ b/MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = mTcp4DriverBinding # COMPONENT_NAME = gTcp4ComponentName diff --git a/MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf b/MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf index 69b6d5d943..7f60985c74 100644 --- a/MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf +++ b/MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # # DRIVER_BINDING = gUdp4DriverBinding # COMPONENT_NAME = gUdp4ComponentName diff --git a/MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf b/MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf index 121d68ed26..b5b9e80710 100644 --- a/MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf +++ b/MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf @@ -32,7 +32,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF +# VALID_ARCHITECTURES = IA32 X64 # # DRIVER_BINDING = gPxeBcDriverBinding # COMPONENT_NAME = gPxeBcComponentName diff --git a/MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf b/MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf index a36c57871e..deb6aff1d1 100644 --- a/MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf +++ b/MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf @@ -4,7 +4,7 @@ # This module produces EFI HII Configuration Access Protocol to provide one way to # configurate VALN setting # -# Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -27,7 +27,7 @@ # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf b/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf index e6b3e0d920..066b86aaa5 100644 --- a/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf +++ b/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf @@ -303,7 +303,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/PCD/Pei/Pcd.inf b/MdeModulePkg/Universal/PCD/Pei/Pcd.inf index c2a3ccbbc0..6e28fce8fa 100644 --- a/MdeModulePkg/Universal/PCD/Pei/Pcd.inf +++ b/MdeModulePkg/Universal/PCD/Pei/Pcd.inf @@ -302,7 +302,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf b/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf index 27bce7b7b7..fc7d999a1b 100644 --- a/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf +++ b/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf @@ -4,7 +4,7 @@ # It installs SingleSegmentPciConfiguration2 PPI to provide read, write and modify access to Pci configuration space in PEI phase. # To follow PI specification, these services also support access to the unaligned Pci address. # -# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) # [Sources] diff --git a/MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf b/MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf index 5bd9e44edd..beebcc0178 100644 --- a/MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf +++ b/MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf @@ -43,7 +43,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/PrintDxe/PrintDxe.inf b/MdeModulePkg/Universal/PrintDxe/PrintDxe.inf index 19eef5a8a8..9c38a63b24 100644 --- a/MdeModulePkg/Universal/PrintDxe/PrintDxe.inf +++ b/MdeModulePkg/Universal/PrintDxe/PrintDxe.inf @@ -3,7 +3,7 @@ # # This driver produces Print2 protocols layered on top of the PrintLib from the MdePkg. # -# Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttributesDxe.inf b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttributesDxe.inf index 3f699f6b5a..a8edf854bb 100644 --- a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttributesDxe.inf +++ b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttributesDxe.inf @@ -4,7 +4,7 @@ # This module sets EFI_MEMORY_XP for attributes of EfiACPIMemoryNVS and EfiReservedMemoryType # in UEFI memory map, if and only of PropertiesTable is published and has BIT0 set. # -# Copyright (c) 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/RegularExpressionDxe/RegularExpressionDxe.inf b/MdeModulePkg/Universal/RegularExpressionDxe/RegularExpressionDxe.inf index d8a1490021..4bf8502e7e 100644 --- a/MdeModulePkg/Universal/RegularExpressionDxe/RegularExpressionDxe.inf +++ b/MdeModulePkg/Universal/RegularExpressionDxe/RegularExpressionDxe.inf @@ -1,6 +1,7 @@ ## @file # EFI_REGULAR_EXPRESSION_PROTOCOL Implementation # +# Copyright (c) 2018, Intel Corporation. All rights reserved.
# (C) Copyright 2015 Hewlett Packard Enterprise Development LP
# # This program and the accompanying materials are licensed and made available @@ -78,8 +79,6 @@ MSFT:RELEASE_*_IA32_CC_FLAGS == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /FIAutoGen.h /EHs-c- /GR- /GF MSFT:DEBUG_*_X64_CC_FLAGS == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /X MSFT:RELEASE_*_X64_CC_FLAGS == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /FIAutoGen.h /EHs-c- /GR- /GF /Gy /X - MSFT:DEBUG_*_IPF_CC_FLAGS == /nologo /c /WX /GS- /W4 /EHs-c- /GR- /Gy /Os /FIAutoGen.h /QIPF_fr32 /Zi /X - MSFT:RELEASE_*_IPF_CC_FLAGS == /nologo /c /WX /GS- /W4 /EHs-c- /GR- /Gy /Os /FIAutoGen.h /QIPF_fr32 /X INTEL:*_*_*_CC_FLAGS = /Oi- # Oniguruma: potentially uninitialized local variable used diff --git a/MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf b/MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf index a3de382d00..eaaf0fcf33 100644 --- a/MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf +++ b/MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf @@ -1,7 +1,7 @@ ## @file # Report Status Code Router PEIM which produces Report Stataus Code Handler PPI and Status Code PPI. # -# Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2018, 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 @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is only for build) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is only for build) # [Sources] diff --git a/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf b/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf index 9556260082..0cec0fc709 100644 --- a/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf +++ b/MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/SectionExtractionPei/SectionExtractionPei.inf b/MdeModulePkg/Universal/SectionExtractionPei/SectionExtractionPei.inf index 91800cec01..fa4882f3cb 100644 --- a/MdeModulePkg/Universal/SectionExtractionPei/SectionExtractionPei.inf +++ b/MdeModulePkg/Universal/SectionExtractionPei/SectionExtractionPei.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf b/MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf index c5553a38e0..864ca4fc95 100644 --- a/MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf +++ b/MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf @@ -1,7 +1,7 @@ ## @file # This driver produces security2 and security architectural protocol based on SecurityManagementLib. # -# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -24,7 +24,7 @@ # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf b/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf index 4f847d4061..8a96b17b2f 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf +++ b/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf @@ -28,7 +28,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf b/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf index 0e623aeb41..9218a40f8c 100644 --- a/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf +++ b/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # [Sources] diff --git a/MdeModulePkg/Universal/SmbiosMeasurementDxe/SmbiosMeasurementDxe.inf b/MdeModulePkg/Universal/SmbiosMeasurementDxe/SmbiosMeasurementDxe.inf index 879bc21481..90f449f2fd 100644 --- a/MdeModulePkg/Universal/SmbiosMeasurementDxe/SmbiosMeasurementDxe.inf +++ b/MdeModulePkg/Universal/SmbiosMeasurementDxe/SmbiosMeasurementDxe.inf @@ -35,7 +35,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64 # [Sources] diff --git a/MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf b/MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf index 5d96fe3041..fc2d4b57d5 100644 --- a/MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf +++ b/MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is only for build) +# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is only for build) # [Sources] diff --git a/MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf b/MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf index 928ae15b6f..a0a37a4f1c 100644 --- a/MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf +++ b/MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/TimestampDxe/TimestampDxe.inf b/MdeModulePkg/Universal/TimestampDxe/TimestampDxe.inf index 07858857e3..85e271a8f2 100644 --- a/MdeModulePkg/Universal/TimestampDxe/TimestampDxe.inf +++ b/MdeModulePkg/Universal/TimestampDxe/TimestampDxe.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Packages] diff --git a/MdeModulePkg/Universal/Variable/Pei/VariablePei.inf b/MdeModulePkg/Universal/Variable/Pei/VariablePei.inf index 72a440dcd1..565efdc021 100644 --- a/MdeModulePkg/Universal/Variable/Pei/VariablePei.inf +++ b/MdeModulePkg/Universal/Variable/Pei/VariablePei.inf @@ -3,7 +3,7 @@ # # This module implements ReadOnly Variable Services required by PEIM and installs PEI ReadOnly Varaiable2 PPI. # -# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2018, 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 @@ -26,7 +26,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Sources] diff --git a/MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf b/MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf index cd2daf3033..d81b2d980b 100644 --- a/MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf +++ b/MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf @@ -25,7 +25,7 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# VALID_ARCHITECTURES = IA32 X64 EBC # [Packages] -- 2.39.2