1 #ifndef INCLUDE_XEN_OPS_H
2 #define INCLUDE_XEN_OPS_H
4 #include <linux/percpu.h>
5 #include <linux/notifier.h>
6 #include <asm/xen/interface.h>
8 DECLARE_PER_CPU(struct vcpu_info
*, xen_vcpu
);
10 void xen_arch_pre_suspend(void);
11 void xen_arch_post_suspend(int suspend_cancelled
);
12 void xen_arch_hvm_post_suspend(int suspend_cancelled
);
14 void xen_mm_pin_all(void);
15 void xen_mm_unpin_all(void);
17 void xen_timer_resume(void);
18 void xen_arch_resume(void);
20 void xen_resume_notifier_register(struct notifier_block
*nb
);
21 void xen_resume_notifier_unregister(struct notifier_block
*nb
);
23 int xen_setup_shutdown_event(void);
25 extern unsigned long *xen_contiguous_bitmap
;
26 int xen_create_contiguous_region(phys_addr_t pstart
, unsigned int order
,
27 unsigned int address_bits
,
28 dma_addr_t
*dma_handle
);
30 void xen_destroy_contiguous_region(phys_addr_t pstart
, unsigned int order
);
32 struct vm_area_struct
;
33 int xen_remap_domain_mfn_range(struct vm_area_struct
*vma
,
35 xen_pfn_t mfn
, int nr
,
36 pgprot_t prot
, unsigned domid
,
38 int xen_unmap_domain_mfn_range(struct vm_area_struct
*vma
,
39 int numpgs
, struct page
**pages
);
41 bool xen_running_on_version_or_later(unsigned int major
, unsigned int minor
);
42 #endif /* INCLUDE_XEN_OPS_H */