aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/kvm.h
diff options
context:
space:
mode:
authorEddie Dong <eddie.dong@intel.com>2007-07-06 05:20:49 -0400
committerAvi Kivity <avi@qumranet.com>2007-10-13 04:18:24 -0400
commit85f455f7ddbed403b34b4d54b1eaf0e14126a126 (patch)
tree1dba7aa8fee3c8f756e12049c496dee5baae752c /include/linux/kvm.h
parent152d3f2f246ce3c2a0cf2fc6c2214663cd99aa83 (diff)
KVM: Add support for in-kernel PIC emulation
Signed-off-by: Yaozu (Eddie) Dong <eddie.dong@intel.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'include/linux/kvm.h')
-rw-r--r--include/linux/kvm.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/kvm.h b/include/linux/kvm.h
index 1d5a49cdda3b..bfe742b771f6 100644
--- a/include/linux/kvm.h
+++ b/include/linux/kvm.h
@@ -34,6 +34,17 @@ struct kvm_memory_alias {
34 __u64 target_phys_addr; 34 __u64 target_phys_addr;
35}; 35};
36 36
37/* for KVM_SET_IRQ_LEVEL */
38struct kvm_irq_level {
39 /*
40 * ACPI gsi notion of irq.
41 * For IA-64 (APIC model) IOAPIC0: irq 0-23; IOAPIC1: irq 24-47..
42 * For X86 (standard AT mode) PIC0/1: irq 0-15. IOAPIC0: 0-23..
43 */
44 __u32 irq;
45 __u32 level;
46};
47
37enum kvm_exit_reason { 48enum kvm_exit_reason {
38 KVM_EXIT_UNKNOWN = 0, 49 KVM_EXIT_UNKNOWN = 0,
39 KVM_EXIT_EXCEPTION = 1, 50 KVM_EXIT_EXCEPTION = 1,
@@ -269,6 +280,11 @@ struct kvm_signal_mask {
269#define KVM_GET_VCPU_MMAP_SIZE _IO(KVMIO, 0x04) /* in bytes */ 280#define KVM_GET_VCPU_MMAP_SIZE _IO(KVMIO, 0x04) /* in bytes */
270 281
271/* 282/*
283 * Extension capability list.
284 */
285#define KVM_CAP_IRQCHIP 0
286
287/*
272 * ioctls for VM fds 288 * ioctls for VM fds
273 */ 289 */
274#define KVM_SET_MEMORY_REGION _IOW(KVMIO, 0x40, struct kvm_memory_region) 290#define KVM_SET_MEMORY_REGION _IOW(KVMIO, 0x40, struct kvm_memory_region)
@@ -279,6 +295,9 @@ struct kvm_signal_mask {
279#define KVM_CREATE_VCPU _IO(KVMIO, 0x41) 295#define KVM_CREATE_VCPU _IO(KVMIO, 0x41)
280#define KVM_GET_DIRTY_LOG _IOW(KVMIO, 0x42, struct kvm_dirty_log) 296#define KVM_GET_DIRTY_LOG _IOW(KVMIO, 0x42, struct kvm_dirty_log)
281#define KVM_SET_MEMORY_ALIAS _IOW(KVMIO, 0x43, struct kvm_memory_alias) 297#define KVM_SET_MEMORY_ALIAS _IOW(KVMIO, 0x43, struct kvm_memory_alias)
298/* Device model IOC */
299#define KVM_CREATE_IRQCHIP _IO(KVMIO, 0x60)
300#define KVM_IRQ_LINE _IO(KVMIO, 0x61)
282 301
283/* 302/*
284 * ioctls for vcpu fds 303 * ioctls for vcpu fds