]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/OvmfPkgX64.fdf
OvmfPkg: add driver for Virtio-RNG device
[mirror_edk2.git] / OvmfPkg / OvmfPkgX64.fdf
index 8b4dd60605f942682d549048f0a5817e0414adce..d46092a552478424b18c176a40370b4ae5f1d9a3 100644 (file)
 \r
 ################################################################################\r
 \r
-#\r
-# Default flash size for DEBUG build is 2MB. For RELEASE it is 1MB.\r
-#\r
-# Defining FD_SIZE_1MB or FD_SIZE_2MB on the build command line can\r
-# override this.\r
-#\r
 [Defines]\r
-!if $(TARGET) == RELEASE\r
-!ifndef $(FD_SIZE_2MB)\r
-DEFINE FD_SIZE_1MB=\r
-!endif\r
-!endif\r
-\r
 !include OvmfPkg.fdf.inc\r
 \r
 #\r
@@ -78,7 +66,7 @@ FV = SECFV
 ################################################################################\r
 \r
 [FD.MEMFD]\r
-BaseAddress   = 0x800000\r
+BaseAddress   = $(MEMFD_BASE_ADDRESS)\r
 Size          = 0xA00000\r
 ErasePolarity = 1\r
 BlockSize     = 0x10000\r
@@ -171,6 +159,9 @@ INF  IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
 INF  OvmfPkg/PlatformPei/PlatformPei.inf\r
 INF  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
 INF  UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf\r
+!if $(SMM_REQUIRE) == TRUE\r
+INF  OvmfPkg/SmmAccess/SmmAccessPei.inf\r
+!endif\r
 \r
 ################################################################################\r
 \r
@@ -196,7 +187,9 @@ READ_LOCK_STATUS   = TRUE
 APRIORI DXE {\r
   INF  MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
   INF  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
+!if $(SMM_REQUIRE) == FALSE\r
   INF  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
+!endif\r
 }\r
 \r
 #\r
@@ -224,14 +217,11 @@ INF  OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
 INF  OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf\r
 INF  OvmfPkg/VirtioBlkDxe/VirtioBlk.inf\r
 INF  OvmfPkg/VirtioScsiDxe/VirtioScsi.inf\r
-INF  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
-INF  OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf\r
-INF  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r
+INF  OvmfPkg/VirtioRngDxe/VirtioRng.inf\r
 INF  OvmfPkg/XenIoPciDxe/XenIoPciDxe.inf\r
 INF  OvmfPkg/XenBusDxe/XenBusDxe.inf\r
 INF  OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf\r
 \r
-INF  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
 !if $(SECURE_BOOT_ENABLE) == TRUE\r
   INF  SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf\r
 !endif\r
@@ -254,6 +244,7 @@ INF  MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
 INF  OvmfPkg/SataControllerDxe/SataControllerDxe.inf\r
 INF  MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf\r
 INF  MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf\r
+INF  MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf\r
 INF  MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
 INF  MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
 INF  MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r
@@ -352,6 +343,35 @@ INF  RuleOverride=CSM OvmfPkg/Csm/Csm16/Csm16.inf
 INF  OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf\r
 INF  OvmfPkg/PlatformDxe/Platform.inf\r
 \r
+!if $(SMM_REQUIRE) == TRUE\r
+INF  OvmfPkg/SmmAccess/SmmAccess2Dxe.inf\r
+INF  OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf\r
+INF  UefiCpuPkg/CpuS3DataDxe/CpuS3DataDxe.inf\r
+INF  MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf\r
+INF  MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf\r
+INF  UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf\r
+INF  MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf\r
+INF  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf\r
+\r
+#\r
+# Variable driver stack (SMM)\r
+#\r
+INF  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf\r
+INF  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf\r
+INF  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf\r
+INF  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf\r
+\r
+!else\r
+\r
+#\r
+# Variable driver stack (non-SMM)\r
+#\r
+INF  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
+INF  OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf\r
+INF  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r
+INF  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
+!endif\r
+\r
 ################################################################################\r
 \r
 [FV.FVMAIN_COMPACT]\r
@@ -384,6 +404,8 @@ FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
    }\r
  }\r
 \r
+!include DecomprScratchEnd.fdf.inc\r
+\r
 ################################################################################\r
 \r
 [Rule.Common.SEC]\r
@@ -476,3 +498,18 @@ FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
   FILE RAW = $(NAMED_GUID) {\r
     RAW BIN   Align = 16   |.bin\r
   }\r
+\r
+[Rule.Common.SMM_CORE]\r
+  FILE SMM_CORE = $(NAMED_GUID) {\r
+    PE32     PE32           $(INF_OUTPUT)/$(MODULE_NAME).efi\r
+    UI       STRING="$(MODULE_NAME)" Optional\r
+    VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
+  }\r
+\r
+[Rule.Common.DXE_SMM_DRIVER]\r
+  FILE SMM = $(NAMED_GUID) {\r
+    SMM_DEPEX    SMM_DEPEX Optional      $(INF_OUTPUT)/$(MODULE_NAME).depex\r
+    PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi\r
+    UI       STRING="$(MODULE_NAME)" Optional\r
+    VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
+  }\r