OSDN Git Service

[MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq
[sagit-ice-cold/kernel_xiaomi_msm8998.git] / arch / mips / philips / pnx8550 / common / int.c
index e4bf494..0dc2393 100644 (file)
@@ -192,7 +192,7 @@ void __init arch_init_irq(void)
        int configPR;
 
        for (i = 0; i < PNX8550_INT_CP0_TOTINT; i++) {
-               set_irq_chip(i, &level_irq_type);
+               set_irq_chip_and_handler(i, &level_irq_type, handle_level_irq);
                mask_irq(i);    /* mask the irq just in case  */
        }
 
@@ -229,7 +229,7 @@ void __init arch_init_irq(void)
                /* mask/priority is still 0 so we will not get any
                 * interrupts until it is unmasked */
 
-               set_irq_chip(i, &level_irq_type);
+               set_irq_chip_and_handler(i, &level_irq_type, handle_level_irq);
        }
 
        /* Priority level 0 */
@@ -238,19 +238,21 @@ void __init arch_init_irq(void)
        /* Set int vector table address */
        PNX8550_GIC_VECTOR_0 = PNX8550_GIC_VECTOR_1 = 0;
 
-       set_irq_chip(MIPS_CPU_GIC_IRQ, &level_irq_type);
+       set_irq_chip_and_handler(MIPS_CPU_GIC_IRQ, &level_irq_type,
+                                handle_level_irq);
        setup_irq(MIPS_CPU_GIC_IRQ, &gic_action);
 
        /* init of Timer interrupts */
        for (i = PNX8550_INT_TIMER_MIN; i <= PNX8550_INT_TIMER_MAX; i++)
-               set_irq_chip(i, &level_irq_type);
+               set_irq_chip_and_handler(i, &level_irq_type, handle_level_irq);
 
        /* Stop Timer 1-3 */
        configPR = read_c0_config7();
        configPR |= 0x00000038;
        write_c0_config7(configPR);
 
-       set_irq_chip(MIPS_CPU_TIMER_IRQ, &level_irq_type);
+       set_irq_chip_and_handler(MIPS_CPU_TIMER_IRQ, &level_irq_type,
+                                handle_level_irq);
        setup_irq(MIPS_CPU_TIMER_IRQ, &timer_action);
 }