Home
last modified time | relevance | path

Searched refs:pirq (Results 1 – 25 of 45) sorted by relevance

12

/xen-4.10.0-shim-comet/tools/libxc/
A Dxc_physdev.c39 int *pirq) in xc_physdev_map_pirq() argument
44 if ( !pirq ) in xc_physdev_map_pirq()
53 map.pirq = *pirq < 0 ? index : *pirq; in xc_physdev_map_pirq()
58 *pirq = map.pirq; in xc_physdev_map_pirq()
66 int *pirq, in xc_physdev_map_pirq_msi() argument
75 if ( !pirq ) in xc_physdev_map_pirq_msi()
84 map.pirq = *pirq; in xc_physdev_map_pirq_msi()
93 *pirq = map.pirq; in xc_physdev_map_pirq_msi()
100 int pirq) in xc_physdev_unmap_pirq() argument
107 unmap.pirq = pirq; in xc_physdev_unmap_pirq()
A Dxc_flask.c263 int xc_flask_add_pirq(xc_interface *xch, unsigned int pirq, char *scontext) in xc_flask_add_pirq() argument
265 return xc_flask_add(xch, OCON_PIRQ, pirq, pirq, scontext); in xc_flask_add_pirq()
297 int xc_flask_del_pirq(xc_interface *xch, unsigned int pirq) in xc_flask_del_pirq() argument
299 return xc_flask_del(xch, OCON_PIRQ, pirq, pirq); in xc_flask_del_pirq()
/xen-4.10.0-shim-comet/xen/include/xen/
A Dirq.h128 struct pirq { struct
129 int pirq; argument
139 extern struct pirq *pirq_get_info(struct domain *, int pirq);
142 const struct pirq *__pi = pirq_info(d, p); \
145 #define pirq_to_evtchn(d, pirq) pirq_field(d, pirq, evtchn, 0) argument
146 #define pirq_masked(d, pirq) pirq_field(d, pirq, masked, 0) argument
150 #define pirq_cleanup_check(pirq, d) \ argument
151 ((pirq)->evtchn ? pirq_cleanup_check(pirq, d) : (void)0)
153 extern void pirq_guest_eoi(struct pirq *);
162 const struct pirq *, unsigned long *pflags);
[all …]
A Dpci.h172 struct pirq;
173 int msixtbl_pt_register(struct domain *, struct pirq *, uint64_t gtable);
174 void msixtbl_pt_unregister(struct domain *, struct pirq *);
A Diommu.h97 struct pirq;
98 int hvm_do_IRQ_dpci(struct domain *, struct pirq *);
A Ddomain.h41 struct pirq *alloc_pirq_struct(struct domain *);
/xen-4.10.0-shim-comet/xen/arch/x86/
A Dirq.c1184 struct pirq *pirq; in __do_IRQ_guest() local
1270 radix_tree_int_to_ptr(pirq->pirq)); in set_domain_irq_pirq()
1329 struct pirq *pirq = xzalloc_bytes(sz); in alloc_pirq_struct() local
1362 if ( radix_tree_delete(&d->pirq_tree, pirq->pirq) != pirq )
1428 void pirq_guest_eoi(struct pirq *pirq) in pirq_guest_eoi() argument
1499 pirq = pirqs[i]->pirq; in pirq_guest_unmask()
1673 set_pirq_eoi(v->domain, pirq->pirq); in pirq_guest_bind()
1675 clear_pirq_eoi(v->domain, pirq->pirq); in pirq_guest_bind()
1702 d->domain_id, pirq->pirq); in __pirq_guest_unbind()
1834 d->domain_id, pirq->pirq); in pirq_guest_force_unbind()
[all …]
A Dphysdev.c23 int physdev_unmap_pirq(domid_t, int pirq);
67 *pirq = machine_gsi; in physdev_hvm_map_pirq()
68 ret = (*pirq > 0) ? 0 : *pirq; in physdev_hvm_map_pirq()
74 if ( *pirq < 0 ) in physdev_hvm_map_pirq()
170 ret = unmap_domain_pirq(d, pirq); in physdev_unmap_pirq()
190 struct pirq *pirq; in do_physdev_op() local
199 pirq = pirq_info(currd, eoi.irq); in do_physdev_op()
200 if ( !pirq ) { in do_physdev_op()
205 evtchn_unmask(pirq->evtchn); in do_physdev_op()
207 pirq_guest_eoi(pirq); in do_physdev_op()
[all …]
/xen-4.10.0-shim-comet/xen/drivers/passthrough/
A Dio.c286 if ( pirq < 0 || pirq >= d->nr_pirqs ) in pt_irq_create_bind()
628 struct pirq *pirq; in pt_irq_destroy_bind() local
789 pirq = pirqs[i]->pirq; in pt_pirq_iterate()
798 int hvm_do_IRQ_dpci(struct domain *d, struct pirq *pirq) in hvm_do_IRQ_dpci() argument
822 struct pirq *pirq = dpci_pirq(pirq_dpci); in __msi_pirq_eoi() local
876 struct pirq *pirq = dpci_pirq(pirq_dpci); in hvm_dirq_assist() local
906 hvm_gsi_assert(d, pirq->pirq); in hvm_dirq_assist()
931 static void hvm_pirq_eoi(struct pirq *pirq, in hvm_pirq_eoi() argument
936 if ( !pirq ) in hvm_pirq_eoi()
961 struct pirq *pirq = pirq_info(d, girq->machine_gsi); in __hvm_dpci_eoi() local
[all …]
/xen-4.10.0-shim-comet/xen/include/asm-x86/
A Dirq.h124 struct pirq;
135 #define pirq_dpci(pirq) ((pirq) ? &(pirq)->arch.hvm.dpci : NULL) argument
136 #define dpci_pirq(pd) container_of(pd, struct pirq, arch.hvm.dpci)
140 int map_domain_pirq(struct domain *d, int pirq, int irq, int type,
142 int unmap_domain_pirq(struct domain *d, int pirq);
146 int map_domain_emuirq_pirq(struct domain *d, int pirq, int irq);
147 int unmap_domain_pirq_emuirq(struct domain *d, int pirq);
148 bool hvm_domain_use_pirq(const struct domain *, const struct pirq *);
182 #define domain_pirq_to_irq(d, pirq) pirq_field(d, pirq, arch.irq, 0) argument
188 #define domain_pirq_to_emuirq(d, pirq) pirq_field(d, pirq, \ argument
A Diommu.h97 int pi_update_irte(const struct pi_desc *pi_desc, const struct pirq *pirq,
/xen-4.10.0-shim-comet/xen/common/
A Devent_channel.c471 evtchn_from_port(d, chn->u.pirq.prev_port)->u.pirq.next_port = in unlink_pirq_port()
476 evtchn_from_port(d, chn->u.pirq.next_port)->u.pirq.prev_port = in unlink_pirq_port()
487 int port, pirq = bind->pirq; in evtchn_bind_pirq() local
490 if ( (pirq < 0) || (pirq >= d->nr_pirqs) ) in evtchn_bind_pirq()
524 chn->u.pirq.irq = pirq; in evtchn_bind_pirq()
578 struct pirq *pirq = pirq_info(d1, chn1->u.pirq.irq); in evtchn_close() local
580 if ( !pirq ) in evtchn_close()
589 unmap_domain_pirq_emuirq(d1, pirq->pirq); in evtchn_close()
785 void send_guest_pirq(struct domain *d, const struct pirq *pirq) in send_guest_pirq() argument
796 if ( pirq == NULL || (port = pirq->evtchn) == 0 ) in send_guest_pirq()
[all …]
A Ddomain.c1476 struct pirq *pirq_get_info(struct domain *d, int pirq) in pirq_get_info() argument
1478 struct pirq *info = pirq_info(d, pirq); in pirq_get_info()
1482 info->pirq = pirq; in pirq_get_info()
1483 if ( radix_tree_insert(&d->pirq_tree, pirq, info) ) in pirq_get_info()
1495 xfree(container_of(head, struct pirq, rcu_head)); in _free_pirq_struct()
1500 struct pirq *pirq = ptr; in free_pirq_struct() local
1502 call_rcu(&pirq->rcu_head, _free_pirq_struct); in free_pirq_struct()
/xen-4.10.0-shim-comet/xen/include/asm-arm/
A Dirq.h52 #define domain_pirq_to_irq(d, pirq) (pirq) argument
65 #define arch_evtchn_bind_pirq(d, pirq) ((void)((d) + (pirq))) argument
/xen-4.10.0-shim-comet/xen/arch/x86/hvm/
A Dirq.c33 struct pirq *pirq = in assert_gsi() local
36 if ( hvm_domain_use_pirq(d, pirq) ) in assert_gsi()
38 send_guest_pirq(d, pirq); in assert_gsi()
53 struct pirq *pirq = in deassert_irq() local
56 if ( !hvm_domain_use_pirq(d, pirq) ) in deassert_irq()
352 int pirq = ((addr >> 32) & 0xffffff00) | dest; in hvm_inject_msi() local
354 if ( pirq > 0 ) in hvm_inject_msi()
356 struct pirq *info = pirq_info(d, pirq); in hvm_inject_msi()
364 rc = map_domain_emuirq_pirq(d, pirq, IRQ_MSI_EMU); in hvm_inject_msi()
368 info = pirq_info(d, pirq); in hvm_inject_msi()
A Dvmsi.c449 int msixtbl_pt_register(struct domain *d, struct pirq *pirq, uint64_t gtable) in msixtbl_pt_register() argument
471 irq_desc = pirq_spin_lock_irq_desc(pirq, NULL); in msixtbl_pt_register()
520 void msixtbl_pt_unregister(struct domain *d, struct pirq *pirq) in msixtbl_pt_unregister() argument
533 irq_desc = pirq_spin_lock_irq_desc(pirq, NULL); in msixtbl_pt_unregister()
A Dvioapic.c169 int ret, pirq = gsi; in vioapic_hwdom_map_gsi() local
184 ret = allocate_and_map_gsi_pirq(currd, pirq, &pirq); in vioapic_hwdom_map_gsi()
199 unmap_domain_pirq(currd, pirq); in vioapic_hwdom_map_gsi()
/xen-4.10.0-shim-comet/xen/include/public/
A Dphysdev.h166 int pirq; member
183 int pirq; member
264 uint32_t pirq; member
A Devent_channel.h156 uint32_t pirq; member
227 uint32_t pirq; /* EVTCHNSTAT_pirq */ member
/xen-4.10.0-shim-comet/xen/arch/arm/
A Dirq.c580 struct pirq *alloc_pirq_struct(struct domain *d) in alloc_pirq_struct()
590 int pirq_guest_bind(struct vcpu *v, struct pirq *pirq, int will_share) in pirq_guest_bind() argument
595 void pirq_guest_unbind(struct domain *d, struct pirq *pirq) in pirq_guest_unbind() argument
600 void pirq_set_affinity(struct domain *d, int pirq, const cpumask_t *mask) in pirq_set_affinity() argument
A Dgic-v3-its.c841 struct pending_irq *pirq = NULL; in get_event_pending_irq() local
847 pirq = &dev->pend_irqs[eventid]; in get_event_pending_irq()
854 return pirq; in get_event_pending_irq()
895 struct pending_irq *pirq; in gicv3_assign_guest_event() local
898 pirq = get_event_pending_irq(d, vdoorbell_address, vdevid, eventid, in gicv3_assign_guest_event()
901 if ( !pirq ) in gicv3_assign_guest_event()
906 return pirq; in gicv3_assign_guest_event()
A Dvgic-v3-its.c715 struct pending_irq *pirq; in its_handle_mapti() local
757 pirq = gicv3_assign_guest_event(its->d, its->doorbell_address, in its_handle_mapti()
759 if ( !pirq ) in its_handle_mapti()
762 vgic_init_pending_irq(pirq, intid); in its_handle_mapti()
769 ret = update_lpi_property(its->d, pirq); in its_handle_mapti()
773 pirq->lpi_vcpu_id = vcpu->vcpu_id; in its_handle_mapti()
778 set_bit(GIC_IRQ_GUEST_PRISTINE_LPI, &pirq->status); in its_handle_mapti()
785 ret = radix_tree_insert(&its->d->arch.vgic.pend_lpi_tree, intid, pirq); in its_handle_mapti()
/xen-4.10.0-shim-comet/tools/xcutils/
A Dlsevtchn.c45 printf("Physical IRQ %u", status.u.pirq); in main()
/xen-4.10.0-shim-comet/xen/xsm/flask/include/
A Dsecurity.h83 int security_irq_sid(int pirq, u32 *out_sid);
/xen-4.10.0-shim-comet/tools/libxc/include/
A Dxenctrl.h1467 uint8_t pirq,
1653 int *pirq);
1658 int *pirq,
1666 int pirq);
1761 uint32_t pirq,
1768 uint32_t pirq,
2315 int xc_flask_add_pirq(xc_interface *xc_handle, unsigned int pirq, char *scontext);
2321 int xc_flask_del_pirq(xc_interface *xc_handle, unsigned int pirq);

Completed in 52 milliseconds

12