Ejemplo n.º 1
0
Archivo: irq.c Proyecto: 03199618/linux
asmlinkage void mach_irq_dispatch(unsigned int pending)
{
	if (pending & CAUSEF_IP7)
		do_IRQ(MIPS_CPU_IRQ_BASE + 7);
	else if (pending & CAUSEF_IP6) /* perf counter loverflow */
		do_perfcnt_IRQ();
	else if (pending & CAUSEF_IP5)
		i8259_irqdispatch();
	else if (pending & CAUSEF_IP2)
		bonito_irqdispatch();
	else
		spurious_interrupt();
}
Ejemplo n.º 2
0
void mach_irq_dispatch(unsigned int pending)
{
    if (pending & CAUSEF_IP7)
        do_IRQ(LOONGSON_TIMER_IRQ);
    else if (pending & CAUSEF_IP6) {	/* North Bridge, Perf counter */
        do_perfcnt_IRQ();
        bonito_irqdispatch();
    } else if (pending & CAUSEF_IP3)	/* CPU UART */
        do_IRQ(LOONGSON_UART_IRQ);
    else if (pending & CAUSEF_IP2)	/* South Bridge */
        i8259_irqdispatch();
    else
        spurious_interrupt();
}