X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FCore%2FDxe%2FDxeMain.inf;h=30d5984f7c1fe900625dc13322f02bb1856ce8bd;hp=2345470759daa85413576d551bc56bda5e8ee124;hb=e06179889586c37101e2900e7f52be9f0da12cda;hpb=e34ecc8a1e7f396278b630e2c6e4022e762faf5a diff --git a/MdeModulePkg/Core/Dxe/DxeMain.inf b/MdeModulePkg/Core/Dxe/DxeMain.inf index 2345470759..30d5984f7c 100644 --- a/MdeModulePkg/Core/Dxe/DxeMain.inf +++ b/MdeModulePkg/Core/Dxe/DxeMain.inf @@ -1,8 +1,10 @@ -#/** @file -# This module provides an implementation of DXE Core that is compliant with DXE CIS. +## @file +# This is core module in DXE phase. +# +# It provides an implementation of DXE Core that is compliant with DXE CIS. # -# Copyright (c) 2006 - 2008, Intel Corporation.
-# All rights reserved. This program and the accompanying materials +# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
+# This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License # which accompanies this distribution. The full text of the license may be found at # http://opensource.org/licenses/bsd-license.php @@ -10,16 +12,16 @@ # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. # -#**/ +## [Defines] INF_VERSION = 0x00010005 BASE_NAME = DxeCore + MODULE_UNI_FILE = DxeCore.uni FILE_GUID = D6A2CB7F-6A18-4e2f-B43B-9920A733700A MODULE_TYPE = DXE_CORE VERSION_STRING = 1.0 - EDK_RELEASE_VERSION = 0x00020000 - PI_SPECIFICATION_VERSION = 0x00010000 + ENTRY_POINT = DxeMain @@ -29,16 +31,18 @@ # VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) # -[Sources.common] +[Sources] DxeMain.h SectionExtraction/CoreSectionExtraction.c - Image/ImageFile.c Image/Image.c Image/Image.h Misc/DebugImageInfo.c Misc/Stall.c Misc/SetWatchdogTimer.c Misc/InstallConfigurationTable.c + Misc/PropertiesTable.c + Misc/MemoryAttributesTable.c + Misc/MemoryProtection.c Library/Library.c Hand/DriverSupport.c Hand/Notify.c @@ -51,6 +55,7 @@ Mem/Page.c Mem/MemData.c Mem/Imem.h + Mem/MemoryProfileRecord.c FwVolBlock/FwVolBlock.c FwVolBlock/FwVolBlock.h FwVol/FwVolWrite.c @@ -83,65 +88,121 @@ DebugLib DxeCoreEntryPoint PeCoffLib + PeCoffGetEntryPointLib + PeCoffExtraActionLib ExtractGuidedSectionLib MemoryAllocationLib UefiBootServicesTableLib DevicePathLib ReportStatusCodeLib + TimerLib + DxeServicesLib + DebugAgentLib + CpuExceptionHandlerLib + PcdLib [Guids] - gEfiEventLegacyBootGuid # ALWAYS_CONSUMED - gEfiEventReadyToBootGuid # ALWAYS_CONSUMED - gEfiEventMemoryMapChangeGuid # ALWAYS_CONSUMED - gEfiEventVirtualAddressChangeGuid # ALWAYS_CONSUMED - gEfiEventExitBootServicesGuid # ALWAYS_CONSUMED - gEfiHobMemoryAllocModuleGuid # ALWAYS_CONSUMED - gEfiFileInfoGuid # ALWAYS_CONSUMED - gEfiFirmwareFileSystem2Guid # ALWAYS_CONSUMED - gAprioriGuid # ALWAYS_CONSUMED - gEfiDebugImageInfoTableGuid # ALWAYS_CONSUMED - gEfiHobListGuid # ALWAYS_CONSUMED - gEfiDxeServicesTableGuid # ALWAYS_CONSUMED - gEfiMemoryTypeInformationGuid # ALWAYS_CONSUMED + gEfiEventMemoryMapChangeGuid ## PRODUCES ## Event + gEfiEventVirtualAddressChangeGuid ## CONSUMES ## Event + ## CONSUMES ## Event + ## PRODUCES ## Event + gEfiEventExitBootServicesGuid + gEfiHobMemoryAllocModuleGuid ## CONSUMES ## HOB + gEfiFirmwareFileSystem2Guid ## CONSUMES ## GUID # Used to compare with FV's file system guid and get the FV's file system format + gEfiFirmwareFileSystem3Guid ## CONSUMES ## GUID # Used to compare with FV's file system guid and get the FV's file system format + gAprioriGuid ## SOMETIMES_CONSUMES ## File + gEfiDebugImageInfoTableGuid ## PRODUCES ## SystemTable + gEfiHobListGuid ## PRODUCES ## SystemTable + gEfiDxeServicesTableGuid ## PRODUCES ## SystemTable + ## PRODUCES ## SystemTable + ## SOMETIMES_CONSUMES ## HOB + gEfiMemoryTypeInformationGuid + gEfiEventDxeDispatchGuid ## PRODUCES ## Event + gLoadFixedAddressConfigurationTableGuid ## SOMETIMES_PRODUCES ## SystemTable + ## PRODUCES ## Event + ## CONSUMES ## Event + gIdleLoopEventGuid + gEventExitBootServicesFailedGuid ## SOMETIMES_PRODUCES ## Event + gEfiVectorHandoffTableGuid ## SOMETIMES_PRODUCES ## SystemTable + gEdkiiMemoryProfileGuid ## SOMETIMES_PRODUCES ## GUID # Install protocol + gEfiPropertiesTableGuid ## SOMETIMES_PRODUCES ## SystemTable + gEfiMemoryAttributesTableGuid ## SOMETIMES_PRODUCES ## SystemTable + gEfiEndOfDxeEventGroupGuid ## SOMETIMES_CONSUMES ## Event + +[Ppis] + gEfiVectorHandoffInfoPpiGuid ## UNDEFINED # HOB [Protocols] - gEfiStatusCodeRuntimeProtocolGuid # PROTOCOL SOMETIMES_CONSUMED - gEfiCapsuleArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiDecompressProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiLoadPeImageProtocolGuid # PROTOCOL ALWAYS_PRODUCED - gEfiSimpleFileSystemProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiLoadFileProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiResetArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiRealTimeClockArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiRuntimeArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiWatchdogTimerArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiSecurityArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiVariableArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiBdsArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiVariableWriteArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiMonotonicCounterArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiMetronomeArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiTimerArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiBusSpecificDriverOverrideProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiPlatformDriverOverrideProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiDriverBindingProtocolGuid # PROTOCOL SOMETIMES_CONSUMED - gEfiFirmwareVolumeBlockProtocolGuid # PROTOCOL ALWAYS_PRODUCED - gEfiFirmwareVolumeDispatchProtocolGuid # PROTOCOL ALWAYS_PRODUCED - gEfiFirmwareVolume2ProtocolGuid # PROTOCOL ALWAYS_PRODUCED - gEfiCpuArchProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiDevicePathProtocolGuid # PROTOCOL ALWAYS_CONSUMED - gEfiLoadedImageProtocolGuid # PROTOCOL ALWAYS_PRODUCED - gEfiEbcProtocolGuid # PROTOCOL SOMETIMES_CONSUMED - gEfiTcgPlatformProtocolGuid - gEfiLoadedImageDevicePathProtocolGuid # PROTOCOL ALWAYS_PRODUCED + ## PRODUCES + ## SOMETIMES_CONSUMES + gEfiDecompressProtocolGuid + gEfiLoadPeImageProtocolGuid ## SOMETIMES_PRODUCES # Produces when PcdFrameworkCompatibilitySupport is set + gEfiSimpleFileSystemProtocolGuid ## SOMETIMES_CONSUMES + gEfiLoadFileProtocolGuid ## SOMETIMES_CONSUMES + gEfiLoadFile2ProtocolGuid ## SOMETIMES_CONSUMES + gEfiBusSpecificDriverOverrideProtocolGuid ## SOMETIMES_CONSUMES + gEfiDriverFamilyOverrideProtocolGuid ## SOMETIMES_CONSUMES + gEfiPlatformDriverOverrideProtocolGuid ## SOMETIMES_CONSUMES + gEfiDriverBindingProtocolGuid ## SOMETIMES_CONSUMES + ## PRODUCES + ## CONSUMES + ## NOTIFY + gEfiFirmwareVolumeBlockProtocolGuid + ## PRODUCES + ## CONSUMES + ## NOTIFY + gEfiFirmwareVolume2ProtocolGuid + ## PRODUCES + ## CONSUMES + gEfiDevicePathProtocolGuid + gEfiLoadedImageProtocolGuid ## PRODUCES + gEfiLoadedImageDevicePathProtocolGuid ## PRODUCES + gEfiHiiPackageListProtocolGuid ## SOMETIMES_PRODUCES + gEfiEbcProtocolGuid ## SOMETIMES_CONSUMES + gEfiSmmBase2ProtocolGuid ## SOMETIMES_CONSUMES + gEfiBlockIoProtocolGuid ## SOMETIMES_CONSUMES + + # Arch Protocols + gEfiBdsArchProtocolGuid ## CONSUMES + gEfiCpuArchProtocolGuid ## CONSUMES + gEfiMetronomeArchProtocolGuid ## CONSUMES + gEfiMonotonicCounterArchProtocolGuid ## CONSUMES + gEfiRealTimeClockArchProtocolGuid ## CONSUMES + gEfiResetArchProtocolGuid ## CONSUMES + gEfiRuntimeArchProtocolGuid ## CONSUMES + gEfiSecurityArchProtocolGuid ## CONSUMES + gEfiSecurity2ArchProtocolGuid ## SOMETIMES_CONSUMES + gEfiTimerArchProtocolGuid ## CONSUMES + gEfiVariableWriteArchProtocolGuid ## CONSUMES + gEfiVariableArchProtocolGuid ## CONSUMES + gEfiCapsuleArchProtocolGuid ## CONSUMES + gEfiWatchdogTimerArchProtocolGuid ## CONSUMES -[FixedPcd.common] - gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeCoreEntry | 0x3041000 # EFI_SOFTWARE_DXE_CORE | EFI_SW_DXE_CORE_PC_ENTRY_POINT - gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeCoreHandoffToBds | 0x3041001 # EFI_SOFTWARE_DXE_CORE | EFI_SW_DXE_CORE_PC_HANDOFF_TO_NEXT - gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueBootServiceExit | 0x3100019 # EFI_SOFTWARE_EFI_BOOT_SERVICE | EFI_SW_BS_PC_EXIT_BOOT_SERVICES - gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeDriverBegin | 0x3040002 # EFI_SOFTWARE_DXE_CORE | EFI_SW_PC_INIT_BEGIN - gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeDriverEnd | 0x3040003 # EFI_SOFTWARE_DXE_CORE | EFI_SW_PC_INIT_END +[FeaturePcd] + gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES -[BuildOptions] - MSFT:*_*_*_CC_FLAGS = /FAcs +[Pcd] + gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber ## SOMETIMES_CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressRuntimeCodePageNumber ## SOMETIMES_CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdMaxEfiSystemTablePointerAddress ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfileMemoryType ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfileDriverPath ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdPropertiesTableEnable ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdImageProtectionPolicy ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy ## CONSUMES + +# [Hob] +# RESOURCE_DESCRIPTOR ## CONSUMES +# MEMORY_ALLOCATION ## CONSUMES +# FIRMWARE_VOLUME ## CONSUMES +# UNDEFINED ## CONSUMES # CPU +# +# [Event] +# EVENT_TYPE_RELATIVE_TIMER ## PRODUCES # DxeCore signals timer event. +# EVENT_TYPE_PERIODIC_TIMER ## PRODUCES # DxeCore signals timer event. +# +[UserExtensions.TianoCore."ExtraFiles"] + DxeCoreExtra.uni