Linux Audio

Check our new training course

Loading...
 1/* SPDX-License-Identifier: GPL-2.0 */
 2#ifndef __ASM_VDSO_VSYSCALL_H
 3#define __ASM_VDSO_VSYSCALL_H
 4
 5#ifndef __ASSEMBLY__
 6
 7#include <linux/timekeeper_internal.h>
 8#include <vdso/datapage.h>
 9#include <asm/cacheflush.h>
10
11extern struct vdso_data *vdso_data;
12extern bool cntvct_ok;
13
14/*
15 * Update the vDSO data page to keep in sync with kernel timekeeping.
16 */
17static __always_inline
18struct vdso_data *__arm_get_k_vdso_data(void)
19{
20	return vdso_data;
21}
22#define __arch_get_k_vdso_data __arm_get_k_vdso_data
23
24static __always_inline
25void __arm_sync_vdso_data(struct vdso_data *vdata)
26{
27	flush_dcache_page(virt_to_page(vdata));
28}
29#define __arch_sync_vdso_data __arm_sync_vdso_data
30
31/* The asm-generic header needs to be included after the definitions above */
32#include <asm-generic/vdso/vsyscall.h>
33
34#endif /* !__ASSEMBLY__ */
35
36#endif /* __ASM_VDSO_VSYSCALL_H */