Beispiel #1
0
static void gic_irqdispatch(void)
{
    unsigned int irq = gic_get_int();

    if (likely(irq < GIC_NUM_INTRS))  {
        do_IRQ(MIPS_GIC_IRQ_BASE + irq);
    }
}
static void malta_ipi_irqdispatch(void)
{
	int irq;

	irq = gic_get_int();
	if (irq < 0)
		return;  /* interrupt has already been cleared */

	do_IRQ(MIPS_GIC_IRQ_BASE + irq);
}
Beispiel #3
0
static void malta_ipi_irqdispatch(void)
{
	int irq;

	irq = gic_get_int();
	if (irq < 0)
		return;  

	do_IRQ(MIPS_GIC_IRQ_BASE + irq);
}
Beispiel #4
0
static void
gic_irqdispatch(void)
{
	int irq = gic_get_int();

	if (irq < 0)
		return;  /* interrupt has already been cleared */

	if (likely(irq < GIC_NUM_INTRS))
		do_IRQ(MIPS_GIC_IRQ_BASE + irq);
	else {
		pr_err("Spurious GIC Interrupt %d/%d!\n",irq,MIPS_GIC_IRQ_BASE + irq);
		spurious_interrupt();
	}
}