7#ifndef ZEPHYR_INCLUDE_TIME_UNITS_H_ 
    8#define ZEPHYR_INCLUDE_TIME_UNITS_H_ 
   24#define SYS_FOREVER_MS (-1) 
   30#define SYS_FOREVER_US (-1) 
   34#define SYS_TIMEOUT_MS(ms) ((ms) == SYS_FOREVER_MS ? K_FOREVER : K_MSEC(ms)) 
   38#if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME) 
   39__syscall 
int sys_clock_hw_cycles_per_sec_runtime_get(
void);
 
   41static inline int z_impl_sys_clock_hw_cycles_per_sec_runtime_get(
void)
 
   43        extern int z_clock_hw_cycles_per_sec;
 
   45        return z_clock_hw_cycles_per_sec;
 
   49#if defined(__cplusplus) && __cplusplus >= 201402L 
   50  #if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME) 
   51    #define TIME_CONSTEXPR 
   53    #define TIME_CONSTEXPR constexpr 
   56  #define TIME_CONSTEXPR 
   61#if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME) 
   62        return sys_clock_hw_cycles_per_sec_runtime_get();
 
   64        return CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC;
 
   79#define Z_TMCVT_USE_FAST_ALGO(from_hz, to_hz) \ 
   80        ((DIV_ROUND_UP(CONFIG_SYS_CLOCK_MAX_TIMEOUT_DAYS * 24ULL * 3600ULL * from_hz, \ 
   81                           UINT32_MAX) * to_hz) <= UINT32_MAX) 
  104                                                  bool result32, 
bool round_up,
 
  107        bool mul_ratio = const_hz &&
 
  108                (to_hz > from_hz) && ((to_hz % from_hz) == 0U);
 
  109        bool div_ratio = const_hz &&
 
  110                (from_hz > to_hz) && ((from_hz % to_hz) == 0U);
 
  112        if (from_hz == to_hz) {
 
  119                uint32_t rdivisor = div_ratio ? (from_hz / to_hz) : from_hz;
 
  136                if (result32 && (
t < 
BIT64(32))) {
 
  137                        return ((
uint32_t)
t) / (from_hz / to_hz);
 
  141        } 
else if (mul_ratio) {
 
  143                        return ((
uint32_t)
t) * (to_hz / from_hz);
 
  150                } 
else if (const_hz && Z_TMCVT_USE_FAST_ALGO(from_hz, to_hz)) {
 
  156                        return ((
t * to_hz + 
off) / from_hz);
 
  161                        return (
t / from_hz) * to_hz + ((
t % from_hz) * to_hz + 
off) / from_hz;
 
  235#define Z_HZ_us 1000000 
  236#define Z_HZ_ns 1000000000 
  237#define Z_HZ_cyc sys_clock_hw_cycles_per_sec() 
  238#define Z_HZ_ticks CONFIG_SYS_CLOCK_TICKS_PER_SEC 
  239#define Z_CCYC (!IS_ENABLED(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME)) 
  252        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
false);
 
  266        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
false);
 
  280        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
true);
 
  294        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
true);
 
  308        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, 
true, 
true, 
false);
 
  322        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, 
false, 
true, 
false);
 
  336        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_ticks, 
true, 
true, 
false, 
false);
 
  350        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_ticks, 
true, 
false, 
false, 
false);
 
  364        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_ticks, 
true, 
true, 
false, 
true);
 
  378        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_ticks, 
true, 
false, 
false, 
true);
 
  392        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_ticks, 
true, 
true, 
true, 
false);
 
  406        return z_tmcvt(
t, Z_HZ_ms, Z_HZ_ticks, 
true, 
false, 
true, 
false);
 
  420        return z_tmcvt(
t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
false);
 
  434        return z_tmcvt(
t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
false);
 
  448        return z_tmcvt(
t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
true);
 
  462        return z_tmcvt(
t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
true);
 
  476        return z_tmcvt(
t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, 
true, 
true, 
false);
 
  490        return z_tmcvt(
t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, 
false, 
true, 
false);
 
  504        return z_tmcvt(
t, Z_HZ_us, Z_HZ_ticks, 
true, 
true, 
false, 
false);
 
  518        return z_tmcvt(
t, Z_HZ_us, Z_HZ_ticks, 
true, 
false, 
false, 
false);
 
  532        return z_tmcvt(
t, Z_HZ_us, Z_HZ_ticks, 
true, 
true, 
false, 
true);
 
  546        return z_tmcvt(
t, Z_HZ_us, Z_HZ_ticks, 
true, 
false, 
false, 
true);
 
  560        return z_tmcvt(
t, Z_HZ_us, Z_HZ_ticks, 
true, 
true, 
true, 
false);
 
  574        return z_tmcvt(
t, Z_HZ_us, Z_HZ_ticks, 
true, 
false, 
true, 
false);
 
  588        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
false);
 
  602        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
false);
 
  616        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
true);
 
  630        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
true);
 
  644        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, 
true, 
true, 
false);
 
  658        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, 
false, 
true, 
false);
 
  672        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_ticks, 
true, 
true, 
false, 
false);
 
  686        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_ticks, 
true, 
false, 
false, 
false);
 
  700        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_ticks, 
true, 
true, 
false, 
true);
 
  714        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_ticks, 
true, 
false, 
false, 
true);
 
  728        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_ticks, 
true, 
true, 
true, 
false);
 
  742        return z_tmcvt(
t, Z_HZ_ns, Z_HZ_ticks, 
true, 
false, 
true, 
false);
 
  756        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, 
true, 
false, 
false);
 
  770        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, 
false, 
false, 
false);
 
  784        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, 
true, 
false, 
true);
 
  798        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, 
false, 
false, 
true);
 
  812        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, 
true, 
true, 
false);
 
  826        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, 
false, 
true, 
false);
 
  840        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, 
true, 
false, 
false);
 
  854        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, 
false, 
false, 
false);
 
  868        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, 
true, 
false, 
true);
 
  882        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, 
false, 
false, 
true);
 
  896        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, 
true, 
true, 
false);
 
  910        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, 
false, 
true, 
false);
 
  924        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, 
true, 
false, 
false);
 
  938        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, 
false, 
false, 
false);
 
  952        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, 
true, 
false, 
true);
 
  966        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, 
false, 
false, 
true);
 
  980        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, 
true, 
true, 
false);
 
  994        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, 
false, 
true, 
false);
 
 1008        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, 
true, 
false, 
false);
 
 1022        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, 
false, 
false, 
false);
 
 1036        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, 
true, 
false, 
true);
 
 1050        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, 
false, 
false, 
true);
 
 1064        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, 
true, 
true, 
false);
 
 1078        return z_tmcvt(
t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, 
false, 
true, 
false);
 
 1092        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ms, 
true, 
true, 
false, 
false);
 
 1106        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ms, 
true, 
false, 
false, 
false);
 
 1120        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ms, 
true, 
true, 
false, 
true);
 
 1134        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ms, 
true, 
false, 
false, 
true);
 
 1148        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ms, 
true, 
true, 
true, 
false);
 
 1162        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ms, 
true, 
false, 
true, 
false);
 
 1176        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_us, 
true, 
true, 
false, 
false);
 
 1190        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_us, 
true, 
false, 
false, 
false);
 
 1204        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_us, 
true, 
true, 
false, 
true);
 
 1218        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_us, 
true, 
false, 
false, 
true);
 
 1232        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_us, 
true, 
true, 
true, 
false);
 
 1246        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_us, 
true, 
false, 
true, 
false);
 
 1260        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ns, 
true, 
true, 
false, 
false);
 
 1274        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ns, 
true, 
false, 
false, 
false);
 
 1288        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ns, 
true, 
true, 
false, 
true);
 
 1302        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ns, 
true, 
false, 
false, 
true);
 
 1316        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ns, 
true, 
true, 
true, 
false);
 
 1330        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_ns, 
true, 
false, 
true, 
false);
 
 1344        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
false);
 
 1358        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
false);
 
 1372        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, 
true, 
false, 
true);
 
 1386        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, 
false, 
false, 
true);
 
 1400        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, 
true, 
true, 
false);
 
 1414        return z_tmcvt(
t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, 
false, 
true, 
false);
 
 1417#if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME) 
 1418#include <syscalls/time_units.h> 
 1421#undef TIME_CONSTEXPR 
irp nz macro MOVR cc s mov cc s endm endr irp aw macro LDR aa off
Definition: asm-macro-32-bit-gnu.h:17
 
#define ALWAYS_INLINE
Definition: common.h:124
 
#define BIT64(_n)
64-bit unsigned integer with bit position _n set.
Definition: util_macro.h:49
 
struct k_thread t
Definition: kobject.c:1327
 
__UINT32_TYPE__ uint32_t
Definition: stdint.h:90
 
__UINT64_TYPE__ uint64_t
Definition: stdint.h:91
 
static uint32_t k_ms_to_cyc_floor32(uint32_t t)
Convert milliseconds to hardware cycles.
Definition: time_units.h:249
 
static uint64_t k_cyc_to_ns_near64(uint64_t t)
Convert hardware cycles to nanoseconds.
Definition: time_units.h:963
 
static uint64_t k_ticks_to_ns_floor64(uint64_t t)
Convert ticks to nanoseconds.
Definition: time_units.h:1271
 
static uint64_t k_ms_to_cyc_near64(uint64_t t)
Convert milliseconds to hardware cycles.
Definition: time_units.h:291
 
static uint64_t k_ms_to_cyc_ceil64(uint64_t t)
Convert milliseconds to hardware cycles.
Definition: time_units.h:319
 
static uint32_t k_ticks_to_ms_near32(uint32_t t)
Convert ticks to milliseconds.
Definition: time_units.h:1117
 
static uint32_t k_ns_to_cyc_floor32(uint32_t t)
Convert nanoseconds to hardware cycles.
Definition: time_units.h:585
 
static uint32_t k_ticks_to_ns_near32(uint32_t t)
Convert ticks to nanoseconds.
Definition: time_units.h:1285
 
static uint32_t k_us_to_ticks_near32(uint32_t t)
Convert microseconds to ticks.
Definition: time_units.h:529
 
static uint32_t k_ns_to_ticks_floor32(uint32_t t)
Convert nanoseconds to ticks.
Definition: time_units.h:669
 
static uint64_t k_ns_to_ticks_ceil64(uint64_t t)
Convert nanoseconds to ticks.
Definition: time_units.h:739
 
static uint64_t k_cyc_to_ticks_floor64(uint64_t t)
Convert hardware cycles to ticks.
Definition: time_units.h:1019
 
static int sys_clock_hw_cycles_per_sec(void)
Definition: time_units.h:59
 
static uint64_t k_ticks_to_ns_near64(uint64_t t)
Convert ticks to nanoseconds.
Definition: time_units.h:1299
 
static uint64_t k_cyc_to_ms_floor64(uint64_t t)
Convert hardware cycles to milliseconds.
Definition: time_units.h:767
 
static uint64_t k_us_to_cyc_ceil64(uint64_t t)
Convert microseconds to hardware cycles.
Definition: time_units.h:487
 
static uint64_t k_ns_to_cyc_floor64(uint64_t t)
Convert nanoseconds to hardware cycles.
Definition: time_units.h:599
 
static uint64_t k_us_to_ticks_floor64(uint64_t t)
Convert microseconds to ticks.
Definition: time_units.h:515
 
static uint32_t k_cyc_to_us_ceil32(uint32_t t)
Convert hardware cycles to microseconds.
Definition: time_units.h:893
 
static uint32_t k_cyc_to_ns_floor32(uint32_t t)
Convert hardware cycles to nanoseconds.
Definition: time_units.h:921
 
static uint64_t k_ms_to_ticks_floor64(uint64_t t)
Convert milliseconds to ticks.
Definition: time_units.h:347
 
static uint64_t k_cyc_to_ms_ceil64(uint64_t t)
Convert hardware cycles to milliseconds.
Definition: time_units.h:823
 
static uint32_t k_us_to_cyc_ceil32(uint32_t t)
Convert microseconds to hardware cycles.
Definition: time_units.h:473
 
#define TIME_CONSTEXPR
Definition: time_units.h:56
 
static uint32_t k_ticks_to_ms_ceil32(uint32_t t)
Convert ticks to milliseconds.
Definition: time_units.h:1145
 
static uint32_t k_ticks_to_cyc_floor32(uint32_t t)
Convert ticks to hardware cycles.
Definition: time_units.h:1341
 
static uint64_t k_ticks_to_cyc_ceil64(uint64_t t)
Convert ticks to hardware cycles.
Definition: time_units.h:1411
 
static uint32_t k_us_to_ticks_floor32(uint32_t t)
Convert microseconds to ticks.
Definition: time_units.h:501
 
static uint32_t k_ns_to_ticks_near32(uint32_t t)
Convert nanoseconds to ticks.
Definition: time_units.h:697
 
static uint64_t k_ns_to_ticks_floor64(uint64_t t)
Convert nanoseconds to ticks.
Definition: time_units.h:683
 
static uint64_t k_ms_to_ticks_near64(uint64_t t)
Convert milliseconds to ticks.
Definition: time_units.h:375
 
static uint32_t k_ticks_to_ns_ceil32(uint32_t t)
Convert ticks to nanoseconds.
Definition: time_units.h:1313
 
static uint64_t k_us_to_cyc_near64(uint64_t t)
Convert microseconds to hardware cycles.
Definition: time_units.h:459
 
static uint32_t k_ns_to_cyc_near32(uint32_t t)
Convert nanoseconds to hardware cycles.
Definition: time_units.h:613
 
static uint64_t k_us_to_cyc_floor64(uint64_t t)
Convert microseconds to hardware cycles.
Definition: time_units.h:431
 
static uint32_t k_ticks_to_ns_floor32(uint32_t t)
Convert ticks to nanoseconds.
Definition: time_units.h:1257
 
static uint64_t k_cyc_to_ms_near64(uint64_t t)
Convert hardware cycles to milliseconds.
Definition: time_units.h:795
 
static uint32_t k_us_to_cyc_near32(uint32_t t)
Convert microseconds to hardware cycles.
Definition: time_units.h:445
 
static uint64_t k_ticks_to_ms_floor64(uint64_t t)
Convert ticks to milliseconds.
Definition: time_units.h:1103
 
static uint32_t k_ns_to_ticks_ceil32(uint32_t t)
Convert nanoseconds to ticks.
Definition: time_units.h:725
 
static uint32_t k_cyc_to_ms_near32(uint32_t t)
Convert hardware cycles to milliseconds.
Definition: time_units.h:781
 
static uint32_t k_cyc_to_ms_ceil32(uint32_t t)
Convert hardware cycles to milliseconds.
Definition: time_units.h:809
 
static uint64_t k_ns_to_ticks_near64(uint64_t t)
Convert nanoseconds to ticks.
Definition: time_units.h:711
 
static uint64_t k_ticks_to_us_near64(uint64_t t)
Convert ticks to microseconds.
Definition: time_units.h:1215
 
static uint32_t k_cyc_to_ticks_ceil32(uint32_t t)
Convert hardware cycles to ticks.
Definition: time_units.h:1061
 
static uint64_t k_ns_to_cyc_ceil64(uint64_t t)
Convert nanoseconds to hardware cycles.
Definition: time_units.h:655
 
static uint32_t k_ms_to_cyc_ceil32(uint32_t t)
Convert milliseconds to hardware cycles.
Definition: time_units.h:305
 
static uint32_t k_ticks_to_ms_floor32(uint32_t t)
Convert ticks to milliseconds.
Definition: time_units.h:1089
 
static uint32_t k_ms_to_ticks_floor32(uint32_t t)
Convert milliseconds to ticks.
Definition: time_units.h:333
 
static uint64_t k_cyc_to_ticks_near64(uint64_t t)
Convert hardware cycles to ticks.
Definition: time_units.h:1047
 
static uint64_t k_ticks_to_us_floor64(uint64_t t)
Convert ticks to microseconds.
Definition: time_units.h:1187
 
static uint64_t k_cyc_to_ns_floor64(uint64_t t)
Convert hardware cycles to nanoseconds.
Definition: time_units.h:935
 
static uint32_t k_cyc_to_ns_ceil32(uint32_t t)
Convert hardware cycles to nanoseconds.
Definition: time_units.h:977
 
static uint32_t k_cyc_to_us_floor32(uint32_t t)
Convert hardware cycles to microseconds.
Definition: time_units.h:837
 
static uint64_t k_cyc_to_us_floor64(uint64_t t)
Convert hardware cycles to microseconds.
Definition: time_units.h:851
 
static uint32_t k_us_to_cyc_floor32(uint32_t t)
Convert microseconds to hardware cycles.
Definition: time_units.h:417
 
static uint64_t k_ms_to_ticks_ceil64(uint64_t t)
Convert milliseconds to ticks.
Definition: time_units.h:403
 
static uint32_t k_us_to_ticks_ceil32(uint32_t t)
Convert microseconds to ticks.
Definition: time_units.h:557
 
static uint32_t k_ticks_to_us_near32(uint32_t t)
Convert ticks to microseconds.
Definition: time_units.h:1201
 
static uint32_t k_cyc_to_ticks_floor32(uint32_t t)
Convert hardware cycles to ticks.
Definition: time_units.h:1005
 
static uint32_t k_ticks_to_us_ceil32(uint32_t t)
Convert ticks to microseconds.
Definition: time_units.h:1229
 
static uint32_t k_ms_to_ticks_near32(uint32_t t)
Convert milliseconds to ticks.
Definition: time_units.h:361
 
static uint64_t k_cyc_to_ns_ceil64(uint64_t t)
Convert hardware cycles to nanoseconds.
Definition: time_units.h:991
 
static uint32_t k_ns_to_cyc_ceil32(uint32_t t)
Convert nanoseconds to hardware cycles.
Definition: time_units.h:641
 
static uint32_t k_ticks_to_cyc_ceil32(uint32_t t)
Convert ticks to hardware cycles.
Definition: time_units.h:1397
 
static uint64_t k_cyc_to_us_ceil64(uint64_t t)
Convert hardware cycles to microseconds.
Definition: time_units.h:907
 
static uint32_t k_ms_to_cyc_near32(uint32_t t)
Convert milliseconds to hardware cycles.
Definition: time_units.h:277
 
static uint32_t k_ticks_to_us_floor32(uint32_t t)
Convert ticks to microseconds.
Definition: time_units.h:1173
 
static uint32_t k_cyc_to_ms_floor32(uint32_t t)
Convert hardware cycles to milliseconds.
Definition: time_units.h:753
 
static uint64_t k_ticks_to_ms_near64(uint64_t t)
Convert ticks to milliseconds.
Definition: time_units.h:1131
 
static uint64_t k_ticks_to_us_ceil64(uint64_t t)
Convert ticks to microseconds.
Definition: time_units.h:1243
 
static uint64_t k_us_to_ticks_near64(uint64_t t)
Convert microseconds to ticks.
Definition: time_units.h:543
 
static uint32_t k_cyc_to_ns_near32(uint32_t t)
Convert hardware cycles to nanoseconds.
Definition: time_units.h:949
 
static uint32_t k_ticks_to_cyc_near32(uint32_t t)
Convert ticks to hardware cycles.
Definition: time_units.h:1369
 
static uint64_t k_cyc_to_ticks_ceil64(uint64_t t)
Convert hardware cycles to ticks.
Definition: time_units.h:1075
 
static uint32_t k_ms_to_ticks_ceil32(uint32_t t)
Convert milliseconds to ticks.
Definition: time_units.h:389
 
static uint64_t k_ticks_to_ms_ceil64(uint64_t t)
Convert ticks to milliseconds.
Definition: time_units.h:1159
 
static uint64_t k_ticks_to_cyc_floor64(uint64_t t)
Convert ticks to hardware cycles.
Definition: time_units.h:1355
 
static uint64_t k_cyc_to_us_near64(uint64_t t)
Convert hardware cycles to microseconds.
Definition: time_units.h:879
 
static uint64_t k_ticks_to_cyc_near64(uint64_t t)
Convert ticks to hardware cycles.
Definition: time_units.h:1383
 
static uint64_t k_ms_to_cyc_floor64(uint64_t t)
Convert milliseconds to hardware cycles.
Definition: time_units.h:263
 
static uint64_t k_ticks_to_ns_ceil64(uint64_t t)
Convert ticks to nanoseconds.
Definition: time_units.h:1327
 
static uint32_t k_cyc_to_ticks_near32(uint32_t t)
Convert hardware cycles to ticks.
Definition: time_units.h:1033
 
static uint64_t k_ns_to_cyc_near64(uint64_t t)
Convert nanoseconds to hardware cycles.
Definition: time_units.h:627
 
static uint64_t k_us_to_ticks_ceil64(uint64_t t)
Convert microseconds to ticks.
Definition: time_units.h:571
 
static uint32_t k_cyc_to_us_near32(uint32_t t)
Convert hardware cycles to microseconds.
Definition: time_units.h:865