]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiPayloadPkg/UefiPayloadPkg.fdf
UefiPayloadPkg: Add SMM support and SMM variable support
[mirror_edk2.git] / UefiPayloadPkg / UefiPayloadPkg.fdf
index 72e4c704673eb3b9b82a281d71d00845840f0f16..2f5cb17f62257ecb6938298594c5907eb03b1872 100644 (file)
@@ -114,11 +114,29 @@ INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe
 !if $(DISABLE_RESET_SYSTEM) == FALSE\r
 INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf\r
 !endif\r
-\r
 INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf\r
 \r
-!if $(EMU_VARIABLE_ENABLE) == TRUE\r
-INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
+#\r
+# SMM Support\r
+#\r
+!if $(SMM_SUPPORT) == TRUE\r
+  INF UefiPayloadPkg/SmmAccessDxe/SmmAccessDxe.inf\r
+  INF UefiPayloadPkg/SmmControlRuntimeDxe/SmmControlRuntimeDxe.inf\r
+  INF UefiPayloadPkg/BlSupportSmm/BlSupportSmm.inf\r
+  INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf\r
+  INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf\r
+  INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf\r
+  INF UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf\r
+  INF UefiPayloadPkg/PchSmiDispatchSmm/PchSmiDispatchSmm.inf\r
+!endif\r
+\r
+!if $(VARIABLE_SUPPORT) == "EMU"\r
+  INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
+!elseif $(VARIABLE_SUPPORT) == "SPI"\r
+  INF UefiPayloadPkg/FvbRuntimeDxe/FvbSmm.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
 !endif\r
 \r
 INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf\r
@@ -271,6 +289,20 @@ INF ShellPkg/Application/Shell/Shell.inf
     UI       STRING="$(MODULE_NAME)" Optional\r
     VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\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
+\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.UEFI_DRIVER]\r
   FILE DRIVER = $(NAMED_GUID) {\r