summaryrefslogtreecommitdiffstats
path: root/sys/amd64
diff options
context:
space:
mode:
authortychon <tychon@FreeBSD.org>2014-06-10 18:46:00 +0000
committertychon <tychon@FreeBSD.org>2014-06-10 18:46:00 +0000
commite250a91c1da4cfd9eb0dab8e0aac2bc6fc7a8176 (patch)
tree0798bc96f7aeb67bf03422cad54350a9e14d00ab /sys/amd64
parentef4a53af9d0e827750d732318f73b502b1ac8112 (diff)
downloadFreeBSD-src-e250a91c1da4cfd9eb0dab8e0aac2bc6fc7a8176.zip
FreeBSD-src-e250a91c1da4cfd9eb0dab8e0aac2bc6fc7a8176.tar.gz
Replace enum forward declarations with complete definitions.
Reviewed by: neel
Diffstat (limited to 'sys/amd64')
-rw-r--r--sys/amd64/include/vmm.h97
1 files changed, 47 insertions, 50 deletions
diff --git a/sys/amd64/include/vmm.h b/sys/amd64/include/vmm.h
index 86f696d..5a359e9 100644
--- a/sys/amd64/include/vmm.h
+++ b/sys/amd64/include/vmm.h
@@ -37,6 +37,53 @@ enum vm_suspend_how {
VM_SUSPEND_LAST
};
+/*
+ * Identifiers for architecturally defined registers.
+ */
+enum vm_reg_name {
+ VM_REG_GUEST_RAX,
+ VM_REG_GUEST_RBX,
+ VM_REG_GUEST_RCX,
+ VM_REG_GUEST_RDX,
+ VM_REG_GUEST_RSI,
+ VM_REG_GUEST_RDI,
+ VM_REG_GUEST_RBP,
+ VM_REG_GUEST_R8,
+ VM_REG_GUEST_R9,
+ VM_REG_GUEST_R10,
+ VM_REG_GUEST_R11,
+ VM_REG_GUEST_R12,
+ VM_REG_GUEST_R13,
+ VM_REG_GUEST_R14,
+ VM_REG_GUEST_R15,
+ VM_REG_GUEST_CR0,
+ VM_REG_GUEST_CR3,
+ VM_REG_GUEST_CR4,
+ VM_REG_GUEST_DR7,
+ VM_REG_GUEST_RSP,
+ VM_REG_GUEST_RIP,
+ VM_REG_GUEST_RFLAGS,
+ VM_REG_GUEST_ES,
+ VM_REG_GUEST_CS,
+ VM_REG_GUEST_SS,
+ VM_REG_GUEST_DS,
+ VM_REG_GUEST_FS,
+ VM_REG_GUEST_GS,
+ VM_REG_GUEST_LDTR,
+ VM_REG_GUEST_TR,
+ VM_REG_GUEST_IDTR,
+ VM_REG_GUEST_GDTR,
+ VM_REG_GUEST_EFER,
+ VM_REG_GUEST_CR2,
+ VM_REG_LAST
+};
+
+enum x2apic_state {
+ X2APIC_DISABLED,
+ X2APIC_ENABLED,
+ X2APIC_STATE_LAST
+};
+
#ifdef _KERNEL
#define VM_MAX_NAMELEN 32
@@ -54,9 +101,6 @@ struct vmspace;
struct vm_object;
struct pmap;
-enum vm_reg_name;
-enum x2apic_state;
-
typedef int (*vmm_init_func_t)(int ipinum);
typedef int (*vmm_cleanup_func_t)(void);
typedef void (*vmm_resume_func_t)(void);
@@ -250,47 +294,6 @@ enum vm_reg_name vm_segment_name(int seg_encoding);
#define VM_MAXCPU 16 /* maximum virtual cpus */
/*
- * Identifiers for architecturally defined registers.
- */
-enum vm_reg_name {
- VM_REG_GUEST_RAX,
- VM_REG_GUEST_RBX,
- VM_REG_GUEST_RCX,
- VM_REG_GUEST_RDX,
- VM_REG_GUEST_RSI,
- VM_REG_GUEST_RDI,
- VM_REG_GUEST_RBP,
- VM_REG_GUEST_R8,
- VM_REG_GUEST_R9,
- VM_REG_GUEST_R10,
- VM_REG_GUEST_R11,
- VM_REG_GUEST_R12,
- VM_REG_GUEST_R13,
- VM_REG_GUEST_R14,
- VM_REG_GUEST_R15,
- VM_REG_GUEST_CR0,
- VM_REG_GUEST_CR3,
- VM_REG_GUEST_CR4,
- VM_REG_GUEST_DR7,
- VM_REG_GUEST_RSP,
- VM_REG_GUEST_RIP,
- VM_REG_GUEST_RFLAGS,
- VM_REG_GUEST_ES,
- VM_REG_GUEST_CS,
- VM_REG_GUEST_SS,
- VM_REG_GUEST_DS,
- VM_REG_GUEST_FS,
- VM_REG_GUEST_GS,
- VM_REG_GUEST_LDTR,
- VM_REG_GUEST_TR,
- VM_REG_GUEST_IDTR,
- VM_REG_GUEST_GDTR,
- VM_REG_GUEST_EFER,
- VM_REG_GUEST_CR2,
- VM_REG_LAST
-};
-
-/*
* Identifiers for optional vmm capabilities
*/
enum vm_cap_type {
@@ -302,12 +305,6 @@ enum vm_cap_type {
VM_CAP_MAX
};
-enum x2apic_state {
- X2APIC_DISABLED,
- X2APIC_ENABLED,
- X2APIC_STATE_LAST
-};
-
enum vm_intr_trigger {
EDGE_TRIGGER,
LEVEL_TRIGGER
OpenPOWER on IntegriCloud