These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / arch / mips / kernel / irq.c
index 3c8a18a..8eb5af8 100644 (file)
 #include <linux/atomic.h>
 #include <asm/uaccess.h>
 
-#ifdef CONFIG_KGDB
-int kgdb_early_setup;
-#endif
-
-static DECLARE_BITMAP(irq_map, NR_IRQS);
-
-int allocate_irqno(void)
-{
-       int irq;
-
-again:
-       irq = find_first_zero_bit(irq_map, NR_IRQS);
-
-       if (irq >= NR_IRQS)
-               return -ENOSPC;
-
-       if (test_and_set_bit(irq, irq_map))
-               goto again;
-
-       return irq;
-}
-
-/*
- * Allocate the 16 legacy interrupts for i8259 devices.         This happens early
- * in the kernel initialization so treating allocation failure as BUG() is
- * ok.
- */
-void __init alloc_legacy_irqno(void)
-{
-       int i;
-
-       for (i = 0; i <= 16; i++)
-               BUG_ON(test_and_set_bit(i, irq_map));
-}
-
-void free_irqno(unsigned int irq)
-{
-       smp_mb__before_atomic();
-       clear_bit(irq, irq_map);
-       smp_mb__after_atomic();
-}
-
 /*
  * 'what should we do if we get a hw irq event on an illegal vector'.
  * each architecture has to answer this themselves.
@@ -93,20 +51,10 @@ void __init init_IRQ(void)
 {
        int i;
 
-#ifdef CONFIG_KGDB
-       if (kgdb_early_setup)
-               return;
-#endif
-
        for (i = 0; i < NR_IRQS; i++)
                irq_set_noprobe(i);
 
        arch_init_irq();
-
-#ifdef CONFIG_KGDB
-       if (!kgdb_early_setup)
-               kgdb_early_setup = 1;
-#endif
 }
 
 #ifdef CONFIG_DEBUG_STACKOVERFLOW