aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/hvm/vcpu.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-04-17 12:37:35 +0100
committerKeir Fraser <keir.fraser@citrix.com>2008-04-17 12:37:35 +0100
commit29a3d669c7a4d4f504bbaeb911133e20d6971d85 (patch)
tree2eb61cd8d4dbf2efdce08d81d8cfb52d5bc08675 /xen/include/asm-x86/hvm/vcpu.h
parent74a02d2244983e2fb2ade724bddae332d263b04a (diff)
downloadxen-29a3d669c7a4d4f504bbaeb911133e20d6971d85.tar.gz
xen-29a3d669c7a4d4f504bbaeb911133e20d6971d85.tar.bz2
xen-29a3d669c7a4d4f504bbaeb911133e20d6971d85.zip
x86, hvm: Allow emulation of 'multi-cycle' MMIO reads and writes,
which may require multiple round trips to the device model. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/include/asm-x86/hvm/vcpu.h')
-rw-r--r--xen/include/asm-x86/hvm/vcpu.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/xen/include/asm-x86/hvm/vcpu.h b/xen/include/asm-x86/hvm/vcpu.h
index 6ff8de5fc4..fc43d5d20d 100644
--- a/xen/include/asm-x86/hvm/vcpu.h
+++ b/xen/include/asm-x86/hvm/vcpu.h
@@ -83,10 +83,16 @@ struct hvm_vcpu {
*/
unsigned long mmio_gva;
unsigned long mmio_gpfn;
-
+ /* Callback into x86_emulate when emulating FPU/MMX/XMM instructions. */
void (*fpu_exception_callback)(void *, struct cpu_user_regs *);
void *fpu_exception_callback_arg;
+ /* We may read up to m128 as a number of device-model transactions. */
+ paddr_t mmio_large_read_pa;
+ uint8_t mmio_large_read[16];
+ unsigned int mmio_large_read_bytes;
+ /* We may write up to m128 as a number of device-model transactions. */
+ paddr_t mmio_large_write_pa;
+ unsigned int mmio_large_write_bytes;
};
#endif /* __ASM_X86_HVM_VCPU_H__ */
-