Home
last modified time | relevance | path

Searched refs:virq (Results 1 – 25 of 41) sorted by relevance

12

/xen/xen/arch/arm/
A Dvgic.c73 p->irq = virq; in vgic_init_pending_irq()
247 if ( is_lpi(virq) ) in vgic_get_virq_priority()
250 rank = vgic_rank_irq(v, virq); in vgic_get_virq_priority()
435 ASSERT( virq < 16 ); in vgic_to_sgi()
545 ASSERT(virq >= 32 && virq <= vgic_num_irqs(d)); in vgic_inject_irq()
552 n = irq_to_pending(v, virq); in vgic_inject_irq()
571 gic_raise_inflight_irq(v, virq); in vgic_inject_irq()
622 if ( virq >= vgic_num_irqs(d) ) in vgic_reserve_virq()
631 unsigned int virq; in vgic_allocate_virq() local
652 if ( virq >= end ) in vgic_allocate_virq()
[all …]
A Ddomctl.c77 uint32_t virq = bind->machine_irq; in arch_do_domctl() local
87 if ( irq != virq ) in arch_do_domctl()
109 if ( !vgic_reserve_virq(d, virq) ) in arch_do_domctl()
112 rc = route_irq_to_guest(d, virq, irq, "routed IRQ"); in arch_do_domctl()
114 vgic_free_virq(d, virq); in arch_do_domctl()
123 uint32_t virq = bind->machine_irq; in arch_do_domctl() local
130 if ( irq != virq ) in arch_do_domctl()
140 rc = release_guest_irq(d, virq); in arch_do_domctl()
144 vgic_free_virq(d, virq); in arch_do_domctl()
A Dirq.c39 unsigned int virq; member
242 vgic_inject_irq(info->d, NULL, info->virq, true); in do_IRQ()
414 int route_irq_to_guest(struct domain *d, unsigned int virq, in route_irq_to_guest() argument
423 if ( virq >= vgic_num_irqs(d) ) in route_irq_to_guest()
432 if ( virq < NR_LOCAL_IRQS ) in route_irq_to_guest()
457 info->virq = virq; in route_irq_to_guest()
492 else if ( irq_get_guest_info(desc)->virq != virq ) in route_irq_to_guest()
533 int release_guest_irq(struct domain *d, unsigned int virq) in release_guest_irq() argument
541 if ( virq < NR_LOCAL_IRQS || virq >= vgic_num_irqs(d) ) in release_guest_irq()
544 desc = vgic_get_hw_irq_desc(d, NULL, virq); in release_guest_irq()
[all …]
A Dgic.c136 int gic_route_irq_to_guest(struct domain *d, unsigned int virq, in gic_route_irq_to_guest() argument
143 ASSERT(virq >= 32); in gic_route_irq_to_guest()
144 ASSERT(virq < vgic_num_irqs(d)); in gic_route_irq_to_guest()
145 ASSERT(!is_lpi(virq)); in gic_route_irq_to_guest()
155 ret = vgic_connect_hw_irq(d, NULL, virq, desc, true); in gic_route_irq_to_guest()
170 int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, in gic_remove_irq_from_guest() argument
177 ASSERT(!is_lpi(virq)); in gic_remove_irq_from_guest()
193 ret = vgic_connect_hw_irq(d, NULL, virq, desc, false); in gic_remove_irq_from_guest()
A Dgic-vgic.c126 if ( lr_val.virq == p->irq ) in gic_find_unused_lr()
173 irq = lr_val.virq; in gic_update_one_lr()
417 unsigned int virq) in vgic_get_hw_irq_desc() argument
421 ASSERT(!v && virq >= 32); in vgic_get_hw_irq_desc()
426 p = irq_to_pending(v, virq); in vgic_get_hw_irq_desc()
433 int vgic_connect_hw_irq(struct domain *d, struct vcpu *v, unsigned int virq, in vgic_connect_hw_irq() argument
441 struct vcpu *v_target = vgic_get_target_vcpu(d->vcpu[0], virq); in vgic_connect_hw_irq()
442 struct vgic_irq_rank *rank = vgic_rank_irq(v_target, virq); in vgic_connect_hw_irq()
443 struct pending_irq *p = irq_to_pending(v_target, virq); in vgic_connect_hw_irq()
A Dvgic-v2.c97 unsigned int virq; in vgic_store_itargetsr() local
113 virq = rank->index * NR_INTERRUPT_PER_RANK + offset; in vgic_store_itargetsr()
115 for ( i = 0; i < NR_TARGETS_PER_ITARGETSR; i++, offset++, virq++ ) in vgic_store_itargetsr()
148 virq, new_mask); in vgic_store_itargetsr()
162 virq) ) in vgic_store_itargetsr()
378 int virq; in vgic_v2_to_sgi() local
385 virq = (sgir & GICD_SGI_INTID_MASK); in vgic_v2_to_sgi()
407 return vgic_to_sgi(v, sgir, sgi_mode, virq, &target); in vgic_v2_to_sgi()
/xen/xen/common/
A Devent_channel.c132 switch ( virq ) in virq_is_global()
144 ASSERT(virq < NR_VIRQS); in virq_is_global()
423 int virq = bind->virq, vcpu = bind->vcpu; in evtchn_bind_virq() local
426 if ( (virq < 0) || (virq >= ARRAY_SIZE(v->virq_to_evtchn)) ) in evtchn_bind_virq()
433 virq = array_index_nospec(virq, ARRAY_SIZE(v->virq_to_evtchn)); in evtchn_bind_virq()
466 chn->u.virq = virq; in evtchn_bind_virq()
887 send_guest_global_virq(global_virq_handlers[virq] ?: hardware_domain, virq); in send_global_virq()
894 if (virq >= NR_VIRQS) in set_global_virq_handler()
918 uint32_t virq; in clear_global_virq_handlers() local
923 for (virq = 0; virq < NR_VIRQS; virq++) in clear_global_virq_handlers()
[all …]
/xen/xen/include/asm-arm/
A Dvgic.h281 extern struct vcpu *vgic_get_target_vcpu(struct vcpu *v, unsigned int virq);
284 extern void vgic_init_pending_irq(struct pending_irq *p, unsigned int virq);
296 enum gic_sgi_mode irqmode, int virq,
318 extern bool vgic_reserve_virq(struct domain *d, unsigned int virq);
319 extern void vgic_free_virq(struct domain *d, unsigned int virq);
332 unsigned int virq);
333 int vgic_connect_hw_irq(struct domain *d, struct vcpu *v, unsigned int virq,
344 void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int virq,
A Dgic.h208 uint32_t virq; member
244 extern int gic_route_irq_to_guest(struct domain *, unsigned int virq,
249 int gic_remove_irq_from_guest(struct domain *d, unsigned int virq,
360 void (*update_lr)(int lr, unsigned int virq, uint8_t priority,
A Devent.h50 static inline bool arch_virq_is_global(unsigned int virq) in arch_virq_is_global() argument
/xen/xen/arch/arm/vgic/
A Dvgic.c713 bool vgic_reserve_virq(struct domain *d, unsigned int virq) in vgic_reserve_virq() argument
715 if ( virq >= vgic_num_irqs(d) ) in vgic_reserve_virq()
718 return !test_and_set_bit(virq, d->arch.vgic.allocated_irqs); in vgic_reserve_virq()
724 unsigned int virq; in vgic_allocate_virq() local
745 if ( virq >= end ) in vgic_allocate_virq()
747 } while ( test_and_set_bit(virq, d->arch.vgic.allocated_irqs) ); in vgic_allocate_virq()
749 return virq; in vgic_allocate_virq()
752 void vgic_free_virq(struct domain *d, unsigned int virq) in vgic_free_virq() argument
754 clear_bit(virq, d->arch.vgic.allocated_irqs); in vgic_free_virq()
830 unsigned int virq) in vgic_get_hw_irq_desc() argument
[all …]
/xen/tools/libs/evtchn/
A Dsolaris.c97 xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq) in xenevtchn_bind_virq() argument
102 bind.virq = virq; in xenevtchn_bind_virq()
A Dlinux.c101 unsigned int virq) in xenevtchn_bind_virq() argument
106 bind.virq = virq; in xenevtchn_bind_virq()
A Dnetbsd.c114 xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq) in xenevtchn_bind_virq() argument
120 bind.virq = virq; in xenevtchn_bind_virq()
A Dfreebsd.c96 xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq) in xenevtchn_bind_virq() argument
101 bind.virq = virq; in xenevtchn_bind_virq()
A Dminios.c208 xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq) in xenevtchn_bind_virq() argument
219 printf("xenevtchn_bind_virq(%d)", virq); in xenevtchn_bind_virq()
220 port = bind_virq(virq, evtchn_handler, (void*)(intptr_t)fd); in xenevtchn_bind_virq()
/xen/xen/include/xen/
A Devent.h24 void send_guest_vcpu_virq(struct vcpu *v, uint32_t virq);
30 void send_global_virq(uint32_t virq);
37 void send_guest_global_virq(struct domain *d, uint32_t virq);
44 int set_global_virq_handler(struct domain *d, uint32_t virq);
89 int guest_enabled_event(struct vcpu *v, uint32_t virq);
/xen/tools/libxc/
A Dxc_evtchn_compat.c46 xc_evtchn_bind_virq(xc_evtchn *xce, unsigned int virq) in xc_evtchn_bind_virq() argument
48 return xenevtchn_bind_virq(xce, virq); in xc_evtchn_bind_virq()
/xen/xen/include/public/
A Devent_channel.h144 uint32_t virq; /* enum virq */ member
231 uint32_t virq; /* EVTCHNSTAT_virq */ member
/xen/tools/include/xen-sys/FreeBSD/
A Devtchn.h41 unsigned int virq; member
/xen/tools/include/xen-sys/NetBSD/
A Devtchn.h40 unsigned int virq; member
/xen/tools/include/xen-sys/NetBSDRump/
A Devtchn.h40 unsigned int virq; member
/xen/tools/include/xen-sys/SunOS/
A Devtchn.h43 unsigned int virq; member
/xen/tools/include/xen-sys/Linux/
A Devtchn.h43 unsigned int virq; member
/xen/xen/include/asm-x86/
A Devent.h45 static inline bool arch_virq_is_global(unsigned int virq) in arch_virq_is_global() argument

Completed in 96 milliseconds

12