summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgrehan <grehan@FreeBSD.org>2013-09-21 00:27:53 +0000
committergrehan <grehan@FreeBSD.org>2013-09-21 00:27:53 +0000
commit65054fa1ce9e511de33eca4d8d6f5bcd1c75c058 (patch)
tree16dde6dad740da415164240116155b203e6f5e11
parentd04a7f01449dd0dc39fabc56e90a4580dab41263 (diff)
downloadFreeBSD-src-65054fa1ce9e511de33eca4d8d6f5bcd1c75c058.zip
FreeBSD-src-65054fa1ce9e511de33eca4d8d6f5bcd1c75c058.tar.gz
Reorder/regroup the vmm ioctl api definitions to allow some
semblance of API stability and growth during the 10.* timeframe. Userland/kernel bhyve will have to be recompiled after this. Reviewed by: neel Approved by: re@ (blanket)
-rw-r--r--sys/amd64/include/vmm_dev.h56
1 files changed, 35 insertions, 21 deletions
diff --git a/sys/amd64/include/vmm_dev.h b/sys/amd64/include/vmm_dev.h
index 0729927..c3b47c2 100644
--- a/sys/amd64/include/vmm_dev.h
+++ b/sys/amd64/include/vmm_dev.h
@@ -136,27 +136,41 @@ struct vm_x2apic {
};
enum {
- IOCNUM_RUN,
- IOCNUM_MAP_MEMORY,
- IOCNUM_GET_MEMORY_SEG,
- IOCNUM_SET_REGISTER,
- IOCNUM_GET_REGISTER,
- IOCNUM_SET_SEGMENT_DESCRIPTOR,
- IOCNUM_GET_SEGMENT_DESCRIPTOR,
- IOCNUM_INJECT_EVENT,
- IOCNUM_LAPIC_IRQ,
- IOCNUM_SET_CAPABILITY,
- IOCNUM_GET_CAPABILITY,
- IOCNUM_BIND_PPTDEV,
- IOCNUM_UNBIND_PPTDEV,
- IOCNUM_MAP_PPTDEV_MMIO,
- IOCNUM_PPTDEV_MSI,
- IOCNUM_PPTDEV_MSIX,
- IOCNUM_INJECT_NMI,
- IOCNUM_VM_STATS,
- IOCNUM_VM_STAT_DESC,
- IOCNUM_SET_X2APIC_STATE,
- IOCNUM_GET_X2APIC_STATE,
+ /* general routines */
+ IOCNUM_ABIVERS = 0,
+ IOCNUM_RUN = 1,
+ IOCNUM_SET_CAPABILITY = 2,
+ IOCNUM_GET_CAPABILITY = 3,
+
+ /* memory apis */
+ IOCNUM_MAP_MEMORY = 10,
+ IOCNUM_GET_MEMORY_SEG = 11,
+
+ /* register/state accessors */
+ IOCNUM_SET_REGISTER = 20,
+ IOCNUM_GET_REGISTER = 21,
+ IOCNUM_SET_SEGMENT_DESCRIPTOR = 22,
+ IOCNUM_GET_SEGMENT_DESCRIPTOR = 23,
+
+ /* interrupt injection */
+ IOCNUM_INJECT_EVENT = 30,
+ IOCNUM_LAPIC_IRQ = 31,
+ IOCNUM_INJECT_NMI = 32,
+
+ /* PCI pass-thru */
+ IOCNUM_BIND_PPTDEV = 40,
+ IOCNUM_UNBIND_PPTDEV = 41,
+ IOCNUM_MAP_PPTDEV_MMIO = 42,
+ IOCNUM_PPTDEV_MSI = 43,
+ IOCNUM_PPTDEV_MSIX = 44,
+
+ /* statistics */
+ IOCNUM_VM_STATS = 50,
+ IOCNUM_VM_STAT_DESC = 51,
+
+ /* kernel device state */
+ IOCNUM_SET_X2APIC_STATE = 60,
+ IOCNUM_GET_X2APIC_STATE = 61,
};
#define VM_RUN \
OpenPOWER on IntegriCloud