Merge tag 'upstream-3.17-rc1' of git://git.infradead.org/linux-ubifs
[sfrench/cifs-2.6.git] / include / xen / xen-ops.h
1 #ifndef INCLUDE_XEN_OPS_H
2 #define INCLUDE_XEN_OPS_H
3
4 #include <linux/percpu.h>
5 #include <linux/notifier.h>
6 #include <linux/efi.h>
7 #include <asm/xen/interface.h>
8
9 DECLARE_PER_CPU(struct vcpu_info *, xen_vcpu);
10
11 void xen_arch_pre_suspend(void);
12 void xen_arch_post_suspend(int suspend_cancelled);
13
14 void xen_timer_resume(void);
15 void xen_arch_resume(void);
16
17 void xen_resume_notifier_register(struct notifier_block *nb);
18 void xen_resume_notifier_unregister(struct notifier_block *nb);
19
20 int xen_setup_shutdown_event(void);
21
22 extern unsigned long *xen_contiguous_bitmap;
23 int xen_create_contiguous_region(phys_addr_t pstart, unsigned int order,
24                                 unsigned int address_bits,
25                                 dma_addr_t *dma_handle);
26
27 void xen_destroy_contiguous_region(phys_addr_t pstart, unsigned int order);
28
29 struct vm_area_struct;
30 int xen_remap_domain_mfn_range(struct vm_area_struct *vma,
31                                unsigned long addr,
32                                xen_pfn_t mfn, int nr,
33                                pgprot_t prot, unsigned domid,
34                                struct page **pages);
35 int xen_unmap_domain_mfn_range(struct vm_area_struct *vma,
36                                int numpgs, struct page **pages);
37
38 bool xen_running_on_version_or_later(unsigned int major, unsigned int minor);
39
40 #ifdef CONFIG_XEN_EFI
41 extern efi_system_table_t *xen_efi_probe(void);
42 #else
43 static inline efi_system_table_t __init *xen_efi_probe(void)
44 {
45         return NULL;
46 }
47 #endif
48
49 #endif /* INCLUDE_XEN_OPS_H */