Lines Matching +full:external +full:- +full:irqs
1 // SPDX-License-Identifier: GPL-2.0-only
17 unsigned int pad:3, firq:1, prio:4, exts:8, irqs:8, ver:8; member
19 unsigned int ver:8, irqs:8, exts:8, prio:4, firq:1, pad:3;
25 * -Called very early (start_kernel -> setup_arch -> setup_processor)
26 * -Platform Independent (must for any ARC Core)
27 * -Needed for each CPU (hence not foldable into init_IRQ)
60 * Typical builds though have only two levels (0-high, 1-low) in arc_init_IRQ()
61 * Linux by default uses lower prio 1 for most irqs, reserving 0 for in arc_init_IRQ()
67 irq_prio = irq_bcr.prio; /* Encoded as N-1 for N levels */ in arc_init_IRQ()
68 pr_info("archs-intc\t: %d priority levels (default %d)%s\n", in arc_init_IRQ()
76 * Also disable private-per-core IRQ lines so faulty external HW won't in arc_init_IRQ()
79 for (i = NR_EXCEPTIONS; i < irq_bcr.irqs + NR_EXCEPTIONS; i++) { in arc_init_IRQ()
84 * Only mask cpu private IRQs here. in arc_init_IRQ()
101 write_aux_reg(AUX_IRQ_SELECT, data->hwirq); in arcv2_irq_mask()
107 write_aux_reg(AUX_IRQ_SELECT, data->hwirq); in arcv2_irq_unmask()
114 write_aux_reg(AUX_IRQ_SELECT, data->hwirq); in arcv2_irq_enable()
136 * core intc IRQs [16, 23]: in arcv2_irq_map()
137 * Statically assigned always private-per-core (Timers, WDT, IPI, PCT) in arcv2_irq_map()
168 nr_cpu_irqs = irq_bcr.irqs + NR_EXCEPTIONS; in init_onchip_IRQ()
191 IRQCHIP_DECLARE(arc_intc, "snps,archs-intc", init_onchip_IRQ);