diff --git a/sys/amd64/vmm/io/ppt.h b/sys/amd64/vmm/io/ppt.h --- a/sys/amd64/vmm/io/ppt.h +++ b/sys/amd64/vmm/io/ppt.h @@ -36,9 +36,9 @@ vm_paddr_t gpa, size_t len, vm_paddr_t hpa); int ppt_unmap_mmio(struct vm *vm, int bus, int slot, int func, vm_paddr_t gpa, size_t len); -int ppt_setup_msi(struct vm *vm, int vcpu, int bus, int slot, int func, +int ppt_setup_msi(struct vm *vm, int bus, int slot, int func, uint64_t addr, uint64_t msg, int numvec); -int ppt_setup_msix(struct vm *vm, int vcpu, int bus, int slot, int func, +int ppt_setup_msix(struct vm *vm, int bus, int slot, int func, int idx, uint64_t addr, uint64_t msg, uint32_t vector_control); int ppt_disable_msix(struct vm *vm, int bus, int slot, int func); int ppt_assigned_devices(struct vm *vm); diff --git a/sys/amd64/vmm/io/ppt.c b/sys/amd64/vmm/io/ppt.c --- a/sys/amd64/vmm/io/ppt.c +++ b/sys/amd64/vmm/io/ppt.c @@ -544,7 +544,7 @@ } int -ppt_setup_msi(struct vm *vm, int vcpu, int bus, int slot, int func, +ppt_setup_msi(struct vm *vm, int bus, int slot, int func, uint64_t addr, uint64_t msg, int numvec) { int i, rid, flags; @@ -637,7 +637,7 @@ } int -ppt_setup_msix(struct vm *vm, int vcpu, int bus, int slot, int func, +ppt_setup_msix(struct vm *vm, int bus, int slot, int func, int idx, uint64_t addr, uint64_t msg, uint32_t vector_control) { struct pptdev *ppt; diff --git a/sys/amd64/vmm/vmm_dev.c b/sys/amd64/vmm/vmm_dev.c --- a/sys/amd64/vmm/vmm_dev.c +++ b/sys/amd64/vmm/vmm_dev.c @@ -540,14 +540,14 @@ } case VM_PPTDEV_MSI: pptmsi = (struct vm_pptdev_msi *)data; - error = ppt_setup_msi(sc->vm, pptmsi->vcpu, + error = ppt_setup_msi(sc->vm, pptmsi->bus, pptmsi->slot, pptmsi->func, pptmsi->addr, pptmsi->msg, pptmsi->numvec); break; case VM_PPTDEV_MSIX: pptmsix = (struct vm_pptdev_msix *)data; - error = ppt_setup_msix(sc->vm, pptmsix->vcpu, + error = ppt_setup_msix(sc->vm, pptmsix->bus, pptmsix->slot, pptmsix->func, pptmsix->idx, pptmsix->addr, pptmsix->msg,