diff options
Diffstat (limited to 'src/arch/posix')
-rw-r--r-- | src/arch/posix/Makefile.inc | 2 | ||||
-rw-r--r-- | src/arch/posix/driver/uptime.cc | 11 |
2 files changed, 12 insertions, 1 deletions
diff --git a/src/arch/posix/Makefile.inc b/src/arch/posix/Makefile.inc index 9dd723d..7553fd4 100644 --- a/src/arch/posix/Makefile.inc +++ b/src/arch/posix/Makefile.inc @@ -5,7 +5,7 @@ CXX = g++ INCLUDES += -Iinclude/posix TARGETS += src/arch/posix/arch.cc src/arch/posix/driver/gpio.cc -TARGETS += src/arch/posix/driver/stdout.cc +TARGETS += src/arch/posix/driver/stdout.cc src/arch/posix/driver/uptime.cc OBJECTS = ${TARGETS:.cc=.o} diff --git a/src/arch/posix/driver/uptime.cc b/src/arch/posix/driver/uptime.cc new file mode 100644 index 0000000..040b51c --- /dev/null +++ b/src/arch/posix/driver/uptime.cc @@ -0,0 +1,11 @@ +#include "driver/uptime.h" +#include <time.h> + +uint64_t Uptime::get() +{ + struct timespec ts; + clock_gettime(CLOCK_REALTIME, &ts); + return (uint64_t)ts.tv_nsec + (1000000ULL * ((uint64_t)ts.tv_sec % 256)); +} + +Uptime uptime; |