aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@citrix.com>2012-02-15 12:24:19 +0000
committerIan Campbell <ian.campbell@citrix.com>2012-02-15 12:24:19 +0000
commit7cfc339cbc2f36b603c32478a769456f3660e061 (patch)
tree8f3b89355d728f74847191cf00f929aff30db77d
parenta164ab5bdacb448eafa96faa751b447045297c02 (diff)
downloadxen-7cfc339cbc2f36b603c32478a769456f3660e061.tar.gz
xen-7cfc339cbc2f36b603c32478a769456f3660e061.tar.bz2
xen-7cfc339cbc2f36b603c32478a769456f3660e061.zip
arm: Implement arch_get_xen_caps
TBD: correct arch name for this string. Should be "xen-" / "hvm-" or something else given the hybrid model we are using on ARM? Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
-rw-r--r--xen/arch/arm/dummy.S1
-rw-r--r--xen/arch/arm/mm.c1
-rw-r--r--xen/arch/arm/setup.c12
3 files changed, 13 insertions, 1 deletions
diff --git a/xen/arch/arm/dummy.S b/xen/arch/arm/dummy.S
index da0b906a60..5010619938 100644
--- a/xen/arch/arm/dummy.S
+++ b/xen/arch/arm/dummy.S
@@ -9,7 +9,6 @@ x: mov pc, lr
DUMMY(alloc_pirq_struct);
DUMMY(alloc_vcpu_guest_context);
DUMMY(arch_get_info_guest);
-DUMMY(arch_get_xen_caps);
DUMMY(arch_set_info_guest);
DUMMY(arch_vcpu_reset);
DUMMY(create_grant_host_mapping);
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 2c905eda1d..0cff7262db 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -24,6 +24,7 @@
#include <xen/init.h>
#include <xen/mm.h>
#include <xen/preempt.h>
+#include <xen/errno.h>
#include <asm/page.h>
#include <asm/current.h>
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index ddc2392a4a..7762166b55 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -271,6 +271,18 @@ void __init start_xen(unsigned long boot_phys_offset,
reset_stack_and_jump(init_done);
}
+void arch_get_xen_caps(xen_capabilities_info_t *info)
+{
+ /* Interface name is always xen-3.0-* for Xen-3.x. */
+ int major = 3, minor = 0;
+ char s[32];
+
+ (*info)[0] = '\0';
+
+ snprintf(s, sizeof(s), "xen-%d.%d-armv7l ", major, minor);
+ safe_strcat(*info, s);
+}
+
/*
* Local variables:
* mode: C