]> xenbits.xensource.com Git - xen.git/commitdiff
arm: introduce more hypercalls
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>
Wed, 14 Mar 2012 09:47:05 +0000 (09:47 +0000)
committerStefano Stabellini <stefano.stabellini@eu.citrix.com>
Wed, 14 Mar 2012 09:47:05 +0000 (09:47 +0000)
Implement xen_version, event_channel_op, memory_op sysctl and physdev_op
hypercalls.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
xen/arch/arm/Makefile
xen/arch/arm/physdev.c [new file with mode: 0644]
xen/arch/arm/traps.c
xen/include/asm-arm/hypercall.h

index 946a4ae48dc8d14fb7df24c1ba246bc338ed0bb3..d5afb6ba9e997a9bda8894fde39e1add9842fddc 100644 (file)
@@ -15,6 +15,7 @@ obj-y += mm.o
 obj-y += p2m.o
 obj-y += percpu.o
 obj-y += guestcopy.o
+obj-y += physdev.o
 obj-y += setup.o
 obj-y += time.o
 obj-y += smpboot.o
diff --git a/xen/arch/arm/physdev.c b/xen/arch/arm/physdev.c
new file mode 100644 (file)
index 0000000..bcf4337
--- /dev/null
@@ -0,0 +1,27 @@
+/******************************************************************************
+ * Arch-specific physdev.c
+ *
+ * Copyright (c) 2012, Citrix Systems
+ */
+
+#include <xen/config.h>
+#include <xen/types.h>
+#include <xen/lib.h>
+#include <xen/errno.h>
+#include <asm/hypercall.h>
+
+
+int do_physdev_op(int cmd, XEN_GUEST_HANDLE(void) arg)
+{
+    printk("%s %d cmd=%d: not implemented yet\n", __func__, __LINE__, cmd);
+    return -ENOSYS;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-set-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
index acf8f6e2fc60cbe26aac6245001e8904216e3bc6..6304bbd23ab2fc987bd0f485ef7fcc457ce9331a 100644 (file)
@@ -376,6 +376,11 @@ static arm_hypercall_t *arm_hypercall_table[] = {
     HYPERCALL(arch_0),
     HYPERCALL(sched_op),
     HYPERCALL(console_io),
+    HYPERCALL(xen_version),
+    HYPERCALL(event_channel_op),
+    HYPERCALL(memory_op),
+    HYPERCALL(physdev_op),
+    HYPERCALL(sysctl),
 };
 
 static void do_debug_trap(struct cpu_user_regs *regs, unsigned int code)
index e8405078e129fd313fd99ec3b9cf11191802b009..454f02ef71d90f76fa85f15826cdf22f6878d5bc 100644 (file)
@@ -2,6 +2,7 @@
 #define __ASM_ARM_HYPERCALL_H__
 
 #include <public/domctl.h> /* for arch_do_domctl */
+int do_physdev_op(int cmd, XEN_GUEST_HANDLE(void) arg);
 
 #endif /* __ASM_ARM_HYPERCALL_H__ */
 /*