2 * clock_getres() for uClibc
4 * Copyright (C) 2005 by Peter Kjellerstedt <pkj@axis.com>
5 * Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
7 * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
10 #include <sys/syscall.h>
13 #if defined(__UCLIBC_USE_TIME64__) && defined(__NR_clock_getres_time64)
14 #include "internal/time64_helpers.h"
16 int clock_getres(clockid_t clock_id
, struct timespec
*res
)
18 struct __ts64_struct __ts64
;
19 int __ret
= INLINE_SYSCALL(clock_getres_time64
, 2, clock_id
, &__ts64
);
20 if (__ret
== 0 && res
) {
21 res
->tv_sec
= __ts64
.tv_sec
;
22 res
->tv_nsec
= __ts64
.tv_nsec
;
27 #elif defined(__NR_clock_getres)
28 _syscall2(int, clock_getres
, clockid_t
, clock_id
, struct timespec
*, res
)
32 int clock_getres(clockid_t clock_id
, struct timespec
* res
)
41 if ((clk_tck
= sysconf(_SC_CLK_TCK
)) < 0)
44 res
->tv_nsec
= 1000000000 / clk_tck
;
57 libc_hidden_def(clock_getres
)