* [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
@ 2022-07-07 16:15 Lu, James
2022-07-07 16:46 ` Ni, Ray
2022-07-18 21:26 ` Guo Dong
0 siblings, 2 replies; 4+ messages in thread
From: Lu, James @ 2022-07-07 16:15 UTC (permalink / raw)
To: devel; +Cc: James Lu, Guo Dong, Ray Ni, Gua Guo
From: James Lu <james.lu@intel.com>
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>
---
UefiPayloadPkg/UefiPayloadPkg.dsc | 21 ++++++++++++++++++++
UefiPayloadPkg/UefiPayloadPkg.fdf | 14 ++++++++++++-
2 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index cfcf38578d..ec79914f45 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -36,7 +36,16 @@
DEFINE PLATFORM_BOOT_TIMEOUT = 3
DEFINE ABOVE_4G_MEMORY = TRUE
DEFINE BOOT_MANAGER_ESCAPE = FALSE
+ DEFINE ATA_ENABLE = TRUE
+ DEFINE SD_ENABLE = TRUE
+ DEFINE PS2_MOUSE_ENABLE = TRUE
DEFINE SD_MMC_TIMEOUT = 1000000
+
+ #
+ # NULL: NullMemoryTestDxe
+ # GENERIC: GenericMemoryTestDxe
+ #
+ DEFINE MEMORY_TEST = NULL
#
# SBL: UEFI payload for Slim Bootloader
# COREBOOT: UEFI payload for coreboot
@@ -596,7 +605,11 @@
MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
+!if $(MEMORY_TEST) == "GENERIC"
+ MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
+!elseif $(MEMORY_TEST) == "NULL"
MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!endif
MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
@@ -631,8 +644,10 @@
MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
FatPkg/EnhancedFatDxe/Fat.inf
+!if $(ATA_ENABLE) == TRUE
MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
+!endif
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
@@ -644,9 +659,11 @@
#
# SD/eMMC Support
#
+!if $(SD_ENABLE) == TRUE
MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
+!endif
#
# Usb Support
@@ -671,7 +688,9 @@
!if $(PS2_KEYBOARD_ENABLE) == TRUE
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
!endif
+!if $(PS2_MOUSE_ENABLE) == TRUE
MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
+!endif
#
# Console Support
@@ -742,12 +761,14 @@
# This should be FALSE for compiling the dynamic command.
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
<PcdsFixedAtBuild>
## This flag is used to control initialization of the shell library
# This should be FALSE for compiling the dynamic command.
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!endif
ShellPkg/Application/Shell/Shell.inf {
<PcdsFixedAtBuild>
## This flag is used to control initialization of the shell library
diff --git a/UefiPayloadPkg/UefiPayloadPkg.fdf b/UefiPayloadPkg/UefiPayloadPkg.fdf
index c7b04978ad..35f79be2f0 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.fdf
+++ b/UefiPayloadPkg/UefiPayloadPkg.fdf
@@ -149,7 +149,11 @@ INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
-INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!if $(MEMORY_TEST) == "GENERIC"
+INF MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
+!elseif $(MEMORY_TEST) == "NULL"
+INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!endif
INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
@@ -176,7 +180,9 @@ INF OvmfPkg/SioBusDxe/SioBusDxe.inf
!if $(PS2_KEYBOARD_ENABLE) == TRUE
INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
!endif
+!if $(PS2_MOUSE_ENABLE) == TRUE
INF MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
+!endif
#
# Console Support
@@ -195,8 +201,10 @@ INF UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf
INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
+!if $(ATA_ENABLE) == TRUE
INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
+!endif
INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
@@ -209,9 +217,11 @@ INF FatPkg/EnhancedFatDxe/Fat.inf
#
# SD/eMMC Support
#
+!if $(SD_ENABLE) == TRUE
INF MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
INF MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
INF MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
+!endif
#
# Usb Support
@@ -241,7 +251,9 @@ INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
#
!if $(SHELL_TYPE) == BUILD_SHELL
INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
INF ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf
+!endif
INF ShellPkg/Application/Shell/Shell.inf
!endif
--
2.26.2.windows.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
2022-07-07 16:15 [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL Lu, James
@ 2022-07-07 16:46 ` Ni, Ray
2022-07-15 5:41 ` Lu, James
2022-07-18 21:26 ` Guo Dong
1 sibling, 1 reply; 4+ messages in thread
From: Ni, Ray @ 2022-07-07 16:46 UTC (permalink / raw)
To: Lu, James, devel@edk2.groups.io; +Cc: Lu, James, Dong, Guo, Guo, Gua
[-- Attachment #1: Type: text/plain, Size: 7016 bytes --]
Reviewed-by: Ray Ni <Ray.ni@intel.com>
thanks,
ray
________________________________
From: Lu, James <james.lu@intel.com>
Sent: Friday, July 8, 2022 12:15:09 AM
To: devel@edk2.groups.io <devel@edk2.groups.io>
Cc: Lu, James <james.lu@intel.com>; Dong, Guo <guo.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Guo, Gua <gua.guo@intel.com>
Subject: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
From: James Lu <james.lu@intel.com>
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>
---
UefiPayloadPkg/UefiPayloadPkg.dsc | 21 ++++++++++++++++++++
UefiPayloadPkg/UefiPayloadPkg.fdf | 14 ++++++++++++-
2 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index cfcf38578d..ec79914f45 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -36,7 +36,16 @@
DEFINE PLATFORM_BOOT_TIMEOUT = 3
DEFINE ABOVE_4G_MEMORY = TRUE
DEFINE BOOT_MANAGER_ESCAPE = FALSE
+ DEFINE ATA_ENABLE = TRUE
+ DEFINE SD_ENABLE = TRUE
+ DEFINE PS2_MOUSE_ENABLE = TRUE
DEFINE SD_MMC_TIMEOUT = 1000000
+
+ #
+ # NULL: NullMemoryTestDxe
+ # GENERIC: GenericMemoryTestDxe
+ #
+ DEFINE MEMORY_TEST = NULL
#
# SBL: UEFI payload for Slim Bootloader
# COREBOOT: UEFI payload for coreboot
@@ -596,7 +605,11 @@
MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
+!if $(MEMORY_TEST) == "GENERIC"
+ MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
+!elseif $(MEMORY_TEST) == "NULL"
MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!endif
MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
@@ -631,8 +644,10 @@
MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
FatPkg/EnhancedFatDxe/Fat.inf
+!if $(ATA_ENABLE) == TRUE
MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
+!endif
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
@@ -644,9 +659,11 @@
#
# SD/eMMC Support
#
+!if $(SD_ENABLE) == TRUE
MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
+!endif
#
# Usb Support
@@ -671,7 +688,9 @@
!if $(PS2_KEYBOARD_ENABLE) == TRUE
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
!endif
+!if $(PS2_MOUSE_ENABLE) == TRUE
MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
+!endif
#
# Console Support
@@ -742,12 +761,14 @@
# This should be FALSE for compiling the dynamic command.
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
<PcdsFixedAtBuild>
## This flag is used to control initialization of the shell library
# This should be FALSE for compiling the dynamic command.
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!endif
ShellPkg/Application/Shell/Shell.inf {
<PcdsFixedAtBuild>
## This flag is used to control initialization of the shell library
diff --git a/UefiPayloadPkg/UefiPayloadPkg.fdf b/UefiPayloadPkg/UefiPayloadPkg.fdf
index c7b04978ad..35f79be2f0 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.fdf
+++ b/UefiPayloadPkg/UefiPayloadPkg.fdf
@@ -149,7 +149,11 @@ INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
-INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!if $(MEMORY_TEST) == "GENERIC"
+INF MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
+!elseif $(MEMORY_TEST) == "NULL"
+INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!endif
INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
@@ -176,7 +180,9 @@ INF OvmfPkg/SioBusDxe/SioBusDxe.inf
!if $(PS2_KEYBOARD_ENABLE) == TRUE
INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
!endif
+!if $(PS2_MOUSE_ENABLE) == TRUE
INF MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
+!endif
#
# Console Support
@@ -195,8 +201,10 @@ INF UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf
INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
+!if $(ATA_ENABLE) == TRUE
INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
+!endif
INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
@@ -209,9 +217,11 @@ INF FatPkg/EnhancedFatDxe/Fat.inf
#
# SD/eMMC Support
#
+!if $(SD_ENABLE) == TRUE
INF MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
INF MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
INF MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
+!endif
#
# Usb Support
@@ -241,7 +251,9 @@ INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
#
!if $(SHELL_TYPE) == BUILD_SHELL
INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
INF ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf
+!endif
INF ShellPkg/Application/Shell/Shell.inf
!endif
--
2.26.2.windows.1
[-- Attachment #2: Type: text/html, Size: 10514 bytes --]
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
2022-07-07 16:46 ` Ni, Ray
@ 2022-07-15 5:41 ` Lu, James
0 siblings, 0 replies; 4+ messages in thread
From: Lu, James @ 2022-07-15 5:41 UTC (permalink / raw)
To: Ni, Ray, devel@edk2.groups.io; +Cc: Dong, Guo, Guo, Gua
[-- Attachment #1: Type: text/plain, Size: 7901 bytes --]
Created PR, please help to push
UefiPayloadPkg: Add macro to support selective driver in UPL by jameslu8 * Pull Request #3065 * tianocore/edk2 (github.com)<https://github.com/tianocore/edk2/pull/3065>
Thanks,
James
From: Ni, Ray <ray.ni@intel.com>
Sent: Friday, July 8, 2022 12:47 AM
To: Lu, James <james.lu@intel.com>; devel@edk2.groups.io
Cc: Lu, James <james.lu@intel.com>; Dong, Guo <guo.dong@intel.com>; Guo, Gua <gua.guo@intel.com>
Subject: Re: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
Reviewed-by: Ray Ni <Ray.ni@intel.com<mailto:Ray.ni@intel.com>>
thanks,
ray
________________________________
From: Lu, James <james.lu@intel.com<mailto:james.lu@intel.com>>
Sent: Friday, July 8, 2022 12:15:09 AM
To: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>>
Cc: Lu, James <james.lu@intel.com<mailto:james.lu@intel.com>>; Dong, Guo <guo.dong@intel.com<mailto:guo.dong@intel.com>>; Ni, Ray <ray.ni@intel.com<mailto:ray.ni@intel.com>>; Guo, Gua <gua.guo@intel.com<mailto:gua.guo@intel.com>>
Subject: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
From: James Lu <james.lu@intel.com<mailto:james.lu@intel.com>>
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<mailto:guo.dong@intel.com>>
Cc: Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>
Cc: Gua Guo <gua.guo@intel.com<mailto:gua.guo@intel.com>>
Signed-off-by: James Lu <james.lu@intel.com<mailto:james.lu@intel.com>>
---
UefiPayloadPkg/UefiPayloadPkg.dsc | 21 ++++++++++++++++++++
UefiPayloadPkg/UefiPayloadPkg.fdf | 14 ++++++++++++-
2 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index cfcf38578d..ec79914f45 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -36,7 +36,16 @@
DEFINE PLATFORM_BOOT_TIMEOUT = 3
DEFINE ABOVE_4G_MEMORY = TRUE
DEFINE BOOT_MANAGER_ESCAPE = FALSE
+ DEFINE ATA_ENABLE = TRUE
+ DEFINE SD_ENABLE = TRUE
+ DEFINE PS2_MOUSE_ENABLE = TRUE
DEFINE SD_MMC_TIMEOUT = 1000000
+
+ #
+ # NULL: NullMemoryTestDxe
+ # GENERIC: GenericMemoryTestDxe
+ #
+ DEFINE MEMORY_TEST = NULL
#
# SBL: UEFI payload for Slim Bootloader
# COREBOOT: UEFI payload for coreboot
@@ -596,7 +605,11 @@
MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
+!if $(MEMORY_TEST) == "GENERIC"
+ MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
+!elseif $(MEMORY_TEST) == "NULL"
MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!endif
MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
@@ -631,8 +644,10 @@
MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
FatPkg/EnhancedFatDxe/Fat.inf
+!if $(ATA_ENABLE) == TRUE
MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
+!endif
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
@@ -644,9 +659,11 @@
#
# SD/eMMC Support
#
+!if $(SD_ENABLE) == TRUE
MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
+!endif
#
# Usb Support
@@ -671,7 +688,9 @@
!if $(PS2_KEYBOARD_ENABLE) == TRUE
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
!endif
+!if $(PS2_MOUSE_ENABLE) == TRUE
MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
+!endif
#
# Console Support
@@ -742,12 +761,14 @@
# This should be FALSE for compiling the dynamic command.
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
<PcdsFixedAtBuild>
## This flag is used to control initialization of the shell library
# This should be FALSE for compiling the dynamic command.
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
}
+!endif
ShellPkg/Application/Shell/Shell.inf {
<PcdsFixedAtBuild>
## This flag is used to control initialization of the shell library
diff --git a/UefiPayloadPkg/UefiPayloadPkg.fdf b/UefiPayloadPkg/UefiPayloadPkg.fdf
index c7b04978ad..35f79be2f0 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.fdf
+++ b/UefiPayloadPkg/UefiPayloadPkg.fdf
@@ -149,7 +149,11 @@ INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
-INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!if $(MEMORY_TEST) == "GENERIC"
+INF MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
+!elseif $(MEMORY_TEST) == "NULL"
+INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
+!endif
INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
@@ -176,7 +180,9 @@ INF OvmfPkg/SioBusDxe/SioBusDxe.inf
!if $(PS2_KEYBOARD_ENABLE) == TRUE
INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
!endif
+!if $(PS2_MOUSE_ENABLE) == TRUE
INF MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
+!endif
#
# Console Support
@@ -195,8 +201,10 @@ INF UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf
INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
+!if $(ATA_ENABLE) == TRUE
INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
+!endif
INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
@@ -209,9 +217,11 @@ INF FatPkg/EnhancedFatDxe/Fat.inf
#
# SD/eMMC Support
#
+!if $(SD_ENABLE) == TRUE
INF MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
INF MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
INF MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
+!endif
#
# Usb Support
@@ -241,7 +251,9 @@ INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
#
!if $(SHELL_TYPE) == BUILD_SHELL
INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
INF ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf
+!endif
INF ShellPkg/Application/Shell/Shell.inf
!endif
--
2.26.2.windows.1
[-- Attachment #2: Type: text/html, Size: 14067 bytes --]
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
2022-07-07 16:15 [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL Lu, James
2022-07-07 16:46 ` Ni, Ray
@ 2022-07-18 21:26 ` Guo Dong
1 sibling, 0 replies; 4+ messages in thread
From: Guo Dong @ 2022-07-18 21:26 UTC (permalink / raw)
To: Lu, James, devel@edk2.groups.io; +Cc: Ni, Ray, Guo, Gua
Reviewed-by: Guo Dong <guo.dong@intel.com>
-----Original Message-----
From: Lu, James <james.lu@intel.com>
Sent: Thursday, July 7, 2022 9:15 AM
To: devel@edk2.groups.io
Cc: Lu, James <james.lu@intel.com>; Dong, Guo <guo.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Guo, Gua <gua.guo@intel.com>
Subject: [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL
From: James Lu <james.lu@intel.com>
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>
---
UefiPayloadPkg/UefiPayloadPkg.dsc | 21 ++++++++++++++++++++ UefiPayloadPkg/UefiPayloadPkg.fdf | 14 ++++++++++++-
2 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index cfcf38578d..ec79914f45 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -36,7 +36,16 @@
DEFINE PLATFORM_BOOT_TIMEOUT = 3 DEFINE ABOVE_4G_MEMORY = TRUE DEFINE BOOT_MANAGER_ESCAPE = FALSE+ DEFINE ATA_ENABLE = TRUE+ DEFINE SD_ENABLE = TRUE+ DEFINE PS2_MOUSE_ENABLE = TRUE DEFINE SD_MMC_TIMEOUT = 1000000++ #+ # NULL: NullMemoryTestDxe+ # GENERIC: GenericMemoryTestDxe+ #+ DEFINE MEMORY_TEST = NULL # # SBL: UEFI payload for Slim Bootloader # COREBOOT: UEFI payload for coreboot@@ -596,7 +605,11 @@
MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf+!if $(MEMORY_TEST) == "GENERIC"+ MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf+!elseif $(MEMORY_TEST) == "NULL" MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf+!endif MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf@@ -631,8 +644,10 @@
MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf FatPkg/EnhancedFatDxe/Fat.inf+!if $(ATA_ENABLE) == TRUE MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf+!endif MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf@@ -644,9 +659,11 @@
# # SD/eMMC Support #+!if $(SD_ENABLE) == TRUE MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf+!endif # # Usb Support@@ -671,7 +688,9 @@
!if $(PS2_KEYBOARD_ENABLE) == TRUE MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf !endif+!if $(PS2_MOUSE_ENABLE) == TRUE MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf+!endif # # Console Support@@ -742,12 +761,14 @@
# This should be FALSE for compiling the dynamic command. gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE }+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf { <PcdsFixedAtBuild> ## This flag is used to control initialization of the shell library # This should be FALSE for compiling the dynamic command. gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE }+!endif ShellPkg/Application/Shell/Shell.inf { <PcdsFixedAtBuild> ## This flag is used to control initialization of the shell librarydiff --git a/UefiPayloadPkg/UefiPayloadPkg.fdf b/UefiPayloadPkg/UefiPayloadPkg.fdf
index c7b04978ad..35f79be2f0 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.fdf
+++ b/UefiPayloadPkg/UefiPayloadPkg.fdf
@@ -149,7 +149,11 @@ INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf-INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf+!if $(MEMORY_TEST) == "GENERIC"+INF MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf+!elseif $(MEMORY_TEST) == "NULL"+INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf+!endif INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf@@ -176,7 +180,9 @@ INF OvmfPkg/SioBusDxe/SioBusDxe.inf !if $(PS2_KEYBOARD_ENABLE) == TRUE INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf !endif+!if $(PS2_MOUSE_ENABLE) == TRUE INF MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf+!endif # # Console Support@@ -195,8 +201,10 @@ INF UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf
INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf+!if $(ATA_ENABLE) == TRUE INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf+!endif INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf@@ -209,9 +217,11 @@ INF FatPkg/EnhancedFatDxe/Fat.inf # # SD/eMMC Support #+!if $(SD_ENABLE) == TRUE INF MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf INF MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf INF MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf+!endif # # Usb Support@@ -241,7 +251,9 @@ INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
# !if $(SHELL_TYPE) == BUILD_SHELL INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf+!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE INF ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf+!endif INF ShellPkg/Application/Shell/Shell.inf !endif --
2.26.2.windows.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-07-18 21:26 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-07 16:15 [PATCH v3] UefiPayloadPkg: Add macro to support selective driver in UPL Lu, James
2022-07-07 16:46 ` Ni, Ray
2022-07-15 5:41 ` Lu, James
2022-07-18 21:26 ` Guo Dong
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox