]>
Commit | Line | Data |
---|---|---|
e37630ca | 1 | #ifndef QEMU_HW_XEN_H |
175de524 MA |
2 | #define QEMU_HW_XEN_H |
3 | ||
e37630ca AL |
4 | /* |
5 | * public xen header | |
6 | * stuff needed outside xen-*.c, i.e. interfaces to qemu. | |
7 | * must not depend on any xen headers being present in | |
8 | * /usr/include/xen, so it can be included unconditionally. | |
9 | */ | |
10 | ||
33c11879 | 11 | #include "exec/cpu-common.h" |
41445300 | 12 | |
e37630ca AL |
13 | /* xen-machine.c */ |
14 | enum xen_mode { | |
15 | XEN_EMULATE = 0, // xen emulation, using xenner (default) | |
1077bcac | 16 | XEN_ATTACH // attach to xen domain created by libxl |
e37630ca AL |
17 | }; |
18 | ||
19 | extern uint32_t xen_domid; | |
20 | extern enum xen_mode xen_mode; | |
1c599472 | 21 | extern bool xen_domid_restrict; |
e37630ca | 22 | |
41445300 AP |
23 | int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); |
24 | void xen_piix3_set_irq(void *opaque, int irq_num, int level); | |
25 | void xen_piix_pci_write_config_client(uint32_t address, uint32_t val, int len); | |
f1dbf015 | 26 | void xen_hvm_inject_msi(uint64_t addr, uint32_t data); |
428c3ece | 27 | int xen_is_pirq_msi(uint32_t msi_data); |
41445300 | 28 | |
9c11a8ac AP |
29 | qemu_irq *xen_interrupt_controller_init(void); |
30 | ||
0ec7b3e7 | 31 | void xenstore_store_pv_console_info(int i, struct Chardev *chr); |
29d3ccde | 32 | |
5650ac00 | 33 | void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory); |
33c11879 | 34 | |
c65adf9b AK |
35 | void xen_register_framebuffer(struct MemoryRegion *mr); |
36 | ||
e37630ca | 37 | #endif /* QEMU_HW_XEN_H */ |