summaryrefslogtreecommitdiff
path: root/OvmfPkg/Library
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2015-01-02 12:07:57 +0000
committerlersek <lersek@Edk2>2015-01-02 12:07:57 +0000
commitcca7475bcbb8bfc7c732e106692a6d15e1dae51c (patch)
tree84e9cf11d14ad164b04e810d740983e24e4b9e90 /OvmfPkg/Library
parent1b610ac2550d053d0997832059cc83247888bae4 (diff)
downloadedk2-platforms-cca7475bcbb8bfc7c732e106692a6d15e1dae51c.tar.xz
OvmfPkg: extract QemuBootOrderLib
and rebase OvmfPkg's PlatformBdsLib on the standalone library. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16570 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'OvmfPkg/Library')
-rw-r--r--OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c2
-rw-r--r--OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf3
-rw-r--r--OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.h53
-rw-r--r--OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.c (renamed from OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.c)3
-rw-r--r--OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf53
5 files changed, 57 insertions, 57 deletions
diff --git a/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBdsLib/BdsPlatform.c
index df07281448..341f5c1596 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/PlatformBdsLib.inf b/OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 03f5b229cf..1adc28972a 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/PlatformBdsLib/QemuBootOrder.h b/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.h
deleted file mode 100644
index 8d4ca2b111..0000000000
--- a/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/** @file
- Rewrite the BootOrder NvVar based on QEMU's "bootorder" fw_cfg file --
- include file.
-
- Copyright (C) 2012, 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
- 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.
-**/
-
-
-#include <Uefi/UefiBaseType.h>
-#include <Base.h>
-
-
-/**
-
- Set the boot order based on configuration retrieved from QEMU.
-
- Attempt to retrieve the "bootorder" fw_cfg file from QEMU. Translate the
- OpenFirmware device paths therein to UEFI device path fragments. Match the
- translated fragments against BootOptionList, and rewrite the BootOrder NvVar
- so that it corresponds to the order described in fw_cfg.
-
- @param[in] BootOptionList A boot option list, created with
- BdsLibEnumerateAllBootOption ().
-
-
- @retval RETURN_SUCCESS BootOrder NvVar rewritten.
-
- @retval RETURN_UNSUPPORTED QEMU's fw_cfg is not supported.
-
- @retval RETURN_NOT_FOUND Empty or nonexistent "bootorder" fw_cfg
- file, or no match found between the
- "bootorder" fw_cfg file and BootOptionList.
-
- @retval RETURN_INVALID_PARAMETER Parse error in the "bootorder" fw_cfg file.
-
- @retval RETURN_OUT_OF_RESOURCES Memory allocation failed.
-
- @return Values returned by gBS->LocateProtocol ()
- or gRT->SetVariable ().
-
-**/
-RETURN_STATUS
-SetBootOrderFromQemu (
- IN CONST LIST_ENTRY *BootOptionList
- );
diff --git a/OvmfPkg/Library/PlatformBdsLib/QemuBootOrder.c b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.c
index bd0fb76877..2ff6854430 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/Library/QemuBootOrderLib/QemuBootOrderLib.inf b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
new file mode 100644
index 0000000000..12419cda09
--- /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