We have all the required pieces in place. Let's call
SetBootOrderFromQemu() in PlatformBdsPolicyBehavior().
We disable OFW-to-UEFI device path fragment translation for virtio-pci,
and enable it only virtio-mmio at this time.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Olivier Martin <Olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16576
6f19259b-4bc3-4df7-8a09-
765794883524
GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf\r
PlatformBdsLib|ArmPlatformPkg/ArmVirtualizationPkg/Library/PlatformIntelBdsLib/PlatformIntelBdsLib.inf\r
CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf\r
GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf\r
PlatformBdsLib|ArmPlatformPkg/ArmVirtualizationPkg/Library/PlatformIntelBdsLib/PlatformIntelBdsLib.inf\r
CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf\r
+ QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf\r
!endif\r
\r
[LibraryClasses.common.UEFI_DRIVER]\r
!endif\r
\r
[LibraryClasses.common.UEFI_DRIVER]\r
################################################################################\r
\r
[PcdsFeatureFlag.common]\r
################################################################################\r
\r
[PcdsFeatureFlag.common]\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdQemuBootOrderPciTranslation|FALSE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdQemuBootOrderMmioTranslation|TRUE\r
+\r
## If TRUE, Graphics Output Protocol will be installed on virtual handle created by ConsplitterDxe.\r
# It could be set FALSE to save size.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|FALSE\r
## If TRUE, Graphics Output Protocol will be installed on virtual handle created by ConsplitterDxe.\r
# It could be set FALSE to save size.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|FALSE\r
\r
#include "IntelBdsPlatform.h"\r
\r
\r
#include "IntelBdsPlatform.h"\r
\r
+#include <Library/QemuBootOrderLib.h>\r
+\r
///\r
/// Predefined platform default time out value\r
///\r
///\r
/// Predefined platform default time out value\r
///\r
\r
BdsLibConnectAll ();\r
BdsLibEnumerateAllBootOption (BootOptionList);\r
\r
BdsLibConnectAll ();\r
BdsLibEnumerateAllBootOption (BootOptionList);\r
+\r
+ SetBootOrderFromQemu (BootOptionList);\r
+ //\r
+ // The BootOrder variable may have changed, reload the in-memory list with\r
+ // it.\r
+ //\r
+ BdsLibBuildOptionFromVar (BootOptionList, L"BootOrder");\r
+\r
PlatformBdsEnterFrontPage (gPlatformBootTimeOutDefault, TRUE);\r
}\r
\r
PlatformBdsEnterFrontPage (gPlatformBootTimeOutDefault, TRUE);\r
}\r
\r
MdePkg/MdePkg.dec\r
MdeModulePkg/MdeModulePkg.dec\r
IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec\r
MdePkg/MdePkg.dec\r
MdeModulePkg/MdeModulePkg.dec\r
IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec\r
\r
[LibraryClasses]\r
BaseLib\r
\r
[LibraryClasses]\r
BaseLib\r
UefiBootServicesTableLib\r
PcdLib\r
GenericBdsLib\r
UefiBootServicesTableLib\r
PcdLib\r
GenericBdsLib\r
\r
[Guids]\r
gArmGlobalVariableGuid\r
\r
[Guids]\r
gArmGlobalVariableGuid\r