1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2012 ARM Limited
4 */
5#ifndef __ASM_VDSO_H
6#define __ASM_VDSO_H
7
8/*
9 * Default link address for the vDSO.
10 * Since we randomise the VDSO mapping, there's little point in trying
11 * to prelink this.
12 */
13#define VDSO_LBASE	0x0
14
15#define __VVAR_PAGES    2
16
17#ifndef __ASSEMBLY__
18
19#include <generated/vdso-offsets.h>
20#ifdef CONFIG_COMPAT_VDSO
21#include <generated/vdso32-offsets.h>
22#endif
23
24#define VDSO_SYMBOL(base, name)						   \
25({									   \
26	(void *)(vdso_offset_##name - VDSO_LBASE + (unsigned long)(base)); \
27})
28
29extern char vdso_start[], vdso_end[];
30extern char vdso32_start[], vdso32_end[];
31
32#endif /* !__ASSEMBLY__ */
33
34#endif /* __ASM_VDSO_H */
35