Lines Matching +full:inter +full:- +full:processor
1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
6 * -- Added support for Inter Processor Interrupts
9 * -- Initial Write (Borrowed heavily from ARM)
26 #include <asm/processor.h>
53 return -EINVAL; in arc_get_cpu_map()
56 return -EINVAL; in arc_get_cpu_map()
63 * "possible-cpus" property in DeviceTree pretend all [0..NR_CPUS-1] exist.
69 if (arc_get_cpu_map("possible-cpus", &cpumask)) { in arc_init_cpu_possible()
70 pr_warn("Failed to get possible-cpus from dtb, pretending all %u cpus exist\n", in arc_init_cpu_possible()
85 * - Initialise the CPU possible map early - this describes the CPUs
87 * - Call early smp init hook. This can initialize a specific multi-core
116 * Default smp boot helper for Run-on-reset case where all cores start off
117 * together. Non-masters need to wait for Master to start running.
118 * This is implemented using a flag in memory, which Non-masters spin-wait on.
119 * Master sets it to cpu-id of core to "ungate" it.
144 /* for halt-on-reset, we've waited already */ in arc_platform_smp_wait_to_boot()
174 current->active_mm = mm; in start_kernel_secondary()
177 /* Some SMP H/w setup - for each cpu */ in start_kernel_secondary()
181 if (machine_desc->init_per_cpu) in start_kernel_secondary()
182 machine_desc->init_per_cpu(cpu); in start_kernel_secondary()
194 * Called from kernel_init( ) -> smp_init( ) - for each CPU
196 * At this point, Secondary Processor is "HALT"ed:
197 * -It booted, but was halted in head.S
198 * -It was configured to halt-on-reset
227 return -1; in __cpu_up()
240 return -EINVAL; in setup_profiling_timer()
244 /* Inter Processor Interrupt Handling */
255 * In arches with IRQ for each msg type (above), receiver can use IRQ-id to
257 * IRQ), the msg-type needs to be conveyed via per-cpu data
287 * so @new msg can be a free-loader in ipi_send_msg_one()
327 * ipi_cpu_stop - handle IPI from smp_send_stop()
359 * arch-common ISR to handle for inter-processor interrupts
393 * API called by platform code to hookup arch-common ISR to their IPI IRQ