aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/kvm.h
diff options
context:
space:
mode:
authorHollis Blanchard <hollisb@us.ibm.com>2008-04-17 00:28:07 -0400
committerAvi Kivity <avi@qumranet.com>2008-04-27 11:21:37 -0400
commitb2312f059c893833de58876c74290511846cd208 (patch)
tree6164572aeaf0761412af0ce860b031e126cebcba /include/linux/kvm.h
parent4baacfb0de53b05428c87d377fc8a3def4dc10e7 (diff)
KVM: ppc: Add DCR access information to struct kvm_run
Device Control Registers are essentially another address space found on PowerPC 4xx processors, analogous to PIO on x86. DCRs are always 32 bits, and can be identified by a 32-bit number. We forward most DCR accesses to userspace for emulation (with the exception of CPR0 registers, which can be read directly for simplicity in timebase frequency determination). Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'include/linux/kvm.h')
-rw-r--r--include/linux/kvm.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/kvm.h b/include/linux/kvm.h
index f8e211d8ce88..a281afeddfbb 100644
--- a/include/linux/kvm.h
+++ b/include/linux/kvm.h
@@ -82,6 +82,7 @@ struct kvm_irqchip {
82#define KVM_EXIT_TPR_ACCESS 12 82#define KVM_EXIT_TPR_ACCESS 12
83#define KVM_EXIT_S390_SIEIC 13 83#define KVM_EXIT_S390_SIEIC 13
84#define KVM_EXIT_S390_RESET 14 84#define KVM_EXIT_S390_RESET 14
85#define KVM_EXIT_DCR 15
85 86
86/* for KVM_RUN, returned by mmap(vcpu_fd, offset=0) */ 87/* for KVM_RUN, returned by mmap(vcpu_fd, offset=0) */
87struct kvm_run { 88struct kvm_run {
@@ -161,6 +162,12 @@ struct kvm_run {
161#define KVM_S390_RESET_CPU_INIT 8 162#define KVM_S390_RESET_CPU_INIT 8
162#define KVM_S390_RESET_IPL 16 163#define KVM_S390_RESET_IPL 16
163 __u64 s390_reset_flags; 164 __u64 s390_reset_flags;
165 /* KVM_EXIT_DCR */
166 struct {
167 __u32 dcrn;
168 __u32 data;
169 __u8 is_write;
170 } dcr;
164 /* Fix the size of the union. */ 171 /* Fix the size of the union. */
165 char padding[256]; 172 char padding[256];
166 }; 173 };