xref: /openbmc/linux/arch/sparc/include/asm/percpu_64.h (revision 151f4e2b)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ARCH_SPARC64_PERCPU__
3 #define __ARCH_SPARC64_PERCPU__
4 
5 #include <linux/compiler.h>
6 
7 register unsigned long __local_per_cpu_offset asm("g5");
8 
9 #ifdef CONFIG_SMP
10 
11 #include <asm/trap_block.h>
12 
13 #define __per_cpu_offset(__cpu) \
14 	(trap_block[(__cpu)].__per_cpu_base)
15 #define per_cpu_offset(x) (__per_cpu_offset(x))
16 
17 #define __my_cpu_offset __local_per_cpu_offset
18 
19 #else /* ! SMP */
20 
21 #endif	/* SMP */
22 
23 #include <asm-generic/percpu.h>
24 
25 #endif /* __ARCH_SPARC64_PERCPU__ */
26