OvmfPkg: XenHypercallLib: add empty constructor for ARM & AARCH64

In the next patch we'll add a simple query function to the XenHypercallLib
library class that is supposed to be called by initialization code in
modules. Among those, in constructors of dependent libraries too.

Library construction ordering is ensured only between libraries with
constructors, plus we shouldn't allow a dependent library with a
constructor to call into any XenHypercallLib instances (the simple query
function) before XenHypercallLib is constructed itself. For this reason,
introduce an (empty) constructor for ARM & AARCH64 too.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16999 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Laszlo Ersek 2015-03-03 08:13:19 +00:00 committed by lersek
parent df040c00ae
commit b5d85f6221
2 changed files with 29 additions and 1 deletions

View File

@ -0,0 +1,25 @@
/** @file
Xen Hypercall Library implementation for ARM architecture
Copyright (C) 2015, Red Hat, Inc.
Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available
under the terms and conditions of the BSD License that 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 <Base.h>
RETURN_STATUS
EFIAPI
XenHypercallLibInit (
VOID
)
{
return RETURN_SUCCESS;
}

View File

@ -18,10 +18,10 @@
FILE_GUID = B5EE9A32-CA5A-49A8-82E3-ADA4CCB77C7C
MODULE_TYPE = BASE
VERSION_STRING = 1.0
CONSTRUCTOR = XenHypercallLibInit
[Defines.IA32, Defines.X64]
LIBRARY_CLASS = XenHypercallLib|DXE_DRIVER UEFI_DRIVER
CONSTRUCTOR = XenHypercallLibInit
[Defines.ARM, Defines.AARCH64]
LIBRARY_CLASS = XenHypercallLib
@ -41,6 +41,9 @@
[Sources.X64]
X64/hypercall.nasm
[Sources.ARM, Sources.AARCH64]
ArmXenHypercall.c
[Sources.ARM]
Arm/Hypercall.S