VirtualBox

Ignore:
Timestamp:
Mar 12, 2019 12:40:12 PM (6 years ago)
Author:
vboxsync
Message:

EFI: First step in UDK2018 merge. Does not build yet.

Location:
trunk/src/VBox/Devices/EFI/FirmwareNew
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/FirmwareNew

  • trunk/src/VBox/Devices/EFI/FirmwareNew/OvmfPkg/OvmfPkgX64.dsc

    r63359 r77662  
    22#  EFI/Framework Open Virtual Machine Firmware (OVMF) platform
    33#
    4 #  Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
     4#  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
     5#  (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
    56#
    67#  This program and the accompanying materials
     
    3031!endif
    3132  SUPPORTED_ARCHITECTURES        = X64
    32   BUILD_TARGETS                  = DEBUG|RELEASE
     33  BUILD_TARGETS                  = NOOPT|DEBUG|RELEASE
    3334  SKUID_IDENTIFIER               = DEFAULT
    3435  FLASH_DEFINITION               = OvmfPkg/OvmfPkgX64.fdf
     
    3940  #
    4041  DEFINE SECURE_BOOT_ENABLE      = FALSE
     42  DEFINE NETWORK_IP6_ENABLE      = FALSE
     43  DEFINE HTTP_BOOT_ENABLE        = FALSE
     44  DEFINE SMM_REQUIRE             = FALSE
     45  DEFINE TLS_ENABLE              = FALSE
     46
     47  #
     48  # Flash size selection. Setting FD_SIZE_IN_KB on the command line directly to
     49  # one of the supported values, in place of any of the convenience macros, is
     50  # permitted.
     51  #
     52!ifdef $(FD_SIZE_1MB)
     53  DEFINE FD_SIZE_IN_KB           = 1024
     54!else
     55!ifdef $(FD_SIZE_2MB)
     56  DEFINE FD_SIZE_IN_KB           = 2048
     57!else
     58!ifdef $(FD_SIZE_4MB)
     59  DEFINE FD_SIZE_IN_KB           = 4096
     60!else
     61  DEFINE FD_SIZE_IN_KB           = 4096
     62!endif
     63!endif
     64!endif
    4165
    4266[BuildOptions]
     
    4569  INTEL:RELEASE_*_*_CC_FLAGS           = /D MDEPKG_NDEBUG
    4670  MSFT:RELEASE_*_*_CC_FLAGS            = /D MDEPKG_NDEBUG
     71!if $(TOOL_CHAIN_TAG) != "XCODE5"
    4772  GCC:*_*_*_CC_FLAGS                   = -mno-mmx -mno-sse
     73!endif
    4874!ifdef $(SOURCE_DEBUG_ENABLE)
    4975  MSFT:*_*_X64_GENFW_FLAGS  = --keepexceptiontable
     
    5177  INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
    5278!endif
     79
     80  #
     81  # Disable deprecated APIs.
     82  #
     83  MSFT:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES
     84  INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES
     85  GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
     86
     87[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
     88  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
     89  XCODE:*_*_*_DLINK_FLAGS =
     90
     91# Force PE/COFF sections to be aligned at 4KB boundaries to support page level
     92# protection of DXE_SMM_DRIVER/SMM_CORE modules
     93[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]
     94  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
     95  XCODE:*_*_*_DLINK_FLAGS =
    5396
    5497!ifdef $(VBOX)
     
    63106!endif
    64107
     108
    65109################################################################################
    66110#
     
    78122[LibraryClasses]
    79123  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
    80   TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
     124  TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
    81125  PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
    82126  BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
    83127  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
     128  SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
     129  BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf
    84130  SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
    85131  CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
     
    94140  UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
    95141  HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
    96   GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
     142  SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
     143  UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
     144  BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf
     145  FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
    97146  CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
    98147  DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
     
    100149  PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
    101150  PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
     151  PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
    102152  PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
    103   IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
     153  PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
     154  IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf
    104155  OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
    105156  SerialPortLib|PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf
     
    112163  DevicePathLib|MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf
    113164  NvVarsFileLib|OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
    114   FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
     165  FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
    115166  UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
    116167  SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
     
    121172  UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
    122173  SerializeVariablesLib|OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
    123   QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.inf
     174  QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgDxeLib.inf
    124175  VirtioLib|OvmfPkg/Library/VirtioLib/VirtioLib.inf
    125176  LoadLinuxLib|OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf
     177  MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf
     178!if $(SMM_REQUIRE) == FALSE
    126179  LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf
     180!endif
    127181  CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
     182  FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
    128183
    129184!ifdef $(VBOX)
     
    138193  DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
    139194!endif
    140 !endif
     195!endif 
    141196
    142197  ResetSystemLib|OvmfPkg/Library/ResetSystemLib/ResetSystemLib.inf
    143   LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
     198  LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
    144199  DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
     200
     201  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
     202!if $(TLS_ENABLE) == TRUE
     203  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
     204!else
     205  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
     206!endif
    145207
    146208!if $(SECURE_BOOT_ENABLE) == TRUE
    147209  PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
    148   IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
    149   OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
    150210  TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
    151 !endif
    152 
     211  AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
     212!else
     213  TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
     214  AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
     215!endif
     216  VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
     217
     218!if $(NETWORK_IP6_ENABLE) == TRUE
     219  TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf
     220!endif
     221
     222!if $(HTTP_BOOT_ENABLE) == TRUE
     223  HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf
     224!endif
     225
     226!if $(TLS_ENABLE) == TRUE
     227  TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
     228!endif
     229
     230  ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
    153231  S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
    154232  SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf
     233  OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
     234  XenHypercallLib|OvmfPkg/Library/XenHypercallLib/XenHypercallLib.inf
    155235
    156236[LibraryClasses.common]
    157 !if $(SECURE_BOOT_ENABLE) == TRUE
    158237  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
    159 !endif
    160238
    161239[LibraryClasses.common.SEC]
     240  TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf
    162241!ifndef $(VBOX)
    163242  QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgSecLib.inf
     
    165244  DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
    166245!else
    167   DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
     246  DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
    168247!endif
    169248!else
     
    193272  PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
    194273!ifndef $(VBOX)
     274!ifdef $(DEBUG_ON_SERIAL_PORT)
    195275  DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
     276!else
     277  DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
     278!endif
    196279  PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
    197280!else
     
    214297!else
    215298  DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
    216 !endif
    217   PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
     299!endif  PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
    218300!else
    219301  DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
     
    222304  PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf
    223305  ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
    224 !ifdef $(VBOX)
    225306!ifdef $(SOURCE_DEBUG_ENABLE)
    226307  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
    227308!endif
    228 !endif
     309  CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf
     310  MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
     311  QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/PeiQemuFwCfgS3LibFwCfg.inf
     312  PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
     313  QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgPeiLib.inf
    229314
    230315[LibraryClasses.common.DXE_CORE]
     
    242327  DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
    243328!endif
    244   PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
    245329  ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
    246330!ifdef $(SOURCE_DEBUG_ENABLE)
     
    248332!endif
    249333  CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
     334  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
    250335
    251336[LibraryClasses.common.DXE_RUNTIME_DRIVER]
     337  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
     338  TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
    252339  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
    253340  DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
     
    263350  DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
    264351!endif
     352  UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
     353  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
     354  PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
     355  QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf
     356
     357[LibraryClasses.common.UEFI_DRIVER]
    265358  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
    266   UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
    267 !if $(SECURE_BOOT_ENABLE) == TRUE
    268   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
    269 !endif
    270 
    271 [LibraryClasses.common.UEFI_DRIVER]
     359  TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
    272360  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
    273361  DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
     
    283371  DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
    284372!endif
    285   PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
    286373  UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
     374  PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
    287375
    288376[LibraryClasses.common.DXE_DRIVER]
     377  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
     378  TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
    289379  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
    290   PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
    291380  MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
    292381  ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
     
    305394  UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
    306395  DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
    307   PlatformBdsLib|OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf
     396  PlatformBootManagerLib|OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
     397  QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
    308398  CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
     399!if $(SMM_REQUIRE) == TRUE
     400  LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
     401!else
    309402  LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf
     403!endif
    310404!ifdef $(SOURCE_DEBUG_ENABLE)
    311405  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
    312406!endif
     407  PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
     408  MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
     409  QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf
    313410
    314411[LibraryClasses.common.UEFI_APPLICATION]
     412  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
     413  TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
    315414  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
    316415  MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
     416  ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
    317417!ifndef $(VBOX)
    318418!ifdef $(DEBUG_ON_SERIAL_PORT)
     
    324424  DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
    325425!endif
     426  PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
     427
     428[LibraryClasses.common.DXE_SMM_DRIVER]
     429  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
     430  TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
     431  MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
     432  ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
     433  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
     434  SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
     435  SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
     436!ifdef $(DEBUG_ON_SERIAL_PORT)
     437  DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
     438!else
     439  DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
     440!endif
     441  CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
     442!ifdef $(SOURCE_DEBUG_ENABLE)
     443  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
     444!endif
     445  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
     446  PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
     447
     448[LibraryClasses.common.SMM_CORE]
     449  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
     450  TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
     451  SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
     452  MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
     453  ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
     454  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
     455  SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
     456  SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
     457!ifdef $(DEBUG_ON_SERIAL_PORT)
     458  DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
     459!else
     460  DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
     461!endif
     462  PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
    326463
    327464################################################################################
     
    331468################################################################################
    332469[PcdsFeatureFlag]
     470  gEfiMdeModulePkgTokenSpaceGuid.PcdHiiOsRuntimeSupport|FALSE
    333471  gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
    334472  gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|TRUE
     
    337475  gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
    338476  gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE
    339 !if $(SECURE_BOOT_ENABLE) == TRUE
    340   gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootEnable|TRUE
     477  gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
     478!if $(SMM_REQUIRE) == TRUE
     479  gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE
     480  gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmEnableBspElection|FALSE
    341481!endif
    342482
     
    347487  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported|6
    348488  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv|32
     489!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
    349490  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
    350   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x8000
     491  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800
    351492  gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0xe000
     493!endif
     494!if $(FD_SIZE_IN_KB) == 4096
     495  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x8400
     496  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x8400
     497  gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x40000
     498!endif
    352499
    353500  gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
    354501
    355502  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
     503
     504  # DEBUG_INIT      0x00000001  // Initialization
     505  # DEBUG_WARN      0x00000002  // Warnings
     506  # DEBUG_LOAD      0x00000004  // Load events
     507  # DEBUG_FS        0x00000008  // EFI File system
     508  # DEBUG_POOL      0x00000010  // Alloc & Free (pool)
     509  # DEBUG_PAGE      0x00000020  // Alloc & Free (page)
     510  # DEBUG_INFO      0x00000040  // Informational debug messages
     511  # DEBUG_DISPATCH  0x00000080  // PEI/DXE/SMM Dispatchers
     512  # DEBUG_VARIABLE  0x00000100  // Variable
     513  # DEBUG_BM        0x00000400  // Boot Manager
     514  # DEBUG_BLKIO     0x00001000  // BlkIo Driver
     515  # DEBUG_NET       0x00004000  // SNP Driver
     516  # DEBUG_UNDI      0x00010000  // UNDI Driver
     517  # DEBUG_LOADFILE  0x00020000  // LoadFile
     518  # DEBUG_EVENT     0x00080000  // Event messages
     519  # DEBUG_GCD       0x00100000  // Global Coherency Database changes
     520  # DEBUG_CACHE     0x00200000  // Memory range cachability changes
     521  # DEBUG_VERBOSE   0x00400000  // Detailed debug messages that may
     522  #                             // significantly impact boot performance
     523  # DEBUG_ERROR     0x80000000  // Error
    356524  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F
     525
    357526!ifdef $(SOURCE_DEBUG_ENABLE)
    358527  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
     
    361530!endif
    362531
     532  # This PCD is used to set the base address of the PCI express hierarchy. It
     533  # is only consulted when OVMF runs on Q35. In that case it is programmed into
     534  # the PCIEXBAR register.
     535  #
     536  # On Q35 machine types that QEMU intends to support in the long term, QEMU
     537  # never lets the RAM below 4 GB exceed 2 GB.
     538  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x80000000
     539
    363540!ifdef $(SOURCE_DEBUG_ENABLE)
    364541  gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
    365542!endif
    366543
     544!if $(HTTP_BOOT_ENABLE) == TRUE
     545  gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE
     546!endif
     547
    367548!ifndef $(USE_OLD_SHELL)
    368549  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
    369550!endif
    370551
    371 !if $(SECURE_BOOT_ENABLE) == TRUE
    372   # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
    373   gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
    374   gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
    375   gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
     552!if $(SMM_REQUIRE) == TRUE
     553  gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000
    376554!endif
    377555
     
    379557  gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20
    380558
     559  # Point to the MdeModulePkg/Application/UiApp/UiApp.inf
     560  gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
     561
    381562################################################################################
    382563#
     
    386567
    387568[PcdsDynamicDefault]
     569  # only set when
     570  #   ($(SMM_REQUIRE) == FALSE)
    388571  gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0
     572
    389573  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
    390574  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
     
    398582  gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|768
    399583!endif
     584  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable|FALSE
     585  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId|0
     586  gUefiOvmfPkgTokenSpaceGuid.PcdPciIoBase|0x0
     587  gUefiOvmfPkgTokenSpaceGuid.PcdPciIoSize|0x0
     588  gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Base|0x0
     589  gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Size|0x0
     590
     591  gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0
     592
     593  # Set video resolution for text setup.
     594  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640
     595  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480
     596
     597  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0208
     598  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0
     599  gUefiOvmfPkgTokenSpaceGuid.PcdQemuSmbiosValidated|FALSE
     600
     601  # Noexec settings for DXE.
     602  gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|FALSE
     603  gEfiMdeModulePkgTokenSpaceGuid.PcdPropertiesTableEnable|FALSE
     604
     605  # UefiCpuPkg PCDs related to initial AP bringup and general AP management.
     606  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64
     607  gUefiCpuPkgTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds|50000
     608
     609  # Set memory encryption mask
     610  gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask|0x0
     611
     612!if $(SMM_REQUIRE) == TRUE
     613  gUefiOvmfPkgTokenSpaceGuid.PcdQ35TsegMbytes|8
     614  gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode|0x01
     615  gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout|100000
     616!endif
     617
     618  gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x00
    400619
    401620################################################################################
     
    412631  OvmfPkg/Sec/SecMain.inf {
    413632    <LibraryClasses>
    414       NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
     633      NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
    415634  }
    416635
     
    423642      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
    424643  }
    425   IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
     644  MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf {
     645    <LibraryClasses>
     646      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
     647  }
     648  MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
     649    <LibraryClasses>
     650      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
     651  }
    426652  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
    427653
    428   OvmfPkg/PlatformPei/PlatformPei.inf {
    429     <LibraryClasses>
    430       PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
    431   }
     654  OvmfPkg/PlatformPei/PlatformPei.inf
    432655  UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf {
    433656    <LibraryClasses>
    434       PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
    435   }
     657!if $(SMM_REQUIRE) == TRUE
     658      LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
     659!endif
     660  }
     661!if $(SMM_REQUIRE) == TRUE
     662  OvmfPkg/SmmAccess/SmmAccessPei.inf
     663!endif
     664  UefiCpuPkg/CpuMpPei/CpuMpPei.inf
    436665
    437666  #
     
    440669  MdeModulePkg/Core/Dxe/DxeMain.inf {
    441670    <LibraryClasses>
    442       NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
     671      NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
    443672      DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
    444673  }
    445674
    446   IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
     675  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
     676  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
    447677  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf  {
    448678   <LibraryClasses>
     
    466696  UefiCpuPkg/CpuDxe/CpuDxe.inf
    467697  PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
    468   PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
     698  OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf
     699  OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
     700  MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf {
     701    <LibraryClasses>
     702      PciHostBridgeLib|OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf
     703      NULL|OvmfPkg/Library/PlatformHasIoMmuLib/PlatformHasIoMmuLib.inf
     704  }
    469705  MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
    470706    <LibraryClasses>
    471707      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
    472708  }
    473   PcAtChipsetPkg/KbcResetDxe/Reset.inf
    474   MdeModulePkg/Universal/Metronome/Metronome.inf {
    475     <LibraryClasses>
    476       TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
    477   }
    478 
    479   PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf {
    480     <LibraryClasses>
    481       TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
    482   }
    483 
    484   IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf {
    485     <LibraryClasses>
    486       TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
     709  MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
     710  MdeModulePkg/Universal/Metronome/Metronome.inf
     711  PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
     712  MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
     713  MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
     714    <LibraryClasses>
    487715!ifdef $(CSM_ENABLE)
    488716      NULL|OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
    489 !endif
    490   }
    491 
     717      NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf
     718!endif
     719  }
     720  MdeModulePkg/Logo/LogoDxe.inf
     721  MdeModulePkg/Application/UiApp/UiApp.inf {
     722    <LibraryClasses>
     723      NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
     724      NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
     725      NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
     726!ifdef $(CSM_ENABLE)
     727      NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf
     728      NULL|IntelFrameworkModulePkg/Library/LegacyBootMaintUiLib/LegacyBootMaintUiLib.inf
     729!endif
     730  }
    492731  OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
    493732  OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
     733  OvmfPkg/Virtio10Dxe/Virtio10.inf
    494734!ifndef $(VBOX)
    495735  OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
    496736  OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
    497   OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
    498 !endif
    499   OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf {
    500     <LibraryClasses>
    501       PlatformFvbLib|OvmfPkg/Library/EmuVariableFvbLib/EmuVariableFvbLib.inf
    502   }
    503   MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
    504 !ifndef $(VBOX)
    505   MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
    506 !else
    507   MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
     737  OvmfPkg/VirtioRngDxe/VirtioRng.inf
     738  OvmfPkg/XenIoPciDxe/XenIoPciDxe.inf
     739  OvmfPkg/XenBusDxe/XenBusDxe.inf
     740  OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
    508741!endif
    509742  MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
     
    525758  MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
    526759  MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
     760  MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
    527761  MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
     762  FatPkg/EnhancedFatDxe/Fat.inf
    528763  MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
    529764  MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
    530   IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
    531   PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf
     765  OvmfPkg/SataControllerDxe/SataControllerDxe.inf
     766  MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
     767  MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
     768  MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
    532769  MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
    533770  MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
     
    536773
    537774!ifndef $(VBOX)
    538   OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {
    539     <LibraryClasses>
    540       BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
    541   }
    542 !else
    543  MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
    544  MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
    545  MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
     775  OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
     776  OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
     777!else
     778 IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
     779 PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf
    546780 VBoxPkg/VBoxVgaMiniPortDxe/VBoxVgaMiniPortDxe.inf
    547781 VBoxPkg/VBoxVgaDxe/VBoxVgaDxe.inf {
     
    555789 # we need it for VBoxAppleSim
    556790 IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf
    557  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
    558  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
    559791 MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
    560792!endif
     
    573805  # SMBIOS Support
    574806  #
    575   MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
     807  MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf {
     808    <LibraryClasses>
     809      NULL|OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.inf
     810  }
    576811  OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
    577812
     
    583818  OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
    584819  OvmfPkg/AcpiTables/AcpiTables.inf
    585   OvmfPkg/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
    586820  MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
    587821  MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf
     822  MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
    588823!else
    589824  MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
     
    599834  MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
    600835  MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
    601   MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
    602836  MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
    603837  MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
     838  MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
     839!if $(NETWORK_IP6_ENABLE) == TRUE
     840  NetworkPkg/Ip6Dxe/Ip6Dxe.inf
     841  NetworkPkg/TcpDxe/TcpDxe.inf
     842  NetworkPkg/Udp6Dxe/Udp6Dxe.inf
     843  NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
     844  NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
     845  NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
     846  NetworkPkg/IScsiDxe/IScsiDxe.inf
     847!else
    604848  MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
    605   MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
    606849  MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
    607850  MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
     851!endif
     852!if $(HTTP_BOOT_ENABLE) == TRUE
     853  NetworkPkg/DnsDxe/DnsDxe.inf
     854  NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf
     855  NetworkPkg/HttpDxe/HttpDxe.inf
     856  NetworkPkg/HttpBootDxe/HttpBootDxe.inf
     857!endif
     858!if $(TLS_ENABLE) == TRUE
     859  NetworkPkg/TlsDxe/TlsDxe.inf
     860  NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf
     861!endif
    608862  OvmfPkg/VirtioNetDxe/VirtioNet.inf
    609863
     
    613867!ifndef $(VBOX)
    614868  MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
    615 !else
     869!endif
    616870  MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
    617871  MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
    618 !endif
    619872  MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
    620873  MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
     
    631884
    632885!ifndef $(USE_OLD_SHELL)
     886  ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
     887    <PcdsFixedAtBuild>
     888      gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
     889  }
    633890  ShellPkg/Application/Shell/Shell.inf {
    634891    <LibraryClasses>
     
    641898      NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
    642899      NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
     900!if $(NETWORK_IP6_ENABLE) == TRUE
     901      NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
     902!endif
    643903      HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
    644       FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
    645       ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
    646       SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf
    647904      PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
    648       PathLib|ShellPkg/Library/BasePathLib/BasePathLib.inf
    649905#      SafeBlockIoLib|ShellPkg/Library/SafeBlockIoLib/SafeBlockIoLib.inf
    650906#      SafeOpenProtocolLib|ShellPkg/Library/SafeOpenProtocolLib/SafeOpenProtocolLib.inf
     
    659915
    660916!if $(SECURE_BOOT_ENABLE) == TRUE
    661   SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableRuntimeDxe.inf {
    662     <LibraryClasses>
    663       BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
    664       OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
    665   }
    666   OvmfPkg/SecureBootConfigDxe/SecureBootConfigDxe.inf
     917  SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
    667918!endif
    668919
    669920  OvmfPkg/PlatformDxe/Platform.inf
     921  OvmfPkg/AmdSevDxe/AmdSevDxe.inf
     922  OvmfPkg/IoMmuDxe/IoMmuDxe.inf
     923
     924!if $(SMM_REQUIRE) == TRUE
     925  OvmfPkg/SmmAccess/SmmAccess2Dxe.inf
     926  OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf
     927  UefiCpuPkg/CpuS3DataDxe/CpuS3DataDxe.inf
     928
     929  #
     930  # SMM Initial Program Load (a DXE_RUNTIME_DRIVER)
     931  #
     932  MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
     933
     934  #
     935  # SMM_CORE
     936  #
     937  MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
     938
     939  #
     940  # Privileged drivers (DXE_SMM_DRIVER modules)
     941  #
     942  UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
     943  MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf {
     944    <LibraryClasses>
     945      LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
     946  }
     947  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
     948    <LibraryClasses>
     949      SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
     950      SmmCpuFeaturesLib|OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
     951  }
     952
     953  #
     954  # Variable driver stack (SMM)
     955  #
     956  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
     957  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
     958  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
     959    <LibraryClasses>
     960      NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
     961  }
     962  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
     963
     964!else
     965
     966  #
     967  # Variable driver stack (non-SMM)
     968  #
     969  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
     970  OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf {
     971    <LibraryClasses>
     972      PlatformFvbLib|OvmfPkg/Library/EmuVariableFvbLib/EmuVariableFvbLib.inf
     973  }
     974  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
     975!ifndef $(VBOX)
     976  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
     977!else
     978  MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
     979!endif
     980
     981  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
     982    <LibraryClasses>
     983      NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
     984  }
     985!endif
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette