spin_unlock_irqrestore(&gic.lock, flags);
}
-void gic_set_guest_irq(struct vcpu *v, unsigned int virtual_irq,
- unsigned int state, unsigned int priority)
+void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq,
+ unsigned int priority)
{
int i;
unsigned long flags;
i = find_first_zero_bit(&this_cpu(lr_mask), nr_lrs);
if (i < nr_lrs) {
set_bit(i, &this_cpu(lr_mask));
- gic_set_lr(i, irq_to_pending(v, virtual_irq), state);
+ gic_set_lr(i, irq_to_pending(v, virtual_irq), GICH_LR_PENDING);
goto out;
}
}
p->lr = GIC_INVALID_LR;
if ( test_bit(GIC_IRQ_GUEST_PENDING, &p->status) &&
test_bit(GIC_IRQ_GUEST_ENABLED, &p->status))
- gic_set_guest_irq(v, irq, GICH_LR_PENDING, p->priority);
+ gic_raise_guest_irq(v, irq, p->priority);
else
list_del_init(&p->inflight);
}
p = irq_to_pending(v, irq);
set_bit(GIC_IRQ_GUEST_ENABLED, &p->status);
if ( !list_empty(&p->inflight) && !test_bit(GIC_IRQ_GUEST_VISIBLE, &p->status) )
- gic_set_guest_irq(v, irq, GICH_LR_PENDING, p->priority);
+ gic_raise_guest_irq(v, irq, p->priority);
if ( p->desc != NULL )
{
spin_lock_irqsave(&p->desc->lock, flags);
/* the irq is enabled */
if ( test_bit(GIC_IRQ_GUEST_ENABLED, &n->status) )
- gic_set_guest_irq(v, irq, GICH_LR_PENDING, priority);
+ gic_raise_guest_irq(v, irq, priority);
list_for_each_entry ( iter, &v->arch.vgic.inflight_irqs, inflight )
{
extern int gic_events_need_delivery(void);
extern void __cpuinit init_maintenance_interrupt(void);
-extern void gic_set_guest_irq(struct vcpu *v, unsigned int irq,
- unsigned int state, unsigned int priority);
+extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq,
+ unsigned int priority);
extern void gic_remove_from_queues(struct vcpu *v, unsigned int virtual_irq);
/* Accept an interrupt from the GIC and dispatch its handler */