| .. | .. |
|---|
| 29 | 29 | |
|---|
| 30 | 30 | extern uint32_t xen_start_flags; |
|---|
| 31 | 31 | |
|---|
| 32 | +#include <xen/interface/hvm/start_info.h> |
|---|
| 33 | +extern struct hvm_start_info pvh_start_info; |
|---|
| 34 | + |
|---|
| 32 | 35 | #ifdef CONFIG_XEN_DOM0 |
|---|
| 33 | 36 | #include <xen/interface/xen.h> |
|---|
| 34 | 37 | #include <asm/xen/hypervisor.h> |
|---|
| .. | .. |
|---|
| 39 | 42 | #define xen_initial_domain() (0) |
|---|
| 40 | 43 | #endif /* CONFIG_XEN_DOM0 */ |
|---|
| 41 | 44 | |
|---|
| 45 | +struct bio_vec; |
|---|
| 46 | +struct page; |
|---|
| 47 | + |
|---|
| 48 | +bool xen_biovec_phys_mergeable(const struct bio_vec *vec1, |
|---|
| 49 | + const struct page *page); |
|---|
| 50 | + |
|---|
| 51 | +#if defined(CONFIG_MEMORY_HOTPLUG) && defined(CONFIG_XEN_BALLOON) |
|---|
| 52 | +extern u64 xen_saved_max_mem_size; |
|---|
| 53 | +#endif |
|---|
| 54 | + |
|---|
| 55 | +#ifdef CONFIG_XEN_UNPOPULATED_ALLOC |
|---|
| 56 | +int xen_alloc_unpopulated_pages(unsigned int nr_pages, struct page **pages); |
|---|
| 57 | +void xen_free_unpopulated_pages(unsigned int nr_pages, struct page **pages); |
|---|
| 58 | +#else |
|---|
| 59 | +#define xen_alloc_unpopulated_pages alloc_xenballooned_pages |
|---|
| 60 | +#define xen_free_unpopulated_pages free_xenballooned_pages |
|---|
| 61 | +#include <xen/balloon.h> |
|---|
| 62 | +#endif |
|---|
| 63 | + |
|---|
| 64 | +#if defined(CONFIG_XEN_DOM0) && defined(CONFIG_ACPI) && defined(CONFIG_X86) |
|---|
| 65 | +bool __init xen_processor_present(uint32_t acpi_id); |
|---|
| 66 | +#else |
|---|
| 67 | +#include <linux/bug.h> |
|---|
| 68 | +static inline bool xen_processor_present(uint32_t acpi_id) |
|---|
| 69 | +{ |
|---|
| 70 | + BUG(); |
|---|
| 71 | + return false; |
|---|
| 72 | +} |
|---|
| 73 | +#endif |
|---|
| 74 | + |
|---|
| 42 | 75 | #endif /* _XEN_XEN_H */ |
|---|