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 #ifndef BUILD_VDSO 8 register unsigned long __local_per_cpu_offset asm("g5"); 9 #endif 10 11 #ifdef CONFIG_SMP 12 13 #include <asm/trap_block.h> 14 15 #define __per_cpu_offset(__cpu) \ 16 (trap_block[(__cpu)].__per_cpu_base) 17 #define per_cpu_offset(x) (__per_cpu_offset(x)) 18 19 #define __my_cpu_offset __local_per_cpu_offset 20 21 #else /* ! SMP */ 22 23 #endif /* SMP */ 24 25 #include <asm-generic/percpu.h> 26 27 #endif /* __ARCH_SPARC64_PERCPU__ */ 28