Changeset View
Changeset View
Standalone View
Standalone View
sys/amd64/vmm/vmm_dev.c
| Show First 20 Lines • Show All 429 Lines • ▼ Show 20 Lines | case VM_RESTART_INSTRUCTION: | ||||
| vcpu = *(int *)data; | vcpu = *(int *)data; | ||||
| error = vcpu_lock_one(sc, vcpu); | error = vcpu_lock_one(sc, vcpu); | ||||
| if (error) | if (error) | ||||
| goto done; | goto done; | ||||
| state_changed = 1; | state_changed = 1; | ||||
| break; | break; | ||||
| case VM_MAP_PPTDEV_MMIO: | case VM_MAP_PPTDEV_MMIO: | ||||
| case VM_UNMAP_PPTDEV_MMIO: | |||||
| case VM_BIND_PPTDEV: | case VM_BIND_PPTDEV: | ||||
| case VM_UNBIND_PPTDEV: | case VM_UNBIND_PPTDEV: | ||||
| #ifdef COMPAT_FREEBSD12 | #ifdef COMPAT_FREEBSD12 | ||||
| case VM_ALLOC_MEMSEG_FBSD12: | case VM_ALLOC_MEMSEG_FBSD12: | ||||
| #endif | #endif | ||||
| case VM_ALLOC_MEMSEG: | case VM_ALLOC_MEMSEG: | ||||
| case VM_MMAP_MEMSEG: | case VM_MMAP_MEMSEG: | ||||
| case VM_REINIT: | case VM_REINIT: | ||||
| ▲ Show 20 Lines • Show All 68 Lines • ▼ Show 20 Lines | error = ppt_setup_msix(sc->vm, pptmsix->vcpu, | ||||
| pptmsix->addr, pptmsix->msg, | pptmsix->addr, pptmsix->msg, | ||||
| pptmsix->vector_control); | pptmsix->vector_control); | ||||
| break; | break; | ||||
| case VM_MAP_PPTDEV_MMIO: | case VM_MAP_PPTDEV_MMIO: | ||||
| pptmmio = (struct vm_pptdev_mmio *)data; | pptmmio = (struct vm_pptdev_mmio *)data; | ||||
| error = ppt_map_mmio(sc->vm, pptmmio->bus, pptmmio->slot, | error = ppt_map_mmio(sc->vm, pptmmio->bus, pptmmio->slot, | ||||
| pptmmio->func, pptmmio->gpa, pptmmio->len, | pptmmio->func, pptmmio->gpa, pptmmio->len, | ||||
| pptmmio->hpa); | pptmmio->hpa); | ||||
| break; | |||||
| case VM_UNMAP_PPTDEV_MMIO: | |||||
| pptmmio = (struct vm_pptdev_mmio *)data; | |||||
| error = ppt_unmap_mmio(sc->vm, pptmmio->bus, pptmmio->slot, | |||||
| pptmmio->func, pptmmio->gpa, pptmmio->len); | |||||
| break; | break; | ||||
| case VM_BIND_PPTDEV: | case VM_BIND_PPTDEV: | ||||
| pptdev = (struct vm_pptdev *)data; | pptdev = (struct vm_pptdev *)data; | ||||
| error = vm_assign_pptdev(sc->vm, pptdev->bus, pptdev->slot, | error = vm_assign_pptdev(sc->vm, pptdev->bus, pptdev->slot, | ||||
| pptdev->func); | pptdev->func); | ||||
| break; | break; | ||||
| case VM_UNBIND_PPTDEV: | case VM_UNBIND_PPTDEV: | ||||
| pptdev = (struct vm_pptdev *)data; | pptdev = (struct vm_pptdev *)data; | ||||
| ▲ Show 20 Lines • Show All 709 Lines • Show Last 20 Lines | |||||