1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _ASM_POWERPC_VDSO_H
3#define _ASM_POWERPC_VDSO_H
4
5#define VDSO_VERSION_STRING	LINUX_2.6.15
6
7#ifndef __ASSEMBLY__
8
9#ifdef CONFIG_PPC64
10#include <generated/vdso64-offsets.h>
11#endif
12
13#ifdef CONFIG_VDSO32
14#include <generated/vdso32-offsets.h>
15#endif
16
17#define VDSO64_SYMBOL(base, name) ((unsigned long)(base) + (vdso64_offset_##name))
18
19#define VDSO32_SYMBOL(base, name) ((unsigned long)(base) + (vdso32_offset_##name))
20
21int vdso_getcpu_init(void);
22
23#else /* __ASSEMBLY__ */
24
25#ifdef __VDSO64__
26#define V_FUNCTION_BEGIN(name)		\
27	.globl name;			\
28	name:				\
29
30#define V_FUNCTION_END(name)		\
31	.size name,.-name;
32
33#define V_LOCAL_FUNC(name) (name)
34#endif /* __VDSO64__ */
35
36#ifdef __VDSO32__
37
38#define V_FUNCTION_BEGIN(name)		\
39	.globl name;			\
40	.type name,@function; 		\
41	name:				\
42
43#define V_FUNCTION_END(name)		\
44	.size name,.-name;
45
46#define V_LOCAL_FUNC(name) (name)
47
48#endif /* __VDSO32__ */
49
50#endif /* __ASSEMBLY__ */
51
52#endif /* _ASM_POWERPC_VDSO_H */
53