From b94c3ac93d57cf2711814932bf082b2ce496eb82 Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel <ard.biesheuvel@linaro.org> Date: Sat, 28 Feb 2015 20:33:22 +0000 Subject: Ovmf/Xen: implement XenHypercallLib for ARM This patch adds an implementation of XenHypercallLib for both AArch64 and AArch32 execution modes on ARM systems. Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16974 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Library/XenHypercallLib/Aarch64/Hypercall.S | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 OvmfPkg/Library/XenHypercallLib/Aarch64/Hypercall.S (limited to 'OvmfPkg/Library/XenHypercallLib/Aarch64') diff --git a/OvmfPkg/Library/XenHypercallLib/Aarch64/Hypercall.S b/OvmfPkg/Library/XenHypercallLib/Aarch64/Hypercall.S new file mode 100644 index 0000000000..b1b5d4cc3f --- /dev/null +++ b/OvmfPkg/Library/XenHypercallLib/Aarch64/Hypercall.S @@ -0,0 +1,26 @@ + +/** @file + AArch64 implementation of XenHypercall2 + + Copyright (C) 2014, Linaro Ltd. + + 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 <IndustryStandard/Xen/arch-arm/xen.h> + + .text + .global ASM_PFX(XenHypercall2) +ASM_PFX(XenHypercall2): + mov x16, x0 + mov x0, x1 + mov x1, x2 + hvc #XEN_HYPERCALL_TAG + ret -- cgit v1.2.3