1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (C) 2012 ARM Limited 4 * Copyright (C) 2014 Regents of the University of California 5 * Copyright (C) 2017 SiFive 6 */ 7 8 #ifndef _ASM_RISCV_VDSO_H 9 #define _ASM_RISCV_VDSO_H 10 11 12 /* 13 * All systems with an MMU have a VDSO, but systems without an MMU don't 14 * support shared libraries and therefor don't have one. 15 */ 16 #ifdef CONFIG_MMU 17 18 #include <linux/types.h> 19 #include <generated/vdso-offsets.h> 20 21 #ifndef CONFIG_GENERIC_TIME_VSYSCALL 22 struct vdso_data { 23 }; 24 #endif 25 26 #define VDSO_SYMBOL(base, name) \ 27 (void __user *)((unsigned long)(base) + __vdso_##name##_offset) 28 29 #endif /* CONFIG_MMU */ 30 31 asmlinkage long sys_riscv_flush_icache(uintptr_t, uintptr_t, uintptr_t); 32 33 #endif /* _ASM_RISCV_VDSO_H */ 34