aboutsummaryrefslogtreecommitdiff
path: root/include/xen/xen-ops.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/xen/xen-ops.h')
-rw-r--r--include/xen/xen-ops.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/include/xen/xen-ops.h b/include/xen/xen-ops.h
new file mode 100644
index 00000000000..0b3149ed7ea
--- /dev/null
+++ b/include/xen/xen-ops.h
@@ -0,0 +1,38 @@
+#ifndef INCLUDE_XEN_OPS_H
+#define INCLUDE_XEN_OPS_H
+
+#include <linux/percpu.h>
+#include <linux/notifier.h>
+#include <asm/xen/interface.h>
+
+DECLARE_PER_CPU(struct vcpu_info *, xen_vcpu);
+
+void xen_arch_pre_suspend(void);
+void xen_arch_post_suspend(int suspend_cancelled);
+
+void xen_timer_resume(void);
+void xen_arch_resume(void);
+
+void xen_resume_notifier_register(struct notifier_block *nb);
+void xen_resume_notifier_unregister(struct notifier_block *nb);
+
+int xen_setup_shutdown_event(void);
+
+extern unsigned long *xen_contiguous_bitmap;
+int xen_create_contiguous_region(phys_addr_t pstart, unsigned int order,
+ unsigned int address_bits,
+ dma_addr_t *dma_handle);
+
+void xen_destroy_contiguous_region(phys_addr_t pstart, unsigned int order);
+
+struct vm_area_struct;
+int xen_remap_domain_mfn_range(struct vm_area_struct *vma,
+ unsigned long addr,
+ xen_pfn_t mfn, int nr,
+ pgprot_t prot, unsigned domid,
+ struct page **pages);
+int xen_unmap_domain_mfn_range(struct vm_area_struct *vma,
+ int numpgs, struct page **pages);
+
+bool xen_running_on_version_or_later(unsigned int major, unsigned int minor);
+#endif /* INCLUDE_XEN_OPS_H */