]> git.proxmox.com Git - mirror_edk2.git/commitdiff
UefiPayloadPkg: Add macro to support selective driver in UPL
authorJames Lu <james.lu@intel.com>
Thu, 7 Jul 2022 16:15:09 +0000 (09:15 -0700)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Mon, 18 Jul 2022 22:18:16 +0000 (22:18 +0000)
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3967

Add macros to decide modules built into UPL.elf.

Macro list:
 - GENERIC_MEMORY_TEST_ENABLE: GenericMemoryTestDxe
 - MEMORY_TEST: NullMemoryTestDxe or GenericMemoryDxe
 - ATA_ENABLE: SataControllerDxe, AtaBusDxe
 - SD_ENABLE: SdMmcPciDxe, EmmcDxe, SdDxe
 - PS2_MOUSE_ENABLE: Ps2MouseDxe

Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Gua Guo <gua.guo@intel.com>
Signed-off-by: James Lu <james.lu@intel.com>
Reviewed-by: Ray Ni <Ray.ni@intel.com>
Reviewed-by: Guo Dong <guo.dong@intel.com>
UefiPayloadPkg/UefiPayloadPkg.dsc
UefiPayloadPkg/UefiPayloadPkg.fdf

index 2428bb2ce9a9dea5dcd7fbfe45c4ba70227cb1a0..5e947526b7297ada57070afe1296ffe55f2c5650 100644 (file)
   DEFINE PLATFORM_BOOT_TIMEOUT        = 3\r
   DEFINE ABOVE_4G_MEMORY              = TRUE\r
   DEFINE BOOT_MANAGER_ESCAPE          = FALSE\r
+  DEFINE ATA_ENABLE                   = TRUE\r
+  DEFINE SD_ENABLE                    = TRUE\r
+  DEFINE PS2_MOUSE_ENABLE             = TRUE\r
   DEFINE SD_MMC_TIMEOUT               = 1000000\r
+\r
+  #\r
+  # NULL:    NullMemoryTestDxe\r
+  # GENERIC: GenericMemoryTestDxe\r
+  #\r
+  DEFINE MEMORY_TEST                  = NULL\r
   #\r
   # SBL:      UEFI payload for Slim Bootloader\r
   # COREBOOT: UEFI payload for coreboot\r
   MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf\r
   UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf\r
   MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
+!if $(MEMORY_TEST) == "GENERIC"\r
+  MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf\r
+!elseif $(MEMORY_TEST) == "NULL"\r
   MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
+!endif\r
   MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
   MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
   MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r
   MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
   MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
   FatPkg/EnhancedFatDxe/Fat.inf\r
+!if $(ATA_ENABLE) == TRUE\r
   MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf\r
   MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf\r
+!endif\r
   MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf\r
   MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf\r
   MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf\r
   #\r
   # SD/eMMC Support\r
   #\r
+!if $(SD_ENABLE) == TRUE\r
   MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf\r
   MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf\r
   MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf\r
+!endif\r
 \r
   #\r
   # Usb Support\r
 !if $(PS2_KEYBOARD_ENABLE) == TRUE\r
   MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf\r
 !endif\r
+!if $(PS2_MOUSE_ENABLE) == TRUE\r
   MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf\r
+!endif\r
 \r
   #\r
   # Console Support\r
       #  This should be FALSE for compiling the dynamic command.\r
       gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE\r
   }\r
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE\r
   ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {\r
     <PcdsFixedAtBuild>\r
       ## This flag is used to control initialization of the shell library\r
       #  This should be FALSE for compiling the dynamic command.\r
       gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE\r
   }\r
+!endif\r
   ShellPkg/Application/Shell/Shell.inf {\r
     <PcdsFixedAtBuild>\r
       ## This flag is used to control initialization of the shell library\r
index 7087f5bd75fb26ad6df46966634b1e87b632300b..5c055e61b3d38f725e3548df85f1c28e3f95c340 100644 (file)
@@ -150,7 +150,11 @@ INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
 \r
 INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf\r
 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
-INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
+!if $(MEMORY_TEST) == "GENERIC"\r
+INF  MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf\r
+!elseif $(MEMORY_TEST) == "NULL"\r
+INF  MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
+!endif\r
 INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
 INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
 INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r
@@ -177,7 +181,9 @@ INF OvmfPkg/SioBusDxe/SioBusDxe.inf
 !if $(PS2_KEYBOARD_ENABLE) == TRUE\r
 INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf\r
 !endif\r
+!if $(PS2_MOUSE_ENABLE) == TRUE\r
 INF MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf\r
+!endif\r
 \r
 #\r
 # Console Support\r
@@ -196,8 +202,10 @@ INF UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf
 INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
 INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
 INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
+!if $(ATA_ENABLE) == TRUE\r
 INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf\r
 INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf\r
+!endif\r
 INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf\r
 INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf\r
 INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf\r
@@ -210,9 +218,11 @@ INF FatPkg/EnhancedFatDxe/Fat.inf
 #\r
 # SD/eMMC Support\r
 #\r
+!if $(SD_ENABLE) == TRUE\r
 INF MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf\r
 INF MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf\r
 INF MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf\r
+!endif\r
 \r
 #\r
 # Usb Support\r
@@ -242,7 +252,9 @@ INF  MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
 #\r
 !if $(SHELL_TYPE) == BUILD_SHELL\r
 INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf\r
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE\r
 INF ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf\r
+!endif\r
 INF ShellPkg/Application/Shell/Shell.inf\r
 !endif\r
 \r