diff options
author | Eddie Dong <eddie.dong@intel.com> | 2007-07-06 05:20:49 -0400 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2007-10-13 04:18:24 -0400 |
commit | 85f455f7ddbed403b34b4d54b1eaf0e14126a126 (patch) | |
tree | 1dba7aa8fee3c8f756e12049c496dee5baae752c /include | |
parent | 152d3f2f246ce3c2a0cf2fc6c2214663cd99aa83 (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')
-rw-r--r-- | include/linux/kvm.h | 19 |
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 */ | ||
38 | struct 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 | |||
37 | enum kvm_exit_reason { | 48 | enum 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 |