Deleted Added
full compact
vmm_dev.h (256072) vmm_dev.h (258075)
1/*-
2 * Copyright (c) 2011 NetApp, Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (c) 2011 NetApp, Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: head/sys/amd64/include/vmm_dev.h 256072 2013-10-05 21:22:35Z neel $
26 * $FreeBSD: head/sys/amd64/include/vmm_dev.h 258075 2013-11-12 22:51:03Z neel $
27 */
28
29#ifndef _VMM_DEV_H_
30#define _VMM_DEV_H_
31
32#ifdef _KERNEL
33void vmmdev_init(void);
34int vmmdev_cleanup(void);

--- 31 unchanged lines hidden (view full) ---

66 int error_code_valid;
67};
68
69struct vm_lapic_irq {
70 int cpuid;
71 int vector;
72};
73
27 */
28
29#ifndef _VMM_DEV_H_
30#define _VMM_DEV_H_
31
32#ifdef _KERNEL
33void vmmdev_init(void);
34int vmmdev_cleanup(void);

--- 31 unchanged lines hidden (view full) ---

66 int error_code_valid;
67};
68
69struct vm_lapic_irq {
70 int cpuid;
71 int vector;
72};
73
74struct vm_ioapic_irq {
75 int irq;
76};
77
74struct vm_capability {
75 int cpuid;
76 enum vm_cap_type captype;
77 int capval;
78 int allcpus;
79};
80
81struct vm_pptdev {

--- 77 unchanged lines hidden (view full) ---

159 IOCNUM_GET_REGISTER = 21,
160 IOCNUM_SET_SEGMENT_DESCRIPTOR = 22,
161 IOCNUM_GET_SEGMENT_DESCRIPTOR = 23,
162
163 /* interrupt injection */
164 IOCNUM_INJECT_EVENT = 30,
165 IOCNUM_LAPIC_IRQ = 31,
166 IOCNUM_INJECT_NMI = 32,
78struct vm_capability {
79 int cpuid;
80 enum vm_cap_type captype;
81 int capval;
82 int allcpus;
83};
84
85struct vm_pptdev {

--- 77 unchanged lines hidden (view full) ---

163 IOCNUM_GET_REGISTER = 21,
164 IOCNUM_SET_SEGMENT_DESCRIPTOR = 22,
165 IOCNUM_GET_SEGMENT_DESCRIPTOR = 23,
166
167 /* interrupt injection */
168 IOCNUM_INJECT_EVENT = 30,
169 IOCNUM_LAPIC_IRQ = 31,
170 IOCNUM_INJECT_NMI = 32,
171 IOCNUM_IOAPIC_ASSERT_IRQ = 33,
172 IOCNUM_IOAPIC_DEASSERT_IRQ = 34,
167
168 /* PCI pass-thru */
169 IOCNUM_BIND_PPTDEV = 40,
170 IOCNUM_UNBIND_PPTDEV = 41,
171 IOCNUM_MAP_PPTDEV_MMIO = 42,
172 IOCNUM_PPTDEV_MSI = 43,
173 IOCNUM_PPTDEV_MSIX = 44,
174

--- 19 unchanged lines hidden (view full) ---

194#define VM_SET_SEGMENT_DESCRIPTOR \
195 _IOW('v', IOCNUM_SET_SEGMENT_DESCRIPTOR, struct vm_seg_desc)
196#define VM_GET_SEGMENT_DESCRIPTOR \
197 _IOWR('v', IOCNUM_GET_SEGMENT_DESCRIPTOR, struct vm_seg_desc)
198#define VM_INJECT_EVENT \
199 _IOW('v', IOCNUM_INJECT_EVENT, struct vm_event)
200#define VM_LAPIC_IRQ \
201 _IOW('v', IOCNUM_LAPIC_IRQ, struct vm_lapic_irq)
173
174 /* PCI pass-thru */
175 IOCNUM_BIND_PPTDEV = 40,
176 IOCNUM_UNBIND_PPTDEV = 41,
177 IOCNUM_MAP_PPTDEV_MMIO = 42,
178 IOCNUM_PPTDEV_MSI = 43,
179 IOCNUM_PPTDEV_MSIX = 44,
180

--- 19 unchanged lines hidden (view full) ---

200#define VM_SET_SEGMENT_DESCRIPTOR \
201 _IOW('v', IOCNUM_SET_SEGMENT_DESCRIPTOR, struct vm_seg_desc)
202#define VM_GET_SEGMENT_DESCRIPTOR \
203 _IOWR('v', IOCNUM_GET_SEGMENT_DESCRIPTOR, struct vm_seg_desc)
204#define VM_INJECT_EVENT \
205 _IOW('v', IOCNUM_INJECT_EVENT, struct vm_event)
206#define VM_LAPIC_IRQ \
207 _IOW('v', IOCNUM_LAPIC_IRQ, struct vm_lapic_irq)
208#define VM_IOAPIC_ASSERT_IRQ \
209 _IOW('v', IOCNUM_IOAPIC_ASSERT_IRQ, struct vm_ioapic_irq)
210#define VM_IOAPIC_DEASSERT_IRQ \
211 _IOW('v', IOCNUM_IOAPIC_DEASSERT_IRQ, struct vm_ioapic_irq)
202#define VM_SET_CAPABILITY \
203 _IOW('v', IOCNUM_SET_CAPABILITY, struct vm_capability)
204#define VM_GET_CAPABILITY \
205 _IOWR('v', IOCNUM_GET_CAPABILITY, struct vm_capability)
206#define VM_BIND_PPTDEV \
207 _IOW('v', IOCNUM_BIND_PPTDEV, struct vm_pptdev)
208#define VM_UNBIND_PPTDEV \
209 _IOW('v', IOCNUM_UNBIND_PPTDEV, struct vm_pptdev)

--- 19 unchanged lines hidden ---
212#define VM_SET_CAPABILITY \
213 _IOW('v', IOCNUM_SET_CAPABILITY, struct vm_capability)
214#define VM_GET_CAPABILITY \
215 _IOWR('v', IOCNUM_GET_CAPABILITY, struct vm_capability)
216#define VM_BIND_PPTDEV \
217 _IOW('v', IOCNUM_BIND_PPTDEV, struct vm_pptdev)
218#define VM_UNBIND_PPTDEV \
219 _IOW('v', IOCNUM_UNBIND_PPTDEV, struct vm_pptdev)

--- 19 unchanged lines hidden ---