Commit | Line | Data |
---|---|---|
3f0852e0 AK |
1 | #ifndef __KVM_COALESCED_MMIO_H__ |
2 | #define __KVM_COALESCED_MMIO_H__ | |
3 | ||
5f94c174 LV |
4 | /* |
5 | * KVM coalesced MMIO | |
6 | * | |
7 | * Copyright (c) 2008 Bull S.A.S. | |
8 | * | |
9 | * Author: Laurent Vivier <Laurent.Vivier@bull.net> | |
10 | * | |
11 | */ | |
12 | ||
980da6ce AK |
13 | #ifdef CONFIG_KVM_MMIO |
14 | ||
2b3c246a | 15 | #include <linux/list.h> |
5f94c174 LV |
16 | |
17 | struct kvm_coalesced_mmio_dev { | |
2b3c246a | 18 | struct list_head list; |
5f94c174 LV |
19 | struct kvm_io_device dev; |
20 | struct kvm *kvm; | |
2b3c246a | 21 | struct kvm_coalesced_mmio_zone zone; |
5f94c174 LV |
22 | }; |
23 | ||
24 | int kvm_coalesced_mmio_init(struct kvm *kvm); | |
980da6ce | 25 | void kvm_coalesced_mmio_free(struct kvm *kvm); |
5f94c174 | 26 | int kvm_vm_ioctl_register_coalesced_mmio(struct kvm *kvm, |
81523aac | 27 | struct kvm_coalesced_mmio_zone *zone); |
5f94c174 | 28 | int kvm_vm_ioctl_unregister_coalesced_mmio(struct kvm *kvm, |
81523aac | 29 | struct kvm_coalesced_mmio_zone *zone); |
3f0852e0 | 30 | |
980da6ce AK |
31 | #else |
32 | ||
33 | static inline int kvm_coalesced_mmio_init(struct kvm *kvm) { return 0; } | |
34 | static inline void kvm_coalesced_mmio_free(struct kvm *kvm) { } | |
35 | ||
36 | #endif | |
37 | ||
3f0852e0 | 38 | #endif |