aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/hvm
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-02-22 10:52:27 +0000
committerKeir Fraser <keir.fraser@citrix.com>2008-02-22 10:52:27 +0000
commitbfe958468352a53505c0445fbd16a61103a1319e (patch)
treeb048a0fdf62e5ecb9a67b8530f5454feff3fa23c /xen/include/asm-x86/hvm
parent7ef12531b88315fc53883c62c501931505b44a32 (diff)
downloadxen-bfe958468352a53505c0445fbd16a61103a1319e.tar.gz
xen-bfe958468352a53505c0445fbd16a61103a1319e.tar.bz2
xen-bfe958468352a53505c0445fbd16a61103a1319e.zip
x86 hvm: More emulation simplifications.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/include/asm-x86/hvm')
-rw-r--r--xen/include/asm-x86/hvm/io.h56
-rw-r--r--xen/include/asm-x86/hvm/vcpu.h5
2 files changed, 0 insertions, 61 deletions
diff --git a/xen/include/asm-x86/hvm/io.h b/xen/include/asm-x86/hvm/io.h
index 863f460e23..8164742e01 100644
--- a/xen/include/asm-x86/hvm/io.h
+++ b/xen/include/asm-x86/hvm/io.h
@@ -25,61 +25,6 @@
#include <public/hvm/ioreq.h>
#include <public/event_channel.h>
-#define operand_size(operand) \
- ((operand >> 24) & 0xFF)
-
-#define operand_index(operand) \
- ((operand >> 16) & 0xFF)
-
-/* for instruction.operand[].size */
-#define BYTE 1
-#define WORD 2
-#define LONG 4
-#define QUAD 8
-#define BYTE_64 16
-
-/* for instruction.operand[].flag */
-#define REGISTER 0x1
-#define MEMORY 0x2
-#define IMMEDIATE 0x4
-
-/* for instruction.flags */
-#define REPZ 0x1
-#define REPNZ 0x2
-#define OVERLAP 0x4
-
-/* instruction type */
-#define INSTR_PIO 1
-#define INSTR_OR 2
-#define INSTR_AND 3
-#define INSTR_XOR 4
-#define INSTR_CMP 5
-#define INSTR_MOV 6
-#define INSTR_MOVS 7
-#define INSTR_MOVZX 8
-#define INSTR_MOVSX 9
-#define INSTR_STOS 10
-#define INSTR_LODS 11
-#define INSTR_TEST 12
-#define INSTR_BT 13
-#define INSTR_XCHG 14
-#define INSTR_SUB 15
-#define INSTR_ADD 16
-#define INSTR_PUSH 17
-
-#define MAX_INST_LEN 15 /* Maximum instruction length = 15 bytes */
-
-struct hvm_io_op {
- unsigned int instr; /* instruction */
- unsigned int flags;
- unsigned long addr; /* virt addr for overlap PIO/MMIO */
- struct {
- unsigned int operand[2]; /* operands */
- unsigned long immediate; /* immediate portion */
- };
- struct cpu_user_regs io_context; /* current context */
-};
-
#define MAX_IO_HANDLER 12
#define HVM_PORTIO 0
@@ -119,7 +64,6 @@ struct hvm_mmio_handler {
hvm_mmio_write_t write_handler;
};
-/* global io interception point in HV */
int hvm_io_intercept(ioreq_t *p, int type);
int register_io_handler(
struct domain *d, unsigned long addr, unsigned long size,
diff --git a/xen/include/asm-x86/hvm/vcpu.h b/xen/include/asm-x86/hvm/vcpu.h
index 003b7f84b4..7439434b85 100644
--- a/xen/include/asm-x86/hvm/vcpu.h
+++ b/xen/include/asm-x86/hvm/vcpu.h
@@ -42,7 +42,6 @@ struct hvm_vcpu {
*/
unsigned long hw_cr[5];
- struct hvm_io_op io_op;
struct vlapic vlapic;
s64 cache_tsc_offset;
u64 guest_time;
@@ -77,9 +76,5 @@ struct hvm_vcpu {
unsigned long io_data;
};
-#define ARCH_HVM_IO_WAIT 1 /* Waiting for I/O completion */
-
-#define HVM_CONTEXT_STACK_BYTES (offsetof(struct cpu_user_regs, ss))
-
#endif /* __ASM_X86_HVM_VCPU_H__ */