Lines Matching refs:pirq
23 int physdev_unmap_pirq(domid_t, int pirq);
31 struct domain *d, int type, int *index, int *pirq) in physdev_hvm_map_pirq() argument
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()
75 *pirq = get_free_pirq(d, type); in physdev_hvm_map_pirq()
76 ret = map_domain_emuirq_pirq(d, *pirq, *index); in physdev_hvm_map_pirq()
144 int physdev_unmap_pirq(domid_t domid, int pirq) in physdev_unmap_pirq() argument
161 if ( domain_pirq_to_emuirq(d, pirq) != IRQ_UNBOUND ) in physdev_unmap_pirq()
162 ret = unmap_domain_pirq_emuirq(d, pirq); in physdev_unmap_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()
218 send_guest_pirq(currd, pirq); in do_physdev_op()
335 ret = physdev_map_pirq(map.domid, map.type, &map.index, &map.pirq, in do_physdev_op()
352 ret = physdev_unmap_pirq(unmap.domid, unmap.pirq); in do_physdev_op()
627 struct pirq *info = pirq_get_info(currd, ret); in do_physdev_op()
639 out.pirq = ret; in do_physdev_op()