1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (C) 2012 ARM Limited
4 * Copyright (C) 2014 Regents of the University of California
5 * Copyright (C) 2017 SiFive
8 #ifndef _ASM_RISCV_VDSO_H
9 #define _ASM_RISCV_VDSO_H
12 * All systems with an MMU have a VDSO, but systems without an MMU don't
13 * support shared libraries and therefore don't have one.
17 #define __VVAR_PAGES 2
20 #include <generated/vdso-offsets.h>
22 #define VDSO_SYMBOL(base, name) \
23 (void __user *)((unsigned long)(base) + __vdso_##name##_offset)
26 #include <generated/compat_vdso-offsets.h>
28 #define COMPAT_VDSO_SYMBOL(base, name) \
29 (void __user *)((unsigned long)(base) + compat__vdso_##name##_offset)
31 extern char compat_vdso_start
[], compat_vdso_end
[];
33 #endif /* CONFIG_COMPAT */
35 extern char vdso_start
[], vdso_end
[];
37 #endif /* !__ASSEMBLY__ */
39 #endif /* CONFIG_MMU */
41 #endif /* _ASM_RISCV_VDSO_H */