1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * SMP definitions for the Hexagon architecture 4 * 5 * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. 6 */ 7 8 #ifndef __ASM_SMP_H 9 #define __ASM_SMP_H 10 11 #include <linux/cpumask.h> 12 13 #define raw_smp_processor_id() (current_thread_info()->cpu) 14 15 enum ipi_message_type { 16 IPI_NOP = 0, 17 IPI_RESCHEDULE = 1, 18 IPI_CALL_FUNC, 19 IPI_CPU_STOP, 20 IPI_TIMER, 21 }; 22 23 extern void send_ipi(const struct cpumask *cpumask, enum ipi_message_type msg); 24 extern void smp_start_cpus(void); 25 extern void arch_send_call_function_single_ipi(int cpu); 26 extern void arch_send_call_function_ipi_mask(const struct cpumask *mask); 27 28 extern void smp_vm_unmask_irq(void *info); 29 30 #endif 31