/qemu/accel/stubs/ |
H A D | kvm-stub.c | 60 void kvm_irqchip_release_virq(KVMState *s, int virq) in kvm_irqchip_release_virq() argument 64 int kvm_irqchip_update_msi_route(KVMState *s, int virq, MSIMessage msg, in kvm_irqchip_update_msi_route() argument 87 EventNotifier *rn, int virq) in kvm_irqchip_add_irqfd_notifier_gsi() argument 93 int virq) in kvm_irqchip_remove_irqfd_notifier_gsi() argument
|
/qemu/target/i386/kvm/ |
H A D | trace-events | 5 kvm_x86_add_msi_route(int virq) "Adding route entry for virq %d" 6 kvm_x86_remove_msi_route(int virq) "Removing route entry for virq %d"
|
H A D | xen-emu.c | 497 int kvm_xen_set_vcpu_virq(uint32_t vcpu_id, uint16_t virq, uint16_t port) in kvm_xen_set_vcpu_virq() argument 508 if (virq >= NR_VIRQS) { in kvm_xen_set_vcpu_virq() 512 if (port && X86_CPU(cs)->env.xen_virq[virq]) { in kvm_xen_set_vcpu_virq() 516 X86_CPU(cs)->env.xen_virq[virq] = port; in kvm_xen_set_vcpu_virq() 517 if (virq == VIRQ_TIMER && kvm_xen_has_cap(EVTCHN_SEND)) { in kvm_xen_set_vcpu_virq() 1283 struct evtchn_bind_virq virq; in kvm_xen_hcall_evtchn_op() local 1285 qemu_build_assert(sizeof(virq) == 12); in kvm_xen_hcall_evtchn_op() 1286 if (kvm_copy_from_gva(cs, arg, &virq, sizeof(virq))) { in kvm_xen_hcall_evtchn_op() 1291 err = xen_evtchn_bind_virq_op(&virq); in kvm_xen_hcall_evtchn_op() 1292 if (!err && kvm_copy_to_gva(cs, arg, &virq, sizeof(virq))) { in kvm_xen_hcall_evtchn_op()
|
H A D | kvm.c | 6326 int virq; /* Virtual IRQ index */ in kvm_update_msi_routes_all() 6358 kvm_irqchip_update_msi_route(kvm_state, entry->virq, msg, dev); in kvm_arch_add_msi_route_post() 6380 entry->virq = route->gsi; in kvm_arch_release_virq_post() 6399 int kvm_arch_release_virq_post(int virq) in kvm_has_waitpkg() 6403 if (entry->virq == virq) { 6404 trace_kvm_x86_remove_msi_route(virq); in kvm_request_xsave_components() 6305 int virq; /* Virtual IRQ index */ global() member 6378 kvm_arch_release_virq_post(int virq) kvm_arch_release_virq_post() argument
|
/qemu/accel/kvm/ |
H A D | trace-events | 17 kvm_irqchip_add_msi_route(char *name, int vector, int virq) "dev %s vector %d virq %d" 18 kvm_irqchip_update_msi_route(int virq) "Updating MSI route virq=%d" 19 kvm_irqchip_release_virq(int virq) "virq %d"
|
H A D | kvm-all.c | 2097 void kvm_irqchip_release_virq(KVMState *s, int virq) in kvm_irqchip_release_virq() 2108 if (e->gsi == virq) { in kvm_irqchip_release_virq() 2113 clear_gsi(s, virq); in kvm_irqchip_release_virq() 2114 kvm_arch_release_virq_post(virq); in kvm_irqchip_release_virq() 2115 trace_kvm_irqchip_release_virq(virq); in kvm_irqchip_release_virq() 2162 int virq; in kvm_irqchip_add_msi_route() 2178 virq = kvm_irqchip_get_virq(s); in kvm_irqchip_add_msi_route() 2179 if (virq < 0) { in kvm_irqchip_add_msi_route() 2180 return virq; in kvm_irqchip_add_msi_route() 2183 kroute.gsi = virq; in kvm_irqchip_add_msi_route() 2096 kvm_irqchip_release_virq(KVMState * s,int virq) kvm_irqchip_release_virq() argument 2161 int virq; kvm_irqchip_add_msi_route() local 2212 kvm_irqchip_update_msi_route(KVMState * s,int virq,MSIMessage msg,PCIDevice * dev) kvm_irqchip_update_msi_route() argument 2245 kvm_irqchip_assign_irqfd(KVMState * s,EventNotifier * event,EventNotifier * resample,int virq,bool assign) kvm_irqchip_assign_irqfd() argument 2296 kvm_irqchip_release_virq(KVMState * s,int virq) kvm_irqchip_release_virq() argument 2321 kvm_irqchip_assign_irqfd(KVMState * s,EventNotifier * event,EventNotifier * resample,int virq,bool assign) kvm_irqchip_assign_irqfd() argument 2327 kvm_irqchip_update_msi_route(KVMState * s,int virq,MSIMessage msg) kvm_irqchip_update_msi_route() argument 2334 kvm_irqchip_add_irqfd_notifier_gsi(KVMState * s,EventNotifier * n,EventNotifier * rn,int virq) kvm_irqchip_add_irqfd_notifier_gsi() argument 2340 kvm_irqchip_remove_irqfd_notifier_gsi(KVMState * s,EventNotifier * n,int virq) kvm_irqchip_remove_irqfd_notifier_gsi() argument [all...] |
/qemu/hw/remote/ |
H A D | proxy.c | 35 if (dev->virq != -1) { in proxy_intx_update() 36 kvm_irqchip_remove_irqfd_notifier_gsi(kvm_state, &dev->intr, dev->virq); in proxy_intx_update() 37 dev->virq = -1; in proxy_intx_update() 42 dev->virq = route.irq; in proxy_intx_update() 44 if (dev->virq != -1) { in proxy_intx_update() 46 &dev->resample, dev->virq); in proxy_intx_update() 70 dev->virq = -1; in setup_irqfd()
|
/qemu/hw/i386/kvm/ |
H A D | xen_evtchn.c | 64 uint16_t virq; member 682 status->u.virq = p->u.virq; in xen_evtchn_status_op() 1035 static bool virq_is_global(uint32_t virq) in virq_is_global() argument 1037 switch (virq) { in virq_is_global() 1069 kvm_xen_set_vcpu_virq(virq_is_global(p->u.virq) ? 0 : p->vcpu, in close_port() 1070 p->u.virq, 0); in close_port() 1224 (p->type == EVTCHNSTAT_virq && virq_is_global(p->u.virq))) { in xen_evtchn_bind_vcpu_op() 1239 int xen_evtchn_bind_virq_op(struct evtchn_bind_virq *virq) in xen_evtchn_bind_virq_op() argument 1248 if (virq->virq >= NR_VIRQS) { in xen_evtchn_bind_virq_op() 1253 if (virq_is_global(virq->virq) && virq->vcpu != 0) { in xen_evtchn_bind_virq_op() [all …]
|
H A D | xen_evtchn.h | 67 int xen_evtchn_bind_virq_op(struct evtchn_bind_virq *virq);
|
/qemu/include/system/ |
H A D | kvm.h | 408 int kvm_arch_release_virq_post(int virq); 494 * @return: virq (>=0) when success, errno (<0) when failed. 497 int kvm_irqchip_update_msi_route(KVMState *s, int virq, MSIMessage msg, 515 void kvm_irqchip_release_virq(KVMState *s, int virq); 521 EventNotifier *rn, int virq); 523 int virq);
|
H A D | kvm_xen.h | 28 int kvm_xen_set_vcpu_virq(uint32_t vcpu_id, uint16_t virq, uint16_t port);
|
/qemu/hw/intc/ |
H A D | s390_flic_kvm.c | 330 int virq; in kvm_irqchip_add_adapter_route() local 336 virq = kvm_irqchip_get_virq(s); in kvm_irqchip_add_adapter_route() 337 if (virq < 0) { in kvm_irqchip_add_adapter_route() 338 return virq; in kvm_irqchip_add_adapter_route() 341 kroute.gsi = virq; in kvm_irqchip_add_adapter_route() 352 return virq; in kvm_irqchip_add_adapter_route()
|
H A D | openpic.c | 1328 int virq = OPENPIC_MAX_SRC; in fsl_common_init() local 1338 opp->irq_ipi0 = virq; in fsl_common_init() 1339 virq += OPENPIC_MAX_IPI; in fsl_common_init() 1340 opp->irq_tim0 = virq; in fsl_common_init() 1341 virq += OPENPIC_MAX_TMR; in fsl_common_init() 1343 assert(virq <= OPENPIC_MAX_IRQ); in fsl_common_init() 1359 for (i = OPENPIC_MAX_SRC; i < virq; i++) { in fsl_common_init()
|
/qemu/include/hw/xen/interface/ |
H A D | event_channel.h | 127 uint32_t virq; /* enum virq */ member 214 uint32_t virq; /* EVTCHNSTAT_virq */ member
|
/qemu/hw/misc/ |
H A D | ivshmem-pci.c | 84 int virq; member 290 ret = kvm_irqchip_update_msi_route(kvm_state, v->virq, msg, dev); in ivshmem_vector_unmask() 296 ret = kvm_irqchip_add_irqfd_notifier_gsi(kvm_state, n, NULL, v->virq); in ivshmem_vector_unmask() 319 ret = kvm_irqchip_remove_irqfd_notifier_gsi(kvm_state, n, v->virq); in ivshmem_vector_mask() 441 s->msi_vectors[vector].virq = ret; in ivshmem_add_kvm_msi_virq() 468 s->msi_vectors[vector].virq); in setup_interrupt() 755 kvm_irqchip_release_virq(kvm_state, s->msi_vectors[vector].virq); in ivshmem_remove_kvm_msi_virq()
|
/qemu/hw/hyperv/ |
H A D | hyperv.c | 380 int virq; in kvm_irqchip_add_hv_sint_route() local 385 virq = kvm_irqchip_get_virq(s); in kvm_irqchip_add_hv_sint_route() 386 if (virq < 0) { in kvm_irqchip_add_hv_sint_route() 387 return virq; in kvm_irqchip_add_hv_sint_route() 390 kroute.gsi = virq; in kvm_irqchip_add_hv_sint_route() 399 return virq; in kvm_irqchip_add_hv_sint_route()
|
/qemu/include/hw/remote/ |
H A D | proxy.h | 42 int virq; member
|
/qemu/hw/vfio/ |
H A D | pci.c | 445 if (vdev->msi_vectors[i].virq < 0 || in vfio_enable_vectors() 470 vector->virq = kvm_irqchip_add_msi_route(&vfio_route_change, in vfio_add_kvm_msi_virq() 476 if (vector->virq < 0) { in vfio_connect_kvm_msi_virq() 485 NULL, vector->virq) < 0) { in vfio_connect_kvm_msi_virq() 494 kvm_irqchip_release_virq(kvm_state, vector->virq); in vfio_connect_kvm_msi_virq() 495 vector->virq = -1; in vfio_connect_kvm_msi_virq() 501 vector->virq); in vfio_remove_kvm_msi_virq() 502 kvm_irqchip_release_virq(kvm_state, vector->virq); in vfio_remove_kvm_msi_virq() 503 vector->virq = -1; in vfio_remove_kvm_msi_virq() 510 kvm_irqchip_update_msi_route(kvm_state, vector->virq, msg, pdev); in vfio_update_kvm_msi_virq() [all …]
|
H A D | pci.h | 99 int virq; member
|
/qemu/qapi/ |
H A D | misc-i386.json | 394 # @virq: The port is bound to a virtual IRQ (VIRQ). 401 'data': ['closed', 'unbound', 'interdomain', 'pirq', 'virq', 'ipi'] } 416 # @target: remote port ID, or virq/pirq number
|
/qemu/include/hw/virtio/ |
H A D | virtio-pci.h | 91 int virq; member
|
/qemu/target/riscv/ |
H A D | cpu_helper.c | 473 int virq; in riscv_cpu_local_irq_pending() local 534 virq = riscv_cpu_pending_to_irq(env, IRQ_S_EXT, IPRIO_DEFAULT_S, in riscv_cpu_local_irq_pending() 536 if (virq <= 0 || (virq > 12 && virq <= 63)) { in riscv_cpu_local_irq_pending() 537 return virq; in riscv_cpu_local_irq_pending() 539 return virq + 1; in riscv_cpu_local_irq_pending()
|
/qemu/hw/virtio/ |
H A D | virtio-pci.c | 832 irqfd->virq = ret; in kvm_virtio_pci_vq_vector_use() 843 kvm_irqchip_release_virq(kvm_state, irqfd->virq); in kvm_virtio_pci_vq_vector_release() 852 return kvm_irqchip_add_irqfd_notifier_gsi(kvm_state, n, NULL, irqfd->virq); in kvm_virtio_pci_irqfd_use() 862 ret = kvm_irqchip_remove_irqfd_notifier_gsi(kvm_state, n, irqfd->virq); in kvm_virtio_pci_irqfd_release() 997 ret = kvm_irqchip_update_msi_route(kvm_state, irqfd->virq, msg, in virtio_pci_one_vector_unmask()
|
/qemu/target/riscv/kvm/ |
H A D | kvm-cpu.c | 1397 int kvm_arch_release_virq_post(int virq) in kvm_arch_release_virq_post() argument 1734 unsigned virq = level ? KVM_INTERRUPT_SET : KVM_INTERRUPT_UNSET; in kvm_riscv_set_irq() local 1741 ret = kvm_vcpu_ioctl(CPU(cpu), KVM_INTERRUPT, &virq); in kvm_riscv_set_irq()
|
/qemu/target/ppc/ |
H A D | kvm.c | 1323 unsigned virq = level ? KVM_INTERRUPT_SET_LEVEL : KVM_INTERRUPT_UNSET; in kvmppc_set_interrupt() local 1333 kvm_vcpu_ioctl(CPU(cpu), KVM_INTERRUPT, &virq); in kvmppc_set_interrupt() 2879 int kvm_arch_release_virq_post(int virq) in kvm_arch_release_virq_post() argument
|