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 Lynchstatic 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