1 /* 2 * This program is free software; you can redistribute it and/or modify it 3 * under the terms of the GNU General Public License version 2 as published 4 * by the Free Software Foundation. 5 * 6 * Copyright (C) 2014 Broadcom Corporation 7 * Author: Kevin Cernekee <cernekee@gmail.com> 8 */ 9 10 #include <linux/of.h> 11 #include <linux/irqchip.h> 12 13 #include <asm/bmips.h> 14 #include <asm/irq.h> 15 #include <asm/irq_cpu.h> 16 #include <asm/time.h> 17 18 unsigned int get_c0_compare_int(void) 19 { 20 return CP0_LEGACY_COMPARE_IRQ; 21 } 22 23 void __init arch_init_irq(void) 24 { 25 struct device_node *dn; 26 27 /* Only the STB (bcm7038) controller supports SMP IRQ affinity */ 28 dn = of_find_compatible_node(NULL, NULL, "brcm,bcm7038-l1-intc"); 29 if (dn) 30 of_node_put(dn); 31 else 32 bmips_tp1_irqs = 0; 33 34 irqchip_init(); 35 } 36 37 IRQCHIP_DECLARE(mips_cpu_intc, "mti,cpu-interrupt-controller", 38 mips_cpu_irq_of_init); 39