xref: /linux/arch/powerpc/kernel/vdso/vgettimeofday.c (revision 6f7e6393d1ce636bb7ec77a7fe7b77458fddf701)
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Powerpc userspace implementations of gettimeofday() and similar.
4  */
5 #include <linux/time.h>
6 #include <linux/types.h>
7 
8 #ifdef __powerpc64__
9 int __c_kernel_clock_gettime(clockid_t clock, struct __kernel_timespec *ts,
10 			     const struct vdso_time_data *vd)
11 {
12 	return __cvdso_clock_gettime_data(vd, clock, ts);
13 }
14 
15 int __c_kernel_clock_getres(clockid_t clock_id, struct __kernel_timespec *res,
16 			    const struct vdso_time_data *vd)
17 {
18 	return __cvdso_clock_getres_data(vd, clock_id, res);
19 }
20 #else
21 int __c_kernel_clock_gettime(clockid_t clock, struct old_timespec32 *ts,
22 			     const struct vdso_time_data *vd)
23 {
24 	return __cvdso_clock_gettime32_data(vd, clock, ts);
25 }
26 
27 int __c_kernel_clock_gettime64(clockid_t clock, struct __kernel_timespec *ts,
28 			       const struct vdso_time_data *vd)
29 {
30 	return __cvdso_clock_gettime_data(vd, clock, ts);
31 }
32 
33 int __c_kernel_clock_getres(clockid_t clock_id, struct old_timespec32 *res,
34 			    const struct vdso_time_data *vd)
35 {
36 	return __cvdso_clock_getres_time32_data(vd, clock_id, res);
37 }
38 
39 int __c_kernel_clock_getres_time64(clockid_t clock_id, struct __kernel_timespec *res,
40 				   const struct vdso_time_data *vd)
41 {
42 	return __cvdso_clock_getres_data(vd, clock_id, res);
43 }
44 #endif
45 
46 int __c_kernel_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz,
47 			    const struct vdso_time_data *vd)
48 {
49 	return __cvdso_gettimeofday_data(vd, tv, tz);
50 }
51 
52 __kernel_old_time_t __c_kernel_time(__kernel_old_time_t *time, const struct vdso_time_data *vd)
53 {
54 	return __cvdso_time_data(vd, time);
55 }
56