and rebase OvmfPkg's PlatformBdsLib on the standalone library. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <ler...@redhat.com> --- OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-- OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ OvmfPkg/{Library/PlatformBdsLib/QemuBootOrder.h => Include/Library/QemuBootOrderLib.h} | 6 +++++- OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c | 2 +- OvmfPkg/Library/{PlatformBdsLib/QemuBootOrder.c => QemuBootOrderLib/QemuBootOrderLib.c} | 3 ++- OvmfPkg/OvmfPkg.dec | 5 +++++ OvmfPkg/OvmfPkgIa32.dsc | 1 + OvmfPkg/OvmfPkgIa32X64.dsc | 1 + OvmfPkg/OvmfPkgX64.dsc | 1 + 9 files changed, 70 insertions(+), 5 deletions(-)
diff --git a/OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf b/OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf index 03f5b22..1adc289 100644 --- a/OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf +++ b/OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf @@ -29,10 +29,8 @@ [Sources] BdsPlatform.c PlatformData.c - QemuBootOrder.c QemuKernel.c BdsPlatform.h - QemuBootOrder.h [Packages] MdePkg/MdePkg.dec @@ -52,6 +50,7 @@ NvVarsFileLib QemuFwCfgLib LoadLinuxLib + QemuBootOrderLib [Pcd] gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut diff --git a/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf new file mode 100644 index 0000000..12419cd --- /dev/null +++ b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf @@ -0,0 +1,53 @@ +## @file +# Rewrite the BootOrder NvVar based on QEMU's "bootorder" fw_cfg file. +# +# Copyright (C) 2012 - 2014, Red Hat, Inc. +# Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR> +# +# This program and the accompanying materials are licensed and made available +# under the terms and conditions of the BSD License which accompanies this +# distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR +# IMPLIED. +# +## + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = QemuBootOrderLib + FILE_GUID = 4FFFA9E1-103D-4CF2-9C06-563BDD03050E + MODULE_TYPE = DXE_DRIVER + VERSION_STRING = 1.0 + LIBRARY_CLASS = QemuBootOrderLib|DXE_DRIVER + +# +# The following information is for reference only and not required by the build +# tools. +# +# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 +# + +[Sources] + QemuBootOrderLib.c + +[Packages] + MdePkg/MdePkg.dec + IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec + OvmfPkg/OvmfPkg.dec + +[LibraryClasses] + QemuFwCfgLib + DebugLib + MemoryAllocationLib + GenericBdsLib + UefiBootServicesTableLib + UefiRuntimeServicesTableLib + BaseLib + PrintLib + DevicePathLib + +[Guids] + gEfiGlobalVariableGuid diff --git a/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.h b/OvmfPkg/Include/Library/QemuBootOrderLib.h similarity index 91% rename from OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.h rename to OvmfPkg/Include/Library/QemuBootOrderLib.h index 8d4ca2b..12cda6a 100644 --- a/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.h +++ b/OvmfPkg/Include/Library/QemuBootOrderLib.h @@ -2,7 +2,7 @@ Rewrite the BootOrder NvVar based on QEMU's "bootorder" fw_cfg file -- include file. - Copyright (C) 2012, Red Hat, Inc. + Copyright (C) 2012-2014, Red Hat, Inc. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this @@ -13,6 +13,8 @@ WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. **/ +#ifndef __QEMU_BOOT_ORDER_LIB_H__ +#define __QEMU_BOOT_ORDER_LIB_H__ #include <Uefi/UefiBaseType.h> #include <Base.h> @@ -51,3 +53,5 @@ RETURN_STATUS SetBootOrderFromQemu ( IN CONST LIST_ENTRY *BootOptionList ); + +#endif diff --git a/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c index df07281..341f5c1 100644 --- a/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c +++ b/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c @@ -13,7 +13,7 @@ **/ #include "BdsPlatform.h" -#include "QemuBootOrder.h" +#include <Library/QemuBootOrderLib.h> // diff --git a/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.c b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.c similarity index 96% rename from OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.c rename to OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.c index bd0fb76..2ff6854 100644 --- a/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.c +++ b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.c @@ -1,7 +1,7 @@ /** @file Rewrite the BootOrder NvVar based on QEMU's "bootorder" fw_cfg file. - Copyright (C) 2012 - 2013, Red Hat, Inc. + Copyright (C) 2012 - 2014, Red Hat, Inc. Copyright (c) 2013, Intel Corporation. All rights reserved.<BR> This program and the accompanying materials are licensed and made available @@ -22,6 +22,7 @@ #include <Library/BaseLib.h> #include <Library/PrintLib.h> #include <Library/DevicePathLib.h> +#include <Library/QemuBootOrderLib.h> #include <Guid/GlobalVariable.h> diff --git a/OvmfPkg/OvmfPkg.dec b/OvmfPkg/OvmfPkg.dec index e43ee4f..0eeda6d 100644 --- a/OvmfPkg/OvmfPkg.dec +++ b/OvmfPkg/OvmfPkg.dec @@ -35,6 +35,11 @@ # QemuFwCfgLib|Include/Library/QemuFwCfgLib.h + ## @libraryclass Rewrite the BootOrder NvVar based on QEMU's "bootorder" + # fw_cfg file. + # + QemuBootOrderLib|Include/Library/QemuBootOrderLib.h + ## @libraryclass Serialize (and deserialize) variables # SerializeVariablesLib|Include/Library/SerializeVariablesLib.h diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc index f759bfe..ff57dc1 100644 --- a/OvmfPkg/OvmfPkgIa32.dsc +++ b/OvmfPkg/OvmfPkgIa32.dsc @@ -256,6 +256,7 @@ !ifdef $(SOURCE_DEBUG_ENABLE) DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf !endif + QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf [LibraryClasses.common.UEFI_APPLICATION] PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc index c676347..17e8af3 100644 --- a/OvmfPkg/OvmfPkgIa32X64.dsc +++ b/OvmfPkg/OvmfPkgIa32X64.dsc @@ -261,6 +261,7 @@ !ifdef $(SOURCE_DEBUG_ENABLE) DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf !endif + QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf [LibraryClasses.common.UEFI_APPLICATION] PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc index 083418b..80ea6ed 100644 --- a/OvmfPkg/OvmfPkgX64.dsc +++ b/OvmfPkg/OvmfPkgX64.dsc @@ -261,6 +261,7 @@ !ifdef $(SOURCE_DEBUG_ENABLE) DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf !endif + QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf [LibraryClasses.common.UEFI_APPLICATION] PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf -- 1.8.3.1