Lines Matching +full:multi +full:- +full:chip
1 // SPDX-License-Identifier: GPL-2.0-or-later
19 * may be used for IPIs in multi-threaded single-core systems.
42 set_c0_status(IE_SW0 << d->hwirq); in unmask_mips_irq()
48 clear_c0_status(IE_SW0 << d->hwirq); in mask_mips_irq()
71 clear_c0_cause(C_SW0 << d->hwirq); in mips_mt_cpu_irq_startup()
84 clear_c0_cause(C_SW0 << d->hwirq); in mips_mt_cpu_irq_ack()
141 irq = fls(pending) - 1; in plat_irq_dispatch()
155 struct irq_chip *chip; in mips_cpu_intc_map() local
159 chip = &mips_mt_cpu_irq_controller; in mips_cpu_intc_map()
161 chip = &mips_cpu_irq_controller; in mips_cpu_intc_map()
167 irq_set_chip_and_handler(irq, chip, handle_percpu_irq); in mips_cpu_intc_map()
186 struct cpu_ipi_domain_state *state = domain->host_data; in mips_cpu_ipi_alloc()
191 hwirq = find_first_zero_bit(state->allocated, 2); in mips_cpu_ipi_alloc()
193 return -EBUSY; in mips_cpu_ipi_alloc()
194 bitmap_set(state->allocated, hwirq, 1); in mips_cpu_ipi_alloc()
202 ret = irq_domain_set_hwirq_and_chip(domain->parent, virq + i, hwirq, in mips_cpu_ipi_alloc()
224 is_ipi = d->bus_token == bus_token; in mips_cpu_ipi_match()
225 return (!node || (to_of_node(d->fwnode) == node)) && is_ipi; in mips_cpu_ipi_match()
271 * for CPUs which implement the MIPS MT (multi-threading) ASE. in __mips_cpu_irq_init()
288 IRQCHIP_DECLARE(cpu_intc, "mti,cpu-interrupt-controller", mips_cpu_irq_of_init);