#include <linux/slab.h>
#include <linux/random.h>
#include <linux/delay.h>
+#include <linux/bitops.h>
-#include <asm/bitops.h>
#include <asm/bootinfo.h>
#include <asm/io.h>
#include <asm/mipsregs.h>
#define EXT_INTC1_REQ1 5 /* IP 5 */
#define MIPS_TIMER_IP 7 /* IP 7 */
-#ifdef CONFIG_KGDB
-extern void breakpoint(void);
-#endif
-
extern asmlinkage void au1000_IRQ(void);
extern void set_debug_traps(void);
extern irq_cpustat_t irq_stat [NR_CPUS];
inline void local_enable_irq(unsigned int irq_nr);
inline void local_disable_irq(unsigned int irq_nr);
-extern void __init init_generic_irq(void);
void (*board_init_irq)(void);
#ifdef CONFIG_PM
extern void counter0_irq(int irq, void *dev_id, struct pt_regs *regs);
#endif
-static spinlock_t irq_lock = SPIN_LOCK_UNLOCKED;
+static DEFINE_SPINLOCK(irq_lock);
static unsigned int startup_irq(unsigned int irq_nr)
}
-void __init init_IRQ(void)
+void __init arch_init_irq(void)
{
int i;
unsigned long cp0_status;
memset(irq_desc, 0, sizeof(irq_desc));
set_except_vector(0, au1000_IRQ);
- init_generic_irq();
-
/* Initialize interrupt controllers to a safe state.
*/
au_writel(0xffffffff, IC0_CFG0CLR);
*/
if (board_init_irq)
(*board_init_irq)();
-
-#ifdef CONFIG_KGDB
- /* If local serial I/O used for debug port, enter kgdb at once */
- puts("Waiting for kgdb to connect...");
- set_debug_traps();
- breakpoint();
-#endif
}