diff options
author | Matias Elo <matias.elo@nokia.com> | 2024-01-05 10:48:28 +0200 |
---|---|---|
committer | Matias Elo <matias.elo@nokia.com> | 2024-01-29 12:53:15 +0200 |
commit | 1d7598ec65e335bca2d4e6de49e73062f24c6207 (patch) | |
tree | f79e8c7cfe1b5a160a8bf56ad31c5614a0bac585 /platform/linux-dpdk/include/odp/api | |
parent | d49671f07f2ad7db25107036abff5272798aece3 (diff) |
Port d2588efa5 "linux-gen: time: change to non-zero startup time"
Port original commit from linux-generic.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
Diffstat (limited to 'platform/linux-dpdk/include/odp/api')
-rw-r--r-- | platform/linux-dpdk/include/odp/api/plat/time_inlines.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/platform/linux-dpdk/include/odp/api/plat/time_inlines.h b/platform/linux-dpdk/include/odp/api/plat/time_inlines.h index b0d7ed012..f3d2a6947 100644 --- a/platform/linux-dpdk/include/odp/api/plat/time_inlines.h +++ b/platform/linux-dpdk/include/odp/api/plat/time_inlines.h @@ -1,5 +1,5 @@ /* Copyright (c) 2018, Linaro Limited - * Copyright (c) 2020-2023, Nokia + * Copyright (c) 2020-2024, Nokia * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause @@ -21,8 +21,9 @@ /** @cond _ODP_HIDE_FROM_DOXYGEN_ */ typedef struct _odp_time_global_t { - uint64_t start_cycles; uint64_t freq_hz; + uint64_t start_cycles; + uint64_t start_ns; } _odp_time_global_t; @@ -32,7 +33,7 @@ static inline odp_time_t _odp_time_cur(void) { odp_time_t time; - time.u64 = rte_get_timer_cycles() - _odp_time_glob.start_cycles; + time.u64 = rte_get_timer_cycles(); return time; } @@ -42,7 +43,7 @@ static inline odp_time_t _odp_time_cur_strict(void) odp_time_t time; rte_mb(); - time.u64 = rte_get_timer_cycles() - _odp_time_glob.start_cycles; + time.u64 = rte_get_timer_cycles(); return time; } @@ -108,7 +109,7 @@ static inline odp_time_t _odp_time_from_ns(uint64_t ns) #define odp_time_sum __odp_time_sum #define odp_time_wait_ns __odp_time_wait_ns #define odp_time_wait_until __odp_time_wait_until - + #define odp_time_startup __odp_time_startup #else #define _ODP_INLINE #endif @@ -248,6 +249,12 @@ _ODP_INLINE void odp_time_wait_until(odp_time_t time) _odp_time_wait_until(time); } +_ODP_INLINE void odp_time_startup(odp_time_startup_t *startup) +{ + startup->global.u64 = _odp_time_glob.start_cycles; + startup->global_ns = _odp_time_glob.start_ns; +} + /** @endcond */ #endif |