Add DOM0_DOMAIN_SETUP hypercall.
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Mon, 19 Jun 2006 15:39:27 +0000 (16:39 +0100)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Mon, 19 Jun 2006 15:39:27 +0000 (16:39 +0100)
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
[I fiddled with the flags prefix after all. :-)
Signed-off-by: Keir Fraser <keir@xensource.com>]
xen/include/public/dom0_ops.h

index bf941a4147b6c91e0bad4e82e439fcdd78855eea..07affaa6997a42f1a7ee9dbbe0945b0f02296439 100644 (file)
@@ -514,6 +514,19 @@ struct dom0_hypercall_init {
 typedef struct dom0_hypercall_init dom0_hypercall_init_t;
 DEFINE_XEN_GUEST_HANDLE(dom0_hypercall_init_t);
 
+#define DOM0_DOMAIN_SETUP     49
+#define _XEN_DOMAINSETUP_hvm_guest 0
+#define XEN_DOMAINSETUP_hvm_guest  (1UL<<_XEN_DOMAINSETUP_hvm_guest)
+typedef struct dom0_domain_setup {
+    domid_t  domain;          /* domain to be affected */
+    unsigned long flags;      /* XEN_DOMAINSETUP_* */
+#ifdef __ia64__
+    unsigned long bp;         /* mpaddr of boot param area */
+    unsigned long maxmem;        /* Highest memory address for MDT.  */
+#endif
+} dom0_domain_setup_t;
+DEFINE_XEN_GUEST_HANDLE(dom0_domain_setup_t);
+
 struct dom0_op {
     uint32_t cmd;
     uint32_t interface_version; /* DOM0_INTERFACE_VERSION */
@@ -555,6 +568,7 @@ struct dom0_op {
         struct dom0_irq_permission    irq_permission;
         struct dom0_iomem_permission  iomem_permission;
         struct dom0_hypercall_init    hypercall_init;
+        struct dom0_domain_setup      domain_setup;
         uint8_t                       pad[128];
     } u;
 };