18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ci#ifndef __ASM_CSKY_SMP_H 48c2ecf20Sopenharmony_ci#define __ASM_CSKY_SMP_H 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#include <linux/cpumask.h> 78c2ecf20Sopenharmony_ci#include <linux/irqreturn.h> 88c2ecf20Sopenharmony_ci#include <linux/threads.h> 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#ifdef CONFIG_SMP 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_civoid __init setup_smp(void); 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_civoid __init setup_smp_ipi(void); 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_civoid arch_send_call_function_ipi_mask(struct cpumask *mask); 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_civoid arch_send_call_function_single_ipi(int cpu); 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_civoid __init set_send_ipi(void (*func)(const struct cpumask *mask), int irq); 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci#define raw_smp_processor_id() (current_thread_info()->cpu) 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciint __cpu_disable(void); 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_civoid __cpu_die(unsigned int cpu); 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci#endif /* CONFIG_SMP */ 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci#endif /* __ASM_CSKY_SMP_H */ 31