These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / arch / mips / ath25 / ar5312.c
index b6887f7..acd55a9 100644 (file)
@@ -73,14 +73,14 @@ static struct irqaction ar5312_ahb_err_interrupt  = {
        .name    = "ar5312-ahb-error",
 };
 
-static void ar5312_misc_irq_handler(unsigned irq, struct irq_desc *desc)
+static void ar5312_misc_irq_handler(struct irq_desc *desc)
 {
        u32 pending = ar5312_rst_reg_read(AR5312_ISR) &
                      ar5312_rst_reg_read(AR5312_IMR);
        unsigned nr, misc_irq = 0;
 
        if (pending) {
-               struct irq_domain *domain = irq_get_handler_data(irq);
+               struct irq_domain *domain = irq_desc_get_handler_data(desc);
 
                nr = __ffs(pending);
                misc_irq = irq_find_mapping(domain, nr);
@@ -156,8 +156,8 @@ void __init ar5312_arch_init_irq(void)
        irq = irq_create_mapping(domain, AR5312_MISC_IRQ_AHB_PROC);
        setup_irq(irq, &ar5312_ahb_err_interrupt);
 
-       irq_set_chained_handler(AR5312_IRQ_MISC, ar5312_misc_irq_handler);
-       irq_set_handler_data(AR5312_IRQ_MISC, domain);
+       irq_set_chained_handler_and_data(AR5312_IRQ_MISC,
+                                        ar5312_misc_irq_handler, domain);
 
        ar5312_misc_irq_domain = domain;
 }