xref: /openbmc/linux/arch/arm/include/asm/vdso.h (revision a12f8586)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21713ce7cSNathan Lynch #ifndef __ASM_VDSO_H
31713ce7cSNathan Lynch #define __ASM_VDSO_H
41713ce7cSNathan Lynch 
51713ce7cSNathan Lynch #ifdef __KERNEL__
61713ce7cSNathan Lynch 
71713ce7cSNathan Lynch #ifndef __ASSEMBLY__
81713ce7cSNathan Lynch 
91713ce7cSNathan Lynch struct mm_struct;
101713ce7cSNathan Lynch 
111713ce7cSNathan Lynch #ifdef CONFIG_VDSO
121713ce7cSNathan Lynch 
131713ce7cSNathan Lynch void arm_install_vdso(struct mm_struct *mm, unsigned long addr);
141713ce7cSNathan Lynch 
151713ce7cSNathan Lynch extern unsigned int vdso_total_pages;
161713ce7cSNathan Lynch 
171713ce7cSNathan Lynch #else /* CONFIG_VDSO */
181713ce7cSNathan Lynch 
arm_install_vdso(struct mm_struct * mm,unsigned long addr)191713ce7cSNathan Lynch static inline void arm_install_vdso(struct mm_struct *mm, unsigned long addr)
201713ce7cSNathan Lynch {
211713ce7cSNathan Lynch }
221713ce7cSNathan Lynch 
231713ce7cSNathan Lynch #define vdso_total_pages 0
241713ce7cSNathan Lynch 
251713ce7cSNathan Lynch #endif /* CONFIG_VDSO */
261713ce7cSNathan Lynch 
27*a12f8586SArnd Bergmann int __vdso_clock_gettime(clockid_t clock, struct old_timespec32 *ts);
28*a12f8586SArnd Bergmann int __vdso_clock_gettime64(clockid_t clock, struct __kernel_timespec *ts);
29*a12f8586SArnd Bergmann int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz);
30*a12f8586SArnd Bergmann int __vdso_clock_getres(clockid_t clock_id, struct old_timespec32 *res);
31*a12f8586SArnd Bergmann 
321713ce7cSNathan Lynch #endif /* __ASSEMBLY__ */
331713ce7cSNathan Lynch 
341713ce7cSNathan Lynch #endif /* __KERNEL__ */
351713ce7cSNathan Lynch 
361713ce7cSNathan Lynch #endif /* __ASM_VDSO_H */
37