LCOV - code coverage report
Current view: top level - zephyr/sys - time_units.h Coverage Total Hit
Test: new.info Lines: 98.3 % 115 113
Test Date: 2025-09-05 20:47:19

            Line data    Source code
       1            0 : /*
       2              :  * Copyright (c) 2019 Intel Corporation
       3              :  *
       4              :  * SPDX-License-Identifier: Apache-2.0
       5              :  */
       6              : 
       7              : #ifndef ZEPHYR_INCLUDE_TIME_UNITS_H_
       8              : #define ZEPHYR_INCLUDE_TIME_UNITS_H_
       9              : 
      10              : #include <zephyr/toolchain.h>
      11              : #include <zephyr/sys/util.h>
      12              : 
      13              : #ifdef __cplusplus
      14              : extern "C" {
      15              : #endif
      16              : 
      17              : /**
      18              :  * @file
      19              :  * @defgroup timeutil_unit_apis Time Units Helpers
      20              :  * @ingroup timeutil_apis
      21              :  *
      22              :  * @brief Various helper APIs for converting between time units.
      23              :  * @{
      24              :  */
      25              : 
      26              : /** @brief System-wide macro to denote "forever" in milliseconds
      27              :  *
      28              :  *  Usage of this macro is limited to APIs that want to expose a timeout value
      29              :  *  that can optionally be unlimited, or "forever".
      30              :  *  This macro can not be fed into kernel functions or macros directly. Use
      31              :  *  @ref SYS_TIMEOUT_MS instead.
      32              :  */
      33            1 : #define SYS_FOREVER_MS (-1)
      34              : 
      35              : /** @brief System-wide macro to denote "forever" in microseconds
      36              :  *
      37              :  * See @ref SYS_FOREVER_MS.
      38              :  */
      39            1 : #define SYS_FOREVER_US (-1)
      40              : 
      41              : /** @brief System-wide macro to initialize #k_timeout_t with a number of ticks
      42              :  * converted from milliseconds.
      43              :  */
      44            1 : #define SYS_TIMEOUT_MS_INIT(ms) \
      45              :         Z_TIMEOUT_TICKS_INIT((ms) == SYS_FOREVER_MS ? \
      46              :         K_TICKS_FOREVER : Z_TIMEOUT_MS_TICKS(ms))
      47              : 
      48              : /** @brief System-wide macro to convert milliseconds to kernel timeouts
      49              :  */
      50            1 : #define SYS_TIMEOUT_MS(ms) ((k_timeout_t) SYS_TIMEOUT_MS_INIT(ms))
      51              : 
      52              : /* Exhaustively enumerated, highly optimized time unit conversion API */
      53              : 
      54              : #if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME)
      55              : __syscall unsigned int sys_clock_hw_cycles_per_sec_runtime_get(void);
      56              : 
      57              : static inline unsigned int z_impl_sys_clock_hw_cycles_per_sec_runtime_get(void)
      58              : {
      59              :         extern unsigned int z_clock_hw_cycles_per_sec;
      60              : 
      61              :         return z_clock_hw_cycles_per_sec;
      62              : }
      63              : #endif /* CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME */
      64              : 
      65              : #if defined(__cplusplus) && (__cplusplus >= 201402L)
      66              :   #if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME)
      67              :     #define TIME_CONSTEXPR
      68              :   #else
      69              :     #define TIME_CONSTEXPR constexpr
      70              :   #endif
      71              : #else
      72            0 :   #define TIME_CONSTEXPR
      73              : #endif
      74              : 
      75              : /**
      76              :  * @brief Get the system timer frequency.
      77              :  * @return system timer frequency in Hz
      78              :  */
      79              : #if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME)
      80              : #define sys_clock_hw_cycles_per_sec() sys_clock_hw_cycles_per_sec_runtime_get()
      81              : #else
      82            1 : #define sys_clock_hw_cycles_per_sec() (uint32_t)CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC
      83              : #endif
      84              : 
      85              : /** @internal
      86              :  * Macro determines if fast conversion algorithm can be used. It checks if
      87              :  * maximum timeout represented in source frequency domain and multiplied by
      88              :  * target frequency fits in 64 bits.
      89              :  *
      90              :  * @param from_hz Source frequency.
      91              :  * @param to_hz Target frequency.
      92              :  *
      93              :  * @retval true Use faster algorithm.
      94              :  * @retval false Use algorithm preventing overflow of intermediate value.
      95              :  */
      96              : #define z_tmcvt_use_fast_algo(from_hz, to_hz) \
      97              :         ((DIV_ROUND_UP(CONFIG_SYS_CLOCK_MAX_TIMEOUT_DAYS * 24ULL * 3600ULL * from_hz, \
      98              :                            UINT32_MAX) * to_hz) <= UINT32_MAX)
      99              : 
     100              : /* Time converter generator gadget.  Selects from one of three
     101              :  * conversion algorithms: ones that take advantage when the
     102              :  * frequencies are an integer ratio (in either direction), or a full
     103              :  * precision conversion.  Clever use of extra arguments causes all the
     104              :  * selection logic to be optimized out, and the generated code even
     105              :  * reduces to 32 bit only if a ratio conversion is available and the
     106              :  * result is 32 bits.
     107              :  *
     108              :  * This isn't intended to be used directly, instead being wrapped
     109              :  * appropriately in a user-facing API.  The boolean arguments are:
     110              :  *
     111              :  *    const_hz  - The hz arguments are known to be compile-time
     112              :  *                constants (because otherwise the modulus test would
     113              :  *                have to be done at runtime)
     114              :  *    result32  - The result will be truncated to 32 bits on use
     115              :  *    round_up  - Return the ceiling of the resulting fraction
     116              :  *    round_off - Return the nearest value to the resulting fraction
     117              :  *                (pass both round_up/off as false to get "round_down")
     118              :  *
     119              :  * All of this must be implemented as expressions so that, when constant,
     120              :  * the results may be used to initialize global variables.
     121              :  */
     122              : 
     123              : /* true if the conversion is the identity */
     124              : #define z_tmcvt_is_identity(__from_hz, __to_hz) \
     125              :         ((__to_hz) == (__from_hz))
     126              : 
     127              : /* true if the conversion requires a simple integer multiply */
     128              : #define z_tmcvt_is_int_mul(__from_hz, __to_hz) \
     129              :         ((__to_hz) > (__from_hz) && (__to_hz) % (__from_hz) == 0U)
     130              : 
     131              : /* true if the conversion requires a simple integer division */
     132              : #define z_tmcvt_is_int_div(__from_hz, __to_hz) \
     133              :         ((__from_hz) > (__to_hz) && (__from_hz) % (__to_hz) == 0U)
     134              : 
     135              : /*
     136              :  * Compute the offset needed to round the result correctly when
     137              :  * the conversion requires a simple integer division
     138              :  */
     139              : #define z_tmcvt_off_div(__from_hz, __to_hz, __round_up, __round_off)    \
     140              :         ((__round_off) ? ((__from_hz) / (__to_hz)) / 2 :                \
     141              :          (__round_up) ? ((__from_hz) / (__to_hz)) - 1 :                 \
     142              :          0)
     143              : 
     144              : /*
     145              :  * All users of this macro MUST ensure its output is never used when a/b
     146              :  * is zero because it incorrectly but by design never returns zero.
     147              :  *
     148              :  * Some compiler versions emit a divide-by-zero warning for this code:
     149              :  * "false ? 42/0 : 43". Dealing with (generated) dead code is hard:
     150              :  * https://github.com/zephyrproject-rtos/zephyr/issues/63564
     151              :  * https://blog.llvm.org/2011/05/what-every-c-programmer-should-know_21.html
     152              :  *
     153              :  * To silence such divide-by-zero warnings, "cheat" and never return
     154              :  * zero.  Return 1 instead. Use octal "01u" as a breadcrumb to ease a
     155              :  * little bit the huge pain of "reverse-engineering" pre-processor
     156              :  * output.
     157              :  *
     158              :  * The "Elvis" operator "a/b ?: 1" is tempting because it avoids
     159              :  * evaluating the same expression twice. However: 1. it's a non-standard
     160              :  * GNU extension; 2. everything in this file is designed to be computed
     161              :  * at compile time anyway.
     162              :  */
     163              : #define z_tmcvt_divisor(a, b) ((a)/(b) ? (a)/(b) : 01u)
     164              : 
     165              : /*
     166              :  * Compute the offset needed to round the result correctly when
     167              :  * the conversion requires a full mul/div
     168              :  */
     169              : #define z_tmcvt_off_gen(__from_hz, __to_hz, __round_up, __round_off)    \
     170              :         ((__round_off) ? (__from_hz) / 2 :                              \
     171              :          (__round_up) ? (__from_hz) - 1 :                               \
     172              :          0)
     173              : 
     174              : /* Integer division 32-bit conversion */
     175              : #define z_tmcvt_int_div_32(__t, __from_hz, __to_hz, __round_up, __round_off) \
     176              :         ((uint64_t) (__t) <= 0xffffffffU -                           \
     177              :          z_tmcvt_off_div(__from_hz, __to_hz, __round_up, __round_off) ? \
     178              :          ((uint32_t)(((__t) +                                           \
     179              :                      z_tmcvt_off_div(__from_hz, __to_hz,                \
     180              :                                      __round_up, __round_off)) /        \
     181              :           z_tmcvt_divisor(__from_hz, __to_hz)))                         \
     182              :          :                                                              \
     183              :          (uint32_t) (((uint64_t) (__t) +                                \
     184              :                       z_tmcvt_off_div(__from_hz, __to_hz,               \
     185              :                                       __round_up, __round_off)) /       \
     186              :                      z_tmcvt_divisor(__from_hz, __to_hz))               \
     187              :                 )
     188              : 
     189              : /* Integer multiplication 32-bit conversion */
     190              : #define z_tmcvt_int_mul_32(__t, __from_hz, __to_hz)     \
     191              :         ((uint32_t) ((__t)*((__to_hz) / (__from_hz))))
     192              : 
     193              : /* General 32-bit conversion */
     194              : #define z_tmcvt_gen_32(__t, __from_hz, __to_hz, __round_up, __round_off) \
     195              :         ((uint32_t) (((uint64_t) (__t)*(__to_hz) +                      \
     196              :                       z_tmcvt_off_gen(__from_hz, __to_hz, __round_up, __round_off)) / (__from_hz)))
     197              : 
     198              : /* Integer division 64-bit conversion */
     199              : #define z_tmcvt_int_div_64(__t, __from_hz, __to_hz, __round_up, __round_off) \
     200              :         (((uint64_t) (__t) + z_tmcvt_off_div(__from_hz, __to_hz,        \
     201              :                                              __round_up, __round_off)) / \
     202              :         z_tmcvt_divisor(__from_hz, __to_hz))
     203              : 
     204              : /* Integer multiplication 64-bit conversion */
     205              : #define z_tmcvt_int_mul_64(__t, __from_hz, __to_hz)     \
     206              :         (uint64_t) (__t)*((__to_hz) / (__from_hz))
     207              : 
     208              : /* Fast 64-bit conversion. This relies on the multiply not overflowing */
     209              : #define z_tmcvt_gen_64_fast(__t, __from_hz, __to_hz, __round_up, __round_off) \
     210              :         (((uint64_t) (__t)*(__to_hz) + \
     211              :           z_tmcvt_off_gen(__from_hz, __to_hz, __round_up, __round_off)) / (__from_hz))
     212              : 
     213              : /* Slow 64-bit conversion. This avoids overflowing the multiply */
     214              : #define z_tmcvt_gen_64_slow(__t, __from_hz, __to_hz, __round_up, __round_off) \
     215              :         ((((uint64_t) (__t) / (__from_hz))*(__to_hz)) +                 \
     216              :          (((((uint64_t) (__t) % (__from_hz))*(__to_hz)) +               \
     217              :           z_tmcvt_off_gen(__from_hz, __to_hz, __round_up, __round_off)) / (__from_hz)))
     218              : 
     219              : /* General 64-bit conversion. Uses one of the two above macros */
     220              : #define z_tmcvt_gen_64(__t, __from_hz, __to_hz, __round_up, __round_off) \
     221              :         (z_tmcvt_use_fast_algo(__from_hz, __to_hz) ?                    \
     222              :          z_tmcvt_gen_64_fast(__t, __from_hz, __to_hz, __round_up, __round_off) : \
     223              :          z_tmcvt_gen_64_slow(__t, __from_hz, __to_hz, __round_up, __round_off))
     224              : 
     225              : /* Convert, generating a 32-bit result */
     226              : #define z_tmcvt_32(__t, __from_hz, __to_hz, __const_hz, __round_up, __round_off) \
     227              :         ((__const_hz) ?                                                 \
     228              :          (                                                              \
     229              :                  z_tmcvt_is_identity(__from_hz, __to_hz) ?              \
     230              :                  (uint32_t) (__t)                                       \
     231              :                  :                                                      \
     232              :                  z_tmcvt_is_int_div(__from_hz, __to_hz) ?               \
     233              :                  z_tmcvt_int_div_32(__t, __from_hz, __to_hz, __round_up, __round_off) \
     234              :                  :                                                      \
     235              :                  z_tmcvt_is_int_mul(__from_hz, __to_hz) ?               \
     236              :                  z_tmcvt_int_mul_32(__t, __from_hz, __to_hz)            \
     237              :                  :                                                      \
     238              :                  z_tmcvt_gen_32(__t, __from_hz, __to_hz, __round_up, __round_off) \
     239              :                  )                                                      \
     240              :          :                                                              \
     241              :          z_tmcvt_gen_32(__t, __from_hz, __to_hz, __round_up, __round_off) \
     242              :                 )
     243              : 
     244              : /* Convert, generating a 64-bit result */
     245              : #define z_tmcvt_64(__t, __from_hz, __to_hz, __const_hz, __round_up, __round_off) \
     246              :         ((__const_hz) ?                                                 \
     247              :          (                                                              \
     248              :                  z_tmcvt_is_identity(__from_hz, __to_hz) ?              \
     249              :                  (uint64_t) (__t)                                       \
     250              :                  :                                                      \
     251              :                  z_tmcvt_is_int_div(__from_hz, __to_hz) ?               \
     252              :                  z_tmcvt_int_div_64(__t, __from_hz, __to_hz, __round_up, __round_off) \
     253              :                  :                                                      \
     254              :                  z_tmcvt_is_int_mul(__from_hz, __to_hz) ?               \
     255              :                  z_tmcvt_int_mul_64(__t, __from_hz, __to_hz)            \
     256              :                  :                                                      \
     257              :                  z_tmcvt_gen_64(__t, __from_hz, __to_hz, __round_up, __round_off) \
     258              :                  )                                                      \
     259              :          :                                                              \
     260              :          z_tmcvt_gen_64_slow(__t, __from_hz, __to_hz, __round_up, __round_off) \
     261              :                 )
     262              : 
     263              : #define z_tmcvt(__t, __from_hz, __to_hz, __const_hz, __result32, __round_up, __round_off) \
     264              :         ((__result32) ?                                                 \
     265              :          z_tmcvt_32(__t, __from_hz, __to_hz, __const_hz, __round_up, __round_off) : \
     266              :          z_tmcvt_64(__t, __from_hz, __to_hz, __const_hz, __round_up, __round_off))
     267              : 
     268              : /* The following code is programmatically generated using this perl
     269              :  * code, which enumerates all possible combinations of units, rounding
     270              :  * modes and precision.  Do not edit directly.
     271              :  *
     272              :  * Note that nano/microsecond conversions are only defined with 64 bit
     273              :  * precision.  These units conversions were not available in 32 bit
     274              :  * variants historically, and doing 32 bit math with units that small
     275              :  * has precision traps that we probably don't want to support in an
     276              :  * official API.
     277              :  *
     278              :  * #!/usr/bin/perl -w
     279              :  * use strict;
     280              :  *
     281              :  * my %human = ("sec" => "seconds",
     282              :  *              "ms" => "milliseconds",
     283              :  *              "us" => "microseconds",
     284              :  *              "ns" => "nanoseconds",
     285              :  *              "cyc" => "hardware cycles",
     286              :  *              "ticks" => "ticks");
     287              :  * my %human_round = ("ceil" => "Rounds up",
     288              :  *                    "near" => "Round nearest",
     289              :  *                    "floor" => "Truncates");
     290              :  *
     291              :  * sub big { return $_[0] eq "us" || $_[0] eq "ns"; }
     292              :  * sub prefix { return $_[0] eq "sec" || $_[0] eq "ms" || $_[0] eq "us" || $_[0] eq "ns"; }
     293              :  *
     294              :  * for my $from_unit ("sec", "ms", "us", "ns", "cyc", "ticks") {
     295              :  *     for my $to_unit ("sec", "ms", "us", "ns", "cyc", "ticks") {
     296              :  *         next if $from_unit eq $to_unit;
     297              :  *         next if prefix($from_unit) && prefix($to_unit);
     298              :  *         for my $round ("floor", "near", "ceil") {
     299              :  *             for(my $big=0; $big <= 1; $big++) {
     300              :  *                 my $sz = $big ? 64 : 32;
     301              :  *                 my $sym = "k_${from_unit}_to_${to_unit}_$round$sz";
     302              :  *                 my $type = "uint${sz}_t";
     303              :  *                 my $const_hz = ($from_unit eq "cyc" || $to_unit eq "cyc")
     304              :  *                     ? "Z_CCYC" : "true";
     305              :  *                 my $ret32 = $big ? "64" : "32";
     306              :  *                 my $rup = $round eq "ceil" ? "true" : "false";
     307              :  *                 my $roff = $round eq "near" ? "true" : "false";
     308              :  *
     309              :  *                 my $hfrom = $human{$from_unit};
     310              :  *                 my $hto = $human{$to_unit};
     311              :  *                 my $hround = $human_round{$round};
     312              :  *                 print "/", "** \@brief Convert $hfrom to $hto. $ret32 bits. $hround.\n";
     313              :  *                 print " *\n";
     314              :  *                 print " * Converts time values in $hfrom to $hto.\n";
     315              :  *                 print " * Computes result in $sz bit precision.\n";
     316              :  *                 if ($round eq "ceil") {
     317              :  *                     print " * Rounds up to the next highest output unit.\n";
     318              :  *                 } elsif ($round eq "near") {
     319              :  *                     print " * Rounds to the nearest output unit.\n";
     320              :  *                 } else {
     321              :  *                     print " * Truncates to the next lowest output unit.\n";
     322              :  *                 }
     323              :  *                 print " *\n";
     324              :  *                 print " * \@warning Generated. Do not edit. See above.\n";
     325              :  *                 print " *\n";
     326              :  *                 print " * \@param t Source time in $hfrom. uint64_t\n";
     327              :  *                 print " *\n";
     328              :  *                 print " * \@return The converted time value in $hto. $type\n";
     329              :  *                 print " *", "/\n";
     330              :  *                 print "#define $sym(t) \\\n";
     331              :  *                 print "\tz_tmcvt_$ret32(t, Z_HZ_$from_unit, Z_HZ_$to_unit,";
     332              :  *                 print " $const_hz, $rup, $roff)\n";
     333              :  *                 print "\n\n";
     334              :  *             }
     335              :  *         }
     336              :  *     }
     337              :  * }
     338              :  */
     339              : 
     340              : /* Some more concise declarations to simplify the generator script and
     341              :  * save bytes below
     342              :  */
     343              : #define Z_HZ_sec 1
     344              : #define Z_HZ_ms 1000
     345              : #define Z_HZ_us 1000000
     346              : #define Z_HZ_ns 1000000000
     347              : #define Z_HZ_cyc sys_clock_hw_cycles_per_sec()
     348              : #define Z_HZ_ticks CONFIG_SYS_CLOCK_TICKS_PER_SEC
     349              : #define Z_CCYC (!IS_ENABLED(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME))
     350              : 
     351              : /** @brief Convert seconds to hardware cycles. 32 bits. Truncates.
     352              :  *
     353              :  * Converts time values in seconds to hardware cycles.
     354              :  * Computes result in 32 bit precision.
     355              :  * Truncates to the next lowest output unit.
     356              :  *
     357              :  * @warning Generated. Do not edit. See above.
     358              :  *
     359              :  * @param t Source time in seconds. uint64_t
     360              :  *
     361              :  * @return The converted time value in hardware cycles. uint32_t
     362              :  */
     363            1 : #define k_sec_to_cyc_floor32(t) \
     364              :         z_tmcvt_32(t, Z_HZ_sec, Z_HZ_cyc, Z_CCYC, false, false)
     365              : 
     366              : 
     367              : /** @brief Convert seconds to hardware cycles. 64 bits. Truncates.
     368              :  *
     369              :  * Converts time values in seconds to hardware cycles.
     370              :  * Computes result in 64 bit precision.
     371              :  * Truncates to the next lowest output unit.
     372              :  *
     373              :  * @warning Generated. Do not edit. See above.
     374              :  *
     375              :  * @param t Source time in seconds. uint64_t
     376              :  *
     377              :  * @return The converted time value in hardware cycles. uint64_t
     378              :  */
     379            1 : #define k_sec_to_cyc_floor64(t) \
     380              :         z_tmcvt_64(t, Z_HZ_sec, Z_HZ_cyc, Z_CCYC, false, false)
     381              : 
     382              : 
     383              : /** @brief Convert seconds to hardware cycles. 32 bits. Round nearest.
     384              :  *
     385              :  * Converts time values in seconds to hardware cycles.
     386              :  * Computes result in 32 bit precision.
     387              :  * Rounds to the nearest output unit.
     388              :  *
     389              :  * @warning Generated. Do not edit. See above.
     390              :  *
     391              :  * @param t Source time in seconds. uint64_t
     392              :  *
     393              :  * @return The converted time value in hardware cycles. uint32_t
     394              :  */
     395            1 : #define k_sec_to_cyc_near32(t) \
     396              :         z_tmcvt_32(t, Z_HZ_sec, Z_HZ_cyc, Z_CCYC, false, true)
     397              : 
     398              : 
     399              : /** @brief Convert seconds to hardware cycles. 64 bits. Round nearest.
     400              :  *
     401              :  * Converts time values in seconds to hardware cycles.
     402              :  * Computes result in 64 bit precision.
     403              :  * Rounds to the nearest output unit.
     404              :  *
     405              :  * @warning Generated. Do not edit. See above.
     406              :  *
     407              :  * @param t Source time in seconds. uint64_t
     408              :  *
     409              :  * @return The converted time value in hardware cycles. uint64_t
     410              :  */
     411            1 : #define k_sec_to_cyc_near64(t) \
     412              :         z_tmcvt_64(t, Z_HZ_sec, Z_HZ_cyc, Z_CCYC, false, true)
     413              : 
     414              : 
     415              : /** @brief Convert seconds to hardware cycles. 32 bits. Rounds up.
     416              :  *
     417              :  * Converts time values in seconds to hardware cycles.
     418              :  * Computes result in 32 bit precision.
     419              :  * Rounds up to the next highest output unit.
     420              :  *
     421              :  * @warning Generated. Do not edit. See above.
     422              :  *
     423              :  * @param t Source time in seconds. uint64_t
     424              :  *
     425              :  * @return The converted time value in hardware cycles. uint32_t
     426              :  */
     427            1 : #define k_sec_to_cyc_ceil32(t) \
     428              :         z_tmcvt_32(t, Z_HZ_sec, Z_HZ_cyc, Z_CCYC, true, false)
     429              : 
     430              : 
     431              : /** @brief Convert seconds to hardware cycles. 64 bits. Rounds up.
     432              :  *
     433              :  * Converts time values in seconds to hardware cycles.
     434              :  * Computes result in 64 bit precision.
     435              :  * Rounds up to the next highest output unit.
     436              :  *
     437              :  * @warning Generated. Do not edit. See above.
     438              :  *
     439              :  * @param t Source time in seconds. uint64_t
     440              :  *
     441              :  * @return The converted time value in hardware cycles. uint64_t
     442              :  */
     443            1 : #define k_sec_to_cyc_ceil64(t) \
     444              :         z_tmcvt_64(t, Z_HZ_sec, Z_HZ_cyc, Z_CCYC, true, false)
     445              : 
     446              : 
     447              : /** @brief Convert seconds to ticks. 32 bits. Truncates.
     448              :  *
     449              :  * Converts time values in seconds to ticks.
     450              :  * Computes result in 32 bit precision.
     451              :  * Truncates to the next lowest output unit.
     452              :  *
     453              :  * @warning Generated. Do not edit. See above.
     454              :  *
     455              :  * @param t Source time in seconds. uint64_t
     456              :  *
     457              :  * @return The converted time value in ticks. uint32_t
     458              :  */
     459            1 : #define k_sec_to_ticks_floor32(t) \
     460              :         z_tmcvt_32(t, Z_HZ_sec, Z_HZ_ticks, true, false, false)
     461              : 
     462              : 
     463              : /** @brief Convert seconds to ticks. 64 bits. Truncates.
     464              :  *
     465              :  * Converts time values in seconds to ticks.
     466              :  * Computes result in 64 bit precision.
     467              :  * Truncates to the next lowest output unit.
     468              :  *
     469              :  * @warning Generated. Do not edit. See above.
     470              :  *
     471              :  * @param t Source time in seconds. uint64_t
     472              :  *
     473              :  * @return The converted time value in ticks. uint64_t
     474              :  */
     475            1 : #define k_sec_to_ticks_floor64(t) \
     476              :         z_tmcvt_64(t, Z_HZ_sec, Z_HZ_ticks, true, false, false)
     477              : 
     478              : 
     479              : /** @brief Convert seconds to ticks. 32 bits. Round nearest.
     480              :  *
     481              :  * Converts time values in seconds to ticks.
     482              :  * Computes result in 32 bit precision.
     483              :  * Rounds to the nearest output unit.
     484              :  *
     485              :  * @warning Generated. Do not edit. See above.
     486              :  *
     487              :  * @param t Source time in seconds. uint64_t
     488              :  *
     489              :  * @return The converted time value in ticks. uint32_t
     490              :  */
     491            1 : #define k_sec_to_ticks_near32(t) \
     492              :         z_tmcvt_32(t, Z_HZ_sec, Z_HZ_ticks, true, false, true)
     493              : 
     494              : 
     495              : /** @brief Convert seconds to ticks. 64 bits. Round nearest.
     496              :  *
     497              :  * Converts time values in seconds to ticks.
     498              :  * Computes result in 64 bit precision.
     499              :  * Rounds to the nearest output unit.
     500              :  *
     501              :  * @warning Generated. Do not edit. See above.
     502              :  *
     503              :  * @param t Source time in seconds. uint64_t
     504              :  *
     505              :  * @return The converted time value in ticks. uint64_t
     506              :  */
     507            1 : #define k_sec_to_ticks_near64(t) \
     508              :         z_tmcvt_64(t, Z_HZ_sec, Z_HZ_ticks, true, false, true)
     509              : 
     510              : 
     511              : /** @brief Convert seconds to ticks. 32 bits. Rounds up.
     512              :  *
     513              :  * Converts time values in seconds to ticks.
     514              :  * Computes result in 32 bit precision.
     515              :  * Rounds up to the next highest output unit.
     516              :  *
     517              :  * @warning Generated. Do not edit. See above.
     518              :  *
     519              :  * @param t Source time in seconds. uint64_t
     520              :  *
     521              :  * @return The converted time value in ticks. uint32_t
     522              :  */
     523            1 : #define k_sec_to_ticks_ceil32(t) \
     524              :         z_tmcvt_32(t, Z_HZ_sec, Z_HZ_ticks, true, true, false)
     525              : 
     526              : 
     527              : /** @brief Convert seconds to ticks. 64 bits. Rounds up.
     528              :  *
     529              :  * Converts time values in seconds to ticks.
     530              :  * Computes result in 64 bit precision.
     531              :  * Rounds up to the next highest output unit.
     532              :  *
     533              :  * @warning Generated. Do not edit. See above.
     534              :  *
     535              :  * @param t Source time in seconds. uint64_t
     536              :  *
     537              :  * @return The converted time value in ticks. uint64_t
     538              :  */
     539            1 : #define k_sec_to_ticks_ceil64(t) \
     540              :         z_tmcvt_64(t, Z_HZ_sec, Z_HZ_ticks, true, true, false)
     541              : 
     542              : 
     543              : /** @brief Convert milliseconds to hardware cycles. 32 bits. Truncates.
     544              :  *
     545              :  * Converts time values in milliseconds to hardware cycles.
     546              :  * Computes result in 32 bit precision.
     547              :  * Truncates to the next lowest output unit.
     548              :  *
     549              :  * @warning Generated. Do not edit. See above.
     550              :  *
     551              :  * @param t Source time in milliseconds. uint64_t
     552              :  *
     553              :  * @return The converted time value in hardware cycles. uint32_t
     554              :  */
     555            1 : #define k_ms_to_cyc_floor32(t) \
     556              :         z_tmcvt_32(t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, false, false)
     557              : 
     558              : 
     559              : /** @brief Convert milliseconds to hardware cycles. 64 bits. Truncates.
     560              :  *
     561              :  * Converts time values in milliseconds to hardware cycles.
     562              :  * Computes result in 64 bit precision.
     563              :  * Truncates to the next lowest output unit.
     564              :  *
     565              :  * @warning Generated. Do not edit. See above.
     566              :  *
     567              :  * @param t Source time in milliseconds. uint64_t
     568              :  *
     569              :  * @return The converted time value in hardware cycles. uint64_t
     570              :  */
     571            1 : #define k_ms_to_cyc_floor64(t) \
     572              :         z_tmcvt_64(t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, false, false)
     573              : 
     574              : 
     575              : /** @brief Convert milliseconds to hardware cycles. 32 bits. Round nearest.
     576              :  *
     577              :  * Converts time values in milliseconds to hardware cycles.
     578              :  * Computes result in 32 bit precision.
     579              :  * Rounds to the nearest output unit.
     580              :  *
     581              :  * @warning Generated. Do not edit. See above.
     582              :  *
     583              :  * @param t Source time in milliseconds. uint64_t
     584              :  *
     585              :  * @return The converted time value in hardware cycles. uint32_t
     586              :  */
     587            1 : #define k_ms_to_cyc_near32(t) \
     588              :         z_tmcvt_32(t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, false, true)
     589              : 
     590              : 
     591              : /** @brief Convert milliseconds to hardware cycles. 64 bits. Round nearest.
     592              :  *
     593              :  * Converts time values in milliseconds to hardware cycles.
     594              :  * Computes result in 64 bit precision.
     595              :  * Rounds to the nearest output unit.
     596              :  *
     597              :  * @warning Generated. Do not edit. See above.
     598              :  *
     599              :  * @param t Source time in milliseconds. uint64_t
     600              :  *
     601              :  * @return The converted time value in hardware cycles. uint64_t
     602              :  */
     603            1 : #define k_ms_to_cyc_near64(t) \
     604              :         z_tmcvt_64(t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, false, true)
     605              : 
     606              : 
     607              : /** @brief Convert milliseconds to hardware cycles. 32 bits. Rounds up.
     608              :  *
     609              :  * Converts time values in milliseconds to hardware cycles.
     610              :  * Computes result in 32 bit precision.
     611              :  * Rounds up to the next highest output unit.
     612              :  *
     613              :  * @warning Generated. Do not edit. See above.
     614              :  *
     615              :  * @param t Source time in milliseconds. uint64_t
     616              :  *
     617              :  * @return The converted time value in hardware cycles. uint32_t
     618              :  */
     619            1 : #define k_ms_to_cyc_ceil32(t) \
     620              :         z_tmcvt_32(t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, true, false)
     621              : 
     622              : 
     623              : /** @brief Convert milliseconds to hardware cycles. 64 bits. Rounds up.
     624              :  *
     625              :  * Converts time values in milliseconds to hardware cycles.
     626              :  * Computes result in 64 bit precision.
     627              :  * Rounds up to the next highest output unit.
     628              :  *
     629              :  * @warning Generated. Do not edit. See above.
     630              :  *
     631              :  * @param t Source time in milliseconds. uint64_t
     632              :  *
     633              :  * @return The converted time value in hardware cycles. uint64_t
     634              :  */
     635            1 : #define k_ms_to_cyc_ceil64(t) \
     636              :         z_tmcvt_64(t, Z_HZ_ms, Z_HZ_cyc, Z_CCYC, true, false)
     637              : 
     638              : 
     639              : /** @brief Convert milliseconds to ticks. 32 bits. Truncates.
     640              :  *
     641              :  * Converts time values in milliseconds to ticks.
     642              :  * Computes result in 32 bit precision.
     643              :  * Truncates to the next lowest output unit.
     644              :  *
     645              :  * @warning Generated. Do not edit. See above.
     646              :  *
     647              :  * @param t Source time in milliseconds. uint64_t
     648              :  *
     649              :  * @return The converted time value in ticks. uint32_t
     650              :  */
     651            1 : #define k_ms_to_ticks_floor32(t) \
     652              :         z_tmcvt_32(t, Z_HZ_ms, Z_HZ_ticks, true, false, false)
     653              : 
     654              : 
     655              : /** @brief Convert milliseconds to ticks. 64 bits. Truncates.
     656              :  *
     657              :  * Converts time values in milliseconds to ticks.
     658              :  * Computes result in 64 bit precision.
     659              :  * Truncates to the next lowest output unit.
     660              :  *
     661              :  * @warning Generated. Do not edit. See above.
     662              :  *
     663              :  * @param t Source time in milliseconds. uint64_t
     664              :  *
     665              :  * @return The converted time value in ticks. uint64_t
     666              :  */
     667            1 : #define k_ms_to_ticks_floor64(t) \
     668              :         z_tmcvt_64(t, Z_HZ_ms, Z_HZ_ticks, true, false, false)
     669              : 
     670              : 
     671              : /** @brief Convert milliseconds to ticks. 32 bits. Round nearest.
     672              :  *
     673              :  * Converts time values in milliseconds to ticks.
     674              :  * Computes result in 32 bit precision.
     675              :  * Rounds to the nearest output unit.
     676              :  *
     677              :  * @warning Generated. Do not edit. See above.
     678              :  *
     679              :  * @param t Source time in milliseconds. uint64_t
     680              :  *
     681              :  * @return The converted time value in ticks. uint32_t
     682              :  */
     683            1 : #define k_ms_to_ticks_near32(t) \
     684              :         z_tmcvt_32(t, Z_HZ_ms, Z_HZ_ticks, true, false, true)
     685              : 
     686              : 
     687              : /** @brief Convert milliseconds to ticks. 64 bits. Round nearest.
     688              :  *
     689              :  * Converts time values in milliseconds to ticks.
     690              :  * Computes result in 64 bit precision.
     691              :  * Rounds to the nearest output unit.
     692              :  *
     693              :  * @warning Generated. Do not edit. See above.
     694              :  *
     695              :  * @param t Source time in milliseconds. uint64_t
     696              :  *
     697              :  * @return The converted time value in ticks. uint64_t
     698              :  */
     699            1 : #define k_ms_to_ticks_near64(t) \
     700              :         z_tmcvt_64(t, Z_HZ_ms, Z_HZ_ticks, true, false, true)
     701              : 
     702              : 
     703              : /** @brief Convert milliseconds to ticks. 32 bits. Rounds up.
     704              :  *
     705              :  * Converts time values in milliseconds to ticks.
     706              :  * Computes result in 32 bit precision.
     707              :  * Rounds up to the next highest output unit.
     708              :  *
     709              :  * @warning Generated. Do not edit. See above.
     710              :  *
     711              :  * @param t Source time in milliseconds. uint64_t
     712              :  *
     713              :  * @return The converted time value in ticks. uint32_t
     714              :  */
     715            1 : #define k_ms_to_ticks_ceil32(t) \
     716              :         z_tmcvt_32(t, Z_HZ_ms, Z_HZ_ticks, true, true, false)
     717              : 
     718              : 
     719              : /** @brief Convert milliseconds to ticks. 64 bits. Rounds up.
     720              :  *
     721              :  * Converts time values in milliseconds to ticks.
     722              :  * Computes result in 64 bit precision.
     723              :  * Rounds up to the next highest output unit.
     724              :  *
     725              :  * @warning Generated. Do not edit. See above.
     726              :  *
     727              :  * @param t Source time in milliseconds. uint64_t
     728              :  *
     729              :  * @return The converted time value in ticks. uint64_t
     730              :  */
     731            1 : #define k_ms_to_ticks_ceil64(t) \
     732              :         z_tmcvt_64(t, Z_HZ_ms, Z_HZ_ticks, true, true, false)
     733              : 
     734              : 
     735              : /** @brief Convert microseconds to hardware cycles. 32 bits. Truncates.
     736              :  *
     737              :  * Converts time values in microseconds to hardware cycles.
     738              :  * Computes result in 32 bit precision.
     739              :  * Truncates to the next lowest output unit.
     740              :  *
     741              :  * @warning Generated. Do not edit. See above.
     742              :  *
     743              :  * @param t Source time in microseconds. uint64_t
     744              :  *
     745              :  * @return The converted time value in hardware cycles. uint32_t
     746              :  */
     747            1 : #define k_us_to_cyc_floor32(t) \
     748              :         z_tmcvt_32(t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, false, false)
     749              : 
     750              : 
     751              : /** @brief Convert microseconds to hardware cycles. 64 bits. Truncates.
     752              :  *
     753              :  * Converts time values in microseconds to hardware cycles.
     754              :  * Computes result in 64 bit precision.
     755              :  * Truncates to the next lowest output unit.
     756              :  *
     757              :  * @warning Generated. Do not edit. See above.
     758              :  *
     759              :  * @param t Source time in microseconds. uint64_t
     760              :  *
     761              :  * @return The converted time value in hardware cycles. uint64_t
     762              :  */
     763            1 : #define k_us_to_cyc_floor64(t) \
     764              :         z_tmcvt_64(t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, false, false)
     765              : 
     766              : 
     767              : /** @brief Convert microseconds to hardware cycles. 32 bits. Round nearest.
     768              :  *
     769              :  * Converts time values in microseconds to hardware cycles.
     770              :  * Computes result in 32 bit precision.
     771              :  * Rounds to the nearest output unit.
     772              :  *
     773              :  * @warning Generated. Do not edit. See above.
     774              :  *
     775              :  * @param t Source time in microseconds. uint64_t
     776              :  *
     777              :  * @return The converted time value in hardware cycles. uint32_t
     778              :  */
     779            1 : #define k_us_to_cyc_near32(t) \
     780              :         z_tmcvt_32(t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, false, true)
     781              : 
     782              : 
     783              : /** @brief Convert microseconds to hardware cycles. 64 bits. Round nearest.
     784              :  *
     785              :  * Converts time values in microseconds to hardware cycles.
     786              :  * Computes result in 64 bit precision.
     787              :  * Rounds to the nearest output unit.
     788              :  *
     789              :  * @warning Generated. Do not edit. See above.
     790              :  *
     791              :  * @param t Source time in microseconds. uint64_t
     792              :  *
     793              :  * @return The converted time value in hardware cycles. uint64_t
     794              :  */
     795            1 : #define k_us_to_cyc_near64(t) \
     796              :         z_tmcvt_64(t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, false, true)
     797              : 
     798              : 
     799              : /** @brief Convert microseconds to hardware cycles. 32 bits. Rounds up.
     800              :  *
     801              :  * Converts time values in microseconds to hardware cycles.
     802              :  * Computes result in 32 bit precision.
     803              :  * Rounds up to the next highest output unit.
     804              :  *
     805              :  * @warning Generated. Do not edit. See above.
     806              :  *
     807              :  * @param t Source time in microseconds. uint64_t
     808              :  *
     809              :  * @return The converted time value in hardware cycles. uint32_t
     810              :  */
     811            1 : #define k_us_to_cyc_ceil32(t) \
     812              :         z_tmcvt_32(t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, true, false)
     813              : 
     814              : 
     815              : /** @brief Convert microseconds to hardware cycles. 64 bits. Rounds up.
     816              :  *
     817              :  * Converts time values in microseconds to hardware cycles.
     818              :  * Computes result in 64 bit precision.
     819              :  * Rounds up to the next highest output unit.
     820              :  *
     821              :  * @warning Generated. Do not edit. See above.
     822              :  *
     823              :  * @param t Source time in microseconds. uint64_t
     824              :  *
     825              :  * @return The converted time value in hardware cycles. uint64_t
     826              :  */
     827            1 : #define k_us_to_cyc_ceil64(t) \
     828              :         z_tmcvt_64(t, Z_HZ_us, Z_HZ_cyc, Z_CCYC, true, false)
     829              : 
     830              : 
     831              : /** @brief Convert microseconds to ticks. 32 bits. Truncates.
     832              :  *
     833              :  * Converts time values in microseconds to ticks.
     834              :  * Computes result in 32 bit precision.
     835              :  * Truncates to the next lowest output unit.
     836              :  *
     837              :  * @warning Generated. Do not edit. See above.
     838              :  *
     839              :  * @param t Source time in microseconds. uint64_t
     840              :  *
     841              :  * @return The converted time value in ticks. uint32_t
     842              :  */
     843            1 : #define k_us_to_ticks_floor32(t) \
     844              :         z_tmcvt_32(t, Z_HZ_us, Z_HZ_ticks, true, false, false)
     845              : 
     846              : 
     847              : /** @brief Convert microseconds to ticks. 64 bits. Truncates.
     848              :  *
     849              :  * Converts time values in microseconds to ticks.
     850              :  * Computes result in 64 bit precision.
     851              :  * Truncates to the next lowest output unit.
     852              :  *
     853              :  * @warning Generated. Do not edit. See above.
     854              :  *
     855              :  * @param t Source time in microseconds. uint64_t
     856              :  *
     857              :  * @return The converted time value in ticks. uint64_t
     858              :  */
     859            1 : #define k_us_to_ticks_floor64(t) \
     860              :         z_tmcvt_64(t, Z_HZ_us, Z_HZ_ticks, true, false, false)
     861              : 
     862              : 
     863              : /** @brief Convert microseconds to ticks. 32 bits. Round nearest.
     864              :  *
     865              :  * Converts time values in microseconds to ticks.
     866              :  * Computes result in 32 bit precision.
     867              :  * Rounds to the nearest output unit.
     868              :  *
     869              :  * @warning Generated. Do not edit. See above.
     870              :  *
     871              :  * @param t Source time in microseconds. uint64_t
     872              :  *
     873              :  * @return The converted time value in ticks. uint32_t
     874              :  */
     875            1 : #define k_us_to_ticks_near32(t) \
     876              :         z_tmcvt_32(t, Z_HZ_us, Z_HZ_ticks, true, false, true)
     877              : 
     878              : 
     879              : /** @brief Convert microseconds to ticks. 64 bits. Round nearest.
     880              :  *
     881              :  * Converts time values in microseconds to ticks.
     882              :  * Computes result in 64 bit precision.
     883              :  * Rounds to the nearest output unit.
     884              :  *
     885              :  * @warning Generated. Do not edit. See above.
     886              :  *
     887              :  * @param t Source time in microseconds. uint64_t
     888              :  *
     889              :  * @return The converted time value in ticks. uint64_t
     890              :  */
     891            1 : #define k_us_to_ticks_near64(t) \
     892              :         z_tmcvt_64(t, Z_HZ_us, Z_HZ_ticks, true, false, true)
     893              : 
     894              : 
     895              : /** @brief Convert microseconds to ticks. 32 bits. Rounds up.
     896              :  *
     897              :  * Converts time values in microseconds to ticks.
     898              :  * Computes result in 32 bit precision.
     899              :  * Rounds up to the next highest output unit.
     900              :  *
     901              :  * @warning Generated. Do not edit. See above.
     902              :  *
     903              :  * @param t Source time in microseconds. uint64_t
     904              :  *
     905              :  * @return The converted time value in ticks. uint32_t
     906              :  */
     907            1 : #define k_us_to_ticks_ceil32(t) \
     908              :         z_tmcvt_32(t, Z_HZ_us, Z_HZ_ticks, true, true, false)
     909              : 
     910              : 
     911              : /** @brief Convert microseconds to ticks. 64 bits. Rounds up.
     912              :  *
     913              :  * Converts time values in microseconds to ticks.
     914              :  * Computes result in 64 bit precision.
     915              :  * Rounds up to the next highest output unit.
     916              :  *
     917              :  * @warning Generated. Do not edit. See above.
     918              :  *
     919              :  * @param t Source time in microseconds. uint64_t
     920              :  *
     921              :  * @return The converted time value in ticks. uint64_t
     922              :  */
     923            1 : #define k_us_to_ticks_ceil64(t) \
     924              :         z_tmcvt_64(t, Z_HZ_us, Z_HZ_ticks, true, true, false)
     925              : 
     926              : 
     927              : /** @brief Convert nanoseconds to hardware cycles. 32 bits. Truncates.
     928              :  *
     929              :  * Converts time values in nanoseconds to hardware cycles.
     930              :  * Computes result in 32 bit precision.
     931              :  * Truncates to the next lowest output unit.
     932              :  *
     933              :  * @warning Generated. Do not edit. See above.
     934              :  *
     935              :  * @param t Source time in nanoseconds. uint64_t
     936              :  *
     937              :  * @return The converted time value in hardware cycles. uint32_t
     938              :  */
     939            1 : #define k_ns_to_cyc_floor32(t) \
     940              :         z_tmcvt_32(t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, false, false)
     941              : 
     942              : 
     943              : /** @brief Convert nanoseconds to hardware cycles. 64 bits. Truncates.
     944              :  *
     945              :  * Converts time values in nanoseconds to hardware cycles.
     946              :  * Computes result in 64 bit precision.
     947              :  * Truncates to the next lowest output unit.
     948              :  *
     949              :  * @warning Generated. Do not edit. See above.
     950              :  *
     951              :  * @param t Source time in nanoseconds. uint64_t
     952              :  *
     953              :  * @return The converted time value in hardware cycles. uint64_t
     954              :  */
     955            1 : #define k_ns_to_cyc_floor64(t) \
     956              :         z_tmcvt_64(t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, false, false)
     957              : 
     958              : 
     959              : /** @brief Convert nanoseconds to hardware cycles. 32 bits. Round nearest.
     960              :  *
     961              :  * Converts time values in nanoseconds to hardware cycles.
     962              :  * Computes result in 32 bit precision.
     963              :  * Rounds to the nearest output unit.
     964              :  *
     965              :  * @warning Generated. Do not edit. See above.
     966              :  *
     967              :  * @param t Source time in nanoseconds. uint64_t
     968              :  *
     969              :  * @return The converted time value in hardware cycles. uint32_t
     970              :  */
     971            1 : #define k_ns_to_cyc_near32(t) \
     972              :         z_tmcvt_32(t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, false, true)
     973              : 
     974              : 
     975              : /** @brief Convert nanoseconds to hardware cycles. 64 bits. Round nearest.
     976              :  *
     977              :  * Converts time values in nanoseconds to hardware cycles.
     978              :  * Computes result in 64 bit precision.
     979              :  * Rounds to the nearest output unit.
     980              :  *
     981              :  * @warning Generated. Do not edit. See above.
     982              :  *
     983              :  * @param t Source time in nanoseconds. uint64_t
     984              :  *
     985              :  * @return The converted time value in hardware cycles. uint64_t
     986              :  */
     987            1 : #define k_ns_to_cyc_near64(t) \
     988              :         z_tmcvt_64(t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, false, true)
     989              : 
     990              : 
     991              : /** @brief Convert nanoseconds to hardware cycles. 32 bits. Rounds up.
     992              :  *
     993              :  * Converts time values in nanoseconds to hardware cycles.
     994              :  * Computes result in 32 bit precision.
     995              :  * Rounds up to the next highest output unit.
     996              :  *
     997              :  * @warning Generated. Do not edit. See above.
     998              :  *
     999              :  * @param t Source time in nanoseconds. uint64_t
    1000              :  *
    1001              :  * @return The converted time value in hardware cycles. uint32_t
    1002              :  */
    1003            1 : #define k_ns_to_cyc_ceil32(t) \
    1004              :         z_tmcvt_32(t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, true, false)
    1005              : 
    1006              : 
    1007              : /** @brief Convert nanoseconds to hardware cycles. 64 bits. Rounds up.
    1008              :  *
    1009              :  * Converts time values in nanoseconds to hardware cycles.
    1010              :  * Computes result in 64 bit precision.
    1011              :  * Rounds up to the next highest output unit.
    1012              :  *
    1013              :  * @warning Generated. Do not edit. See above.
    1014              :  *
    1015              :  * @param t Source time in nanoseconds. uint64_t
    1016              :  *
    1017              :  * @return The converted time value in hardware cycles. uint64_t
    1018              :  */
    1019            1 : #define k_ns_to_cyc_ceil64(t) \
    1020              :         z_tmcvt_64(t, Z_HZ_ns, Z_HZ_cyc, Z_CCYC, true, false)
    1021              : 
    1022              : 
    1023              : /** @brief Convert nanoseconds to ticks. 32 bits. Truncates.
    1024              :  *
    1025              :  * Converts time values in nanoseconds to ticks.
    1026              :  * Computes result in 32 bit precision.
    1027              :  * Truncates to the next lowest output unit.
    1028              :  *
    1029              :  * @warning Generated. Do not edit. See above.
    1030              :  *
    1031              :  * @param t Source time in nanoseconds. uint64_t
    1032              :  *
    1033              :  * @return The converted time value in ticks. uint32_t
    1034              :  */
    1035            1 : #define k_ns_to_ticks_floor32(t) \
    1036              :         z_tmcvt_32(t, Z_HZ_ns, Z_HZ_ticks, true, false, false)
    1037              : 
    1038              : 
    1039              : /** @brief Convert nanoseconds to ticks. 64 bits. Truncates.
    1040              :  *
    1041              :  * Converts time values in nanoseconds to ticks.
    1042              :  * Computes result in 64 bit precision.
    1043              :  * Truncates to the next lowest output unit.
    1044              :  *
    1045              :  * @warning Generated. Do not edit. See above.
    1046              :  *
    1047              :  * @param t Source time in nanoseconds. uint64_t
    1048              :  *
    1049              :  * @return The converted time value in ticks. uint64_t
    1050              :  */
    1051            1 : #define k_ns_to_ticks_floor64(t) \
    1052              :         z_tmcvt_64(t, Z_HZ_ns, Z_HZ_ticks, true, false, false)
    1053              : 
    1054              : 
    1055              : /** @brief Convert nanoseconds to ticks. 32 bits. Round nearest.
    1056              :  *
    1057              :  * Converts time values in nanoseconds to ticks.
    1058              :  * Computes result in 32 bit precision.
    1059              :  * Rounds to the nearest output unit.
    1060              :  *
    1061              :  * @warning Generated. Do not edit. See above.
    1062              :  *
    1063              :  * @param t Source time in nanoseconds. uint64_t
    1064              :  *
    1065              :  * @return The converted time value in ticks. uint32_t
    1066              :  */
    1067            1 : #define k_ns_to_ticks_near32(t) \
    1068              :         z_tmcvt_32(t, Z_HZ_ns, Z_HZ_ticks, true, false, true)
    1069              : 
    1070              : 
    1071              : /** @brief Convert nanoseconds to ticks. 64 bits. Round nearest.
    1072              :  *
    1073              :  * Converts time values in nanoseconds to ticks.
    1074              :  * Computes result in 64 bit precision.
    1075              :  * Rounds to the nearest output unit.
    1076              :  *
    1077              :  * @warning Generated. Do not edit. See above.
    1078              :  *
    1079              :  * @param t Source time in nanoseconds. uint64_t
    1080              :  *
    1081              :  * @return The converted time value in ticks. uint64_t
    1082              :  */
    1083            1 : #define k_ns_to_ticks_near64(t) \
    1084              :         z_tmcvt_64(t, Z_HZ_ns, Z_HZ_ticks, true, false, true)
    1085              : 
    1086              : 
    1087              : /** @brief Convert nanoseconds to ticks. 32 bits. Rounds up.
    1088              :  *
    1089              :  * Converts time values in nanoseconds to ticks.
    1090              :  * Computes result in 32 bit precision.
    1091              :  * Rounds up to the next highest output unit.
    1092              :  *
    1093              :  * @warning Generated. Do not edit. See above.
    1094              :  *
    1095              :  * @param t Source time in nanoseconds. uint64_t
    1096              :  *
    1097              :  * @return The converted time value in ticks. uint32_t
    1098              :  */
    1099            1 : #define k_ns_to_ticks_ceil32(t) \
    1100              :         z_tmcvt_32(t, Z_HZ_ns, Z_HZ_ticks, true, true, false)
    1101              : 
    1102              : 
    1103              : /** @brief Convert nanoseconds to ticks. 64 bits. Rounds up.
    1104              :  *
    1105              :  * Converts time values in nanoseconds to ticks.
    1106              :  * Computes result in 64 bit precision.
    1107              :  * Rounds up to the next highest output unit.
    1108              :  *
    1109              :  * @warning Generated. Do not edit. See above.
    1110              :  *
    1111              :  * @param t Source time in nanoseconds. uint64_t
    1112              :  *
    1113              :  * @return The converted time value in ticks. uint64_t
    1114              :  */
    1115            1 : #define k_ns_to_ticks_ceil64(t) \
    1116              :         z_tmcvt_64(t, Z_HZ_ns, Z_HZ_ticks, true, true, false)
    1117              : 
    1118              : 
    1119              : /** @brief Convert hardware cycles to seconds. 32 bits. Truncates.
    1120              :  *
    1121              :  * Converts time values in hardware cycles to seconds.
    1122              :  * Computes result in 32 bit precision.
    1123              :  * Truncates to the next lowest output unit.
    1124              :  *
    1125              :  * @warning Generated. Do not edit. See above.
    1126              :  *
    1127              :  * @param t Source time in hardware cycles. uint64_t
    1128              :  *
    1129              :  * @return The converted time value in seconds. uint32_t
    1130              :  */
    1131            1 : #define k_cyc_to_sec_floor32(t) \
    1132              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_sec, Z_CCYC, false, false)
    1133              : 
    1134              : 
    1135              : /** @brief Convert hardware cycles to seconds. 64 bits. Truncates.
    1136              :  *
    1137              :  * Converts time values in hardware cycles to seconds.
    1138              :  * Computes result in 64 bit precision.
    1139              :  * Truncates to the next lowest output unit.
    1140              :  *
    1141              :  * @warning Generated. Do not edit. See above.
    1142              :  *
    1143              :  * @param t Source time in hardware cycles. uint64_t
    1144              :  *
    1145              :  * @return The converted time value in seconds. uint64_t
    1146              :  */
    1147            1 : #define k_cyc_to_sec_floor64(t) \
    1148              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_sec, Z_CCYC, false, false)
    1149              : 
    1150              : 
    1151              : /** @brief Convert hardware cycles to seconds. 32 bits. Round nearest.
    1152              :  *
    1153              :  * Converts time values in hardware cycles to seconds.
    1154              :  * Computes result in 32 bit precision.
    1155              :  * Rounds to the nearest output unit.
    1156              :  *
    1157              :  * @warning Generated. Do not edit. See above.
    1158              :  *
    1159              :  * @param t Source time in hardware cycles. uint64_t
    1160              :  *
    1161              :  * @return The converted time value in seconds. uint32_t
    1162              :  */
    1163            1 : #define k_cyc_to_sec_near32(t) \
    1164              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_sec, Z_CCYC, false, true)
    1165              : 
    1166              : 
    1167              : /** @brief Convert hardware cycles to seconds. 64 bits. Round nearest.
    1168              :  *
    1169              :  * Converts time values in hardware cycles to seconds.
    1170              :  * Computes result in 64 bit precision.
    1171              :  * Rounds to the nearest output unit.
    1172              :  *
    1173              :  * @warning Generated. Do not edit. See above.
    1174              :  *
    1175              :  * @param t Source time in hardware cycles. uint64_t
    1176              :  *
    1177              :  * @return The converted time value in seconds. uint64_t
    1178              :  */
    1179            1 : #define k_cyc_to_sec_near64(t) \
    1180              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_sec, Z_CCYC, false, true)
    1181              : 
    1182              : 
    1183              : /** @brief Convert hardware cycles to seconds. 32 bits. Rounds up.
    1184              :  *
    1185              :  * Converts time values in hardware cycles to seconds.
    1186              :  * Computes result in 32 bit precision.
    1187              :  * Rounds up to the next highest output unit.
    1188              :  *
    1189              :  * @warning Generated. Do not edit. See above.
    1190              :  *
    1191              :  * @param t Source time in hardware cycles. uint64_t
    1192              :  *
    1193              :  * @return The converted time value in seconds. uint32_t
    1194              :  */
    1195            1 : #define k_cyc_to_sec_ceil32(t) \
    1196              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_sec, Z_CCYC, true, false)
    1197              : 
    1198              : 
    1199              : /** @brief Convert hardware cycles to seconds. 64 bits. Rounds up.
    1200              :  *
    1201              :  * Converts time values in hardware cycles to seconds.
    1202              :  * Computes result in 64 bit precision.
    1203              :  * Rounds up to the next highest output unit.
    1204              :  *
    1205              :  * @warning Generated. Do not edit. See above.
    1206              :  *
    1207              :  * @param t Source time in hardware cycles. uint64_t
    1208              :  *
    1209              :  * @return The converted time value in seconds. uint64_t
    1210              :  */
    1211            1 : #define k_cyc_to_sec_ceil64(t) \
    1212              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_sec, Z_CCYC, true, false)
    1213              : 
    1214              : 
    1215              : /** @brief Convert hardware cycles to milliseconds. 32 bits. Truncates.
    1216              :  *
    1217              :  * Converts time values in hardware cycles to milliseconds.
    1218              :  * Computes result in 32 bit precision.
    1219              :  * Truncates to the next lowest output unit.
    1220              :  *
    1221              :  * @warning Generated. Do not edit. See above.
    1222              :  *
    1223              :  * @param t Source time in hardware cycles. uint64_t
    1224              :  *
    1225              :  * @return The converted time value in milliseconds. uint32_t
    1226              :  */
    1227            1 : #define k_cyc_to_ms_floor32(t) \
    1228              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, false, false)
    1229              : 
    1230              : 
    1231              : /** @brief Convert hardware cycles to milliseconds. 64 bits. Truncates.
    1232              :  *
    1233              :  * Converts time values in hardware cycles to milliseconds.
    1234              :  * Computes result in 64 bit precision.
    1235              :  * Truncates to the next lowest output unit.
    1236              :  *
    1237              :  * @warning Generated. Do not edit. See above.
    1238              :  *
    1239              :  * @param t Source time in hardware cycles. uint64_t
    1240              :  *
    1241              :  * @return The converted time value in milliseconds. uint64_t
    1242              :  */
    1243            1 : #define k_cyc_to_ms_floor64(t) \
    1244              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, false, false)
    1245              : 
    1246              : 
    1247              : /** @brief Convert hardware cycles to milliseconds. 32 bits. Round nearest.
    1248              :  *
    1249              :  * Converts time values in hardware cycles to milliseconds.
    1250              :  * Computes result in 32 bit precision.
    1251              :  * Rounds to the nearest output unit.
    1252              :  *
    1253              :  * @warning Generated. Do not edit. See above.
    1254              :  *
    1255              :  * @param t Source time in hardware cycles. uint64_t
    1256              :  *
    1257              :  * @return The converted time value in milliseconds. uint32_t
    1258              :  */
    1259            1 : #define k_cyc_to_ms_near32(t) \
    1260              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, false, true)
    1261              : 
    1262              : 
    1263              : /** @brief Convert hardware cycles to milliseconds. 64 bits. Round nearest.
    1264              :  *
    1265              :  * Converts time values in hardware cycles to milliseconds.
    1266              :  * Computes result in 64 bit precision.
    1267              :  * Rounds to the nearest output unit.
    1268              :  *
    1269              :  * @warning Generated. Do not edit. See above.
    1270              :  *
    1271              :  * @param t Source time in hardware cycles. uint64_t
    1272              :  *
    1273              :  * @return The converted time value in milliseconds. uint64_t
    1274              :  */
    1275            1 : #define k_cyc_to_ms_near64(t) \
    1276              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, false, true)
    1277              : 
    1278              : 
    1279              : /** @brief Convert hardware cycles to milliseconds. 32 bits. Rounds up.
    1280              :  *
    1281              :  * Converts time values in hardware cycles to milliseconds.
    1282              :  * Computes result in 32 bit precision.
    1283              :  * Rounds up to the next highest output unit.
    1284              :  *
    1285              :  * @warning Generated. Do not edit. See above.
    1286              :  *
    1287              :  * @param t Source time in hardware cycles. uint64_t
    1288              :  *
    1289              :  * @return The converted time value in milliseconds. uint32_t
    1290              :  */
    1291            1 : #define k_cyc_to_ms_ceil32(t) \
    1292              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, true, false)
    1293              : 
    1294              : 
    1295              : /** @brief Convert hardware cycles to milliseconds. 64 bits. Rounds up.
    1296              :  *
    1297              :  * Converts time values in hardware cycles to milliseconds.
    1298              :  * Computes result in 64 bit precision.
    1299              :  * Rounds up to the next highest output unit.
    1300              :  *
    1301              :  * @warning Generated. Do not edit. See above.
    1302              :  *
    1303              :  * @param t Source time in hardware cycles. uint64_t
    1304              :  *
    1305              :  * @return The converted time value in milliseconds. uint64_t
    1306              :  */
    1307            1 : #define k_cyc_to_ms_ceil64(t) \
    1308              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ms, Z_CCYC, true, false)
    1309              : 
    1310              : 
    1311              : /** @brief Convert hardware cycles to microseconds. 32 bits. Truncates.
    1312              :  *
    1313              :  * Converts time values in hardware cycles to microseconds.
    1314              :  * Computes result in 32 bit precision.
    1315              :  * Truncates to the next lowest output unit.
    1316              :  *
    1317              :  * @warning Generated. Do not edit. See above.
    1318              :  *
    1319              :  * @param t Source time in hardware cycles. uint64_t
    1320              :  *
    1321              :  * @return The converted time value in microseconds. uint32_t
    1322              :  */
    1323            1 : #define k_cyc_to_us_floor32(t) \
    1324              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, false, false)
    1325              : 
    1326              : 
    1327              : /** @brief Convert hardware cycles to microseconds. 64 bits. Truncates.
    1328              :  *
    1329              :  * Converts time values in hardware cycles to microseconds.
    1330              :  * Computes result in 64 bit precision.
    1331              :  * Truncates to the next lowest output unit.
    1332              :  *
    1333              :  * @warning Generated. Do not edit. See above.
    1334              :  *
    1335              :  * @param t Source time in hardware cycles. uint64_t
    1336              :  *
    1337              :  * @return The converted time value in microseconds. uint64_t
    1338              :  */
    1339            1 : #define k_cyc_to_us_floor64(t) \
    1340              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, false, false)
    1341              : 
    1342              : 
    1343              : /** @brief Convert hardware cycles to microseconds. 32 bits. Round nearest.
    1344              :  *
    1345              :  * Converts time values in hardware cycles to microseconds.
    1346              :  * Computes result in 32 bit precision.
    1347              :  * Rounds to the nearest output unit.
    1348              :  *
    1349              :  * @warning Generated. Do not edit. See above.
    1350              :  *
    1351              :  * @param t Source time in hardware cycles. uint64_t
    1352              :  *
    1353              :  * @return The converted time value in microseconds. uint32_t
    1354              :  */
    1355            1 : #define k_cyc_to_us_near32(t) \
    1356              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, false, true)
    1357              : 
    1358              : 
    1359              : /** @brief Convert hardware cycles to microseconds. 64 bits. Round nearest.
    1360              :  *
    1361              :  * Converts time values in hardware cycles to microseconds.
    1362              :  * Computes result in 64 bit precision.
    1363              :  * Rounds to the nearest output unit.
    1364              :  *
    1365              :  * @warning Generated. Do not edit. See above.
    1366              :  *
    1367              :  * @param t Source time in hardware cycles. uint64_t
    1368              :  *
    1369              :  * @return The converted time value in microseconds. uint64_t
    1370              :  */
    1371            1 : #define k_cyc_to_us_near64(t) \
    1372              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, false, true)
    1373              : 
    1374              : 
    1375              : /** @brief Convert hardware cycles to microseconds. 32 bits. Rounds up.
    1376              :  *
    1377              :  * Converts time values in hardware cycles to microseconds.
    1378              :  * Computes result in 32 bit precision.
    1379              :  * Rounds up to the next highest output unit.
    1380              :  *
    1381              :  * @warning Generated. Do not edit. See above.
    1382              :  *
    1383              :  * @param t Source time in hardware cycles. uint64_t
    1384              :  *
    1385              :  * @return The converted time value in microseconds. uint32_t
    1386              :  */
    1387            1 : #define k_cyc_to_us_ceil32(t) \
    1388              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, true, false)
    1389              : 
    1390              : 
    1391              : /** @brief Convert hardware cycles to microseconds. 64 bits. Rounds up.
    1392              :  *
    1393              :  * Converts time values in hardware cycles to microseconds.
    1394              :  * Computes result in 64 bit precision.
    1395              :  * Rounds up to the next highest output unit.
    1396              :  *
    1397              :  * @warning Generated. Do not edit. See above.
    1398              :  *
    1399              :  * @param t Source time in hardware cycles. uint64_t
    1400              :  *
    1401              :  * @return The converted time value in microseconds. uint64_t
    1402              :  */
    1403            1 : #define k_cyc_to_us_ceil64(t) \
    1404              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_us, Z_CCYC, true, false)
    1405              : 
    1406              : 
    1407              : /** @brief Convert hardware cycles to nanoseconds. 32 bits. Truncates.
    1408              :  *
    1409              :  * Converts time values in hardware cycles to nanoseconds.
    1410              :  * Computes result in 32 bit precision.
    1411              :  * Truncates to the next lowest output unit.
    1412              :  *
    1413              :  * @warning Generated. Do not edit. See above.
    1414              :  *
    1415              :  * @param t Source time in hardware cycles. uint64_t
    1416              :  *
    1417              :  * @return The converted time value in nanoseconds. uint32_t
    1418              :  */
    1419            1 : #define k_cyc_to_ns_floor32(t) \
    1420              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, false, false)
    1421              : 
    1422              : 
    1423              : /** @brief Convert hardware cycles to nanoseconds. 64 bits. Truncates.
    1424              :  *
    1425              :  * Converts time values in hardware cycles to nanoseconds.
    1426              :  * Computes result in 64 bit precision.
    1427              :  * Truncates to the next lowest output unit.
    1428              :  *
    1429              :  * @warning Generated. Do not edit. See above.
    1430              :  *
    1431              :  * @param t Source time in hardware cycles. uint64_t
    1432              :  *
    1433              :  * @return The converted time value in nanoseconds. uint64_t
    1434              :  */
    1435            1 : #define k_cyc_to_ns_floor64(t) \
    1436              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, false, false)
    1437              : 
    1438              : 
    1439              : /** @brief Convert hardware cycles to nanoseconds. 32 bits. Round nearest.
    1440              :  *
    1441              :  * Converts time values in hardware cycles to nanoseconds.
    1442              :  * Computes result in 32 bit precision.
    1443              :  * Rounds to the nearest output unit.
    1444              :  *
    1445              :  * @warning Generated. Do not edit. See above.
    1446              :  *
    1447              :  * @param t Source time in hardware cycles. uint64_t
    1448              :  *
    1449              :  * @return The converted time value in nanoseconds. uint32_t
    1450              :  */
    1451            1 : #define k_cyc_to_ns_near32(t) \
    1452              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, false, true)
    1453              : 
    1454              : 
    1455              : /** @brief Convert hardware cycles to nanoseconds. 64 bits. Round nearest.
    1456              :  *
    1457              :  * Converts time values in hardware cycles to nanoseconds.
    1458              :  * Computes result in 64 bit precision.
    1459              :  * Rounds to the nearest output unit.
    1460              :  *
    1461              :  * @warning Generated. Do not edit. See above.
    1462              :  *
    1463              :  * @param t Source time in hardware cycles. uint64_t
    1464              :  *
    1465              :  * @return The converted time value in nanoseconds. uint64_t
    1466              :  */
    1467            1 : #define k_cyc_to_ns_near64(t) \
    1468              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, false, true)
    1469              : 
    1470              : 
    1471              : /** @brief Convert hardware cycles to nanoseconds. 32 bits. Rounds up.
    1472              :  *
    1473              :  * Converts time values in hardware cycles to nanoseconds.
    1474              :  * Computes result in 32 bit precision.
    1475              :  * Rounds up to the next highest output unit.
    1476              :  *
    1477              :  * @warning Generated. Do not edit. See above.
    1478              :  *
    1479              :  * @param t Source time in hardware cycles. uint64_t
    1480              :  *
    1481              :  * @return The converted time value in nanoseconds. uint32_t
    1482              :  */
    1483            1 : #define k_cyc_to_ns_ceil32(t) \
    1484              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, true, false)
    1485              : 
    1486              : 
    1487              : /** @brief Convert hardware cycles to nanoseconds. 64 bits. Rounds up.
    1488              :  *
    1489              :  * Converts time values in hardware cycles to nanoseconds.
    1490              :  * Computes result in 64 bit precision.
    1491              :  * Rounds up to the next highest output unit.
    1492              :  *
    1493              :  * @warning Generated. Do not edit. See above.
    1494              :  *
    1495              :  * @param t Source time in hardware cycles. uint64_t
    1496              :  *
    1497              :  * @return The converted time value in nanoseconds. uint64_t
    1498              :  */
    1499            1 : #define k_cyc_to_ns_ceil64(t) \
    1500              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ns, Z_CCYC, true, false)
    1501              : 
    1502              : 
    1503              : /** @brief Convert hardware cycles to ticks. 32 bits. Truncates.
    1504              :  *
    1505              :  * Converts time values in hardware cycles to ticks.
    1506              :  * Computes result in 32 bit precision.
    1507              :  * Truncates to the next lowest output unit.
    1508              :  *
    1509              :  * @warning Generated. Do not edit. See above.
    1510              :  *
    1511              :  * @param t Source time in hardware cycles. uint64_t
    1512              :  *
    1513              :  * @return The converted time value in ticks. uint32_t
    1514              :  */
    1515            1 : #define k_cyc_to_ticks_floor32(t) \
    1516              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, false, false)
    1517              : 
    1518              : 
    1519              : /** @brief Convert hardware cycles to ticks. 64 bits. Truncates.
    1520              :  *
    1521              :  * Converts time values in hardware cycles to ticks.
    1522              :  * Computes result in 64 bit precision.
    1523              :  * Truncates to the next lowest output unit.
    1524              :  *
    1525              :  * @warning Generated. Do not edit. See above.
    1526              :  *
    1527              :  * @param t Source time in hardware cycles. uint64_t
    1528              :  *
    1529              :  * @return The converted time value in ticks. uint64_t
    1530              :  */
    1531            1 : #define k_cyc_to_ticks_floor64(t) \
    1532              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, false, false)
    1533              : 
    1534              : 
    1535              : /** @brief Convert hardware cycles to ticks. 32 bits. Round nearest.
    1536              :  *
    1537              :  * Converts time values in hardware cycles to ticks.
    1538              :  * Computes result in 32 bit precision.
    1539              :  * Rounds to the nearest output unit.
    1540              :  *
    1541              :  * @warning Generated. Do not edit. See above.
    1542              :  *
    1543              :  * @param t Source time in hardware cycles. uint64_t
    1544              :  *
    1545              :  * @return The converted time value in ticks. uint32_t
    1546              :  */
    1547            1 : #define k_cyc_to_ticks_near32(t) \
    1548              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, false, true)
    1549              : 
    1550              : 
    1551              : /** @brief Convert hardware cycles to ticks. 64 bits. Round nearest.
    1552              :  *
    1553              :  * Converts time values in hardware cycles to ticks.
    1554              :  * Computes result in 64 bit precision.
    1555              :  * Rounds to the nearest output unit.
    1556              :  *
    1557              :  * @warning Generated. Do not edit. See above.
    1558              :  *
    1559              :  * @param t Source time in hardware cycles. uint64_t
    1560              :  *
    1561              :  * @return The converted time value in ticks. uint64_t
    1562              :  */
    1563            1 : #define k_cyc_to_ticks_near64(t) \
    1564              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, false, true)
    1565              : 
    1566              : 
    1567              : /** @brief Convert hardware cycles to ticks. 32 bits. Rounds up.
    1568              :  *
    1569              :  * Converts time values in hardware cycles to ticks.
    1570              :  * Computes result in 32 bit precision.
    1571              :  * Rounds up to the next highest output unit.
    1572              :  *
    1573              :  * @warning Generated. Do not edit. See above.
    1574              :  *
    1575              :  * @param t Source time in hardware cycles. uint64_t
    1576              :  *
    1577              :  * @return The converted time value in ticks. uint32_t
    1578              :  */
    1579            1 : #define k_cyc_to_ticks_ceil32(t) \
    1580              :         z_tmcvt_32(t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, true, false)
    1581              : 
    1582              : 
    1583              : /** @brief Convert hardware cycles to ticks. 64 bits. Rounds up.
    1584              :  *
    1585              :  * Converts time values in hardware cycles to ticks.
    1586              :  * Computes result in 64 bit precision.
    1587              :  * Rounds up to the next highest output unit.
    1588              :  *
    1589              :  * @warning Generated. Do not edit. See above.
    1590              :  *
    1591              :  * @param t Source time in hardware cycles. uint64_t
    1592              :  *
    1593              :  * @return The converted time value in ticks. uint64_t
    1594              :  */
    1595            1 : #define k_cyc_to_ticks_ceil64(t) \
    1596              :         z_tmcvt_64(t, Z_HZ_cyc, Z_HZ_ticks, Z_CCYC, true, false)
    1597              : 
    1598              : 
    1599              : /** @brief Convert ticks to seconds. 32 bits. Truncates.
    1600              :  *
    1601              :  * Converts time values in ticks to seconds.
    1602              :  * Computes result in 32 bit precision.
    1603              :  * Truncates to the next lowest output unit.
    1604              :  *
    1605              :  * @warning Generated. Do not edit. See above.
    1606              :  *
    1607              :  * @param t Source time in ticks. uint64_t
    1608              :  *
    1609              :  * @return The converted time value in seconds. uint32_t
    1610              :  */
    1611            1 : #define k_ticks_to_sec_floor32(t) \
    1612              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_sec, true, false, false)
    1613              : 
    1614              : 
    1615              : /** @brief Convert ticks to seconds. 64 bits. Truncates.
    1616              :  *
    1617              :  * Converts time values in ticks to seconds.
    1618              :  * Computes result in 64 bit precision.
    1619              :  * Truncates to the next lowest output unit.
    1620              :  *
    1621              :  * @warning Generated. Do not edit. See above.
    1622              :  *
    1623              :  * @param t Source time in ticks. uint64_t
    1624              :  *
    1625              :  * @return The converted time value in seconds. uint64_t
    1626              :  */
    1627            1 : #define k_ticks_to_sec_floor64(t) \
    1628              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_sec, true, false, false)
    1629              : 
    1630              : 
    1631              : /** @brief Convert ticks to seconds. 32 bits. Round nearest.
    1632              :  *
    1633              :  * Converts time values in ticks to seconds.
    1634              :  * Computes result in 32 bit precision.
    1635              :  * Rounds to the nearest output unit.
    1636              :  *
    1637              :  * @warning Generated. Do not edit. See above.
    1638              :  *
    1639              :  * @param t Source time in ticks. uint64_t
    1640              :  *
    1641              :  * @return The converted time value in seconds. uint32_t
    1642              :  */
    1643            1 : #define k_ticks_to_sec_near32(t) \
    1644              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_sec, true, false, true)
    1645              : 
    1646              : 
    1647              : /** @brief Convert ticks to seconds. 64 bits. Round nearest.
    1648              :  *
    1649              :  * Converts time values in ticks to seconds.
    1650              :  * Computes result in 64 bit precision.
    1651              :  * Rounds to the nearest output unit.
    1652              :  *
    1653              :  * @warning Generated. Do not edit. See above.
    1654              :  *
    1655              :  * @param t Source time in ticks. uint64_t
    1656              :  *
    1657              :  * @return The converted time value in seconds. uint64_t
    1658              :  */
    1659            1 : #define k_ticks_to_sec_near64(t) \
    1660              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_sec, true, false, true)
    1661              : 
    1662              : 
    1663              : /** @brief Convert ticks to seconds. 32 bits. Rounds up.
    1664              :  *
    1665              :  * Converts time values in ticks to seconds.
    1666              :  * Computes result in 32 bit precision.
    1667              :  * Rounds up to the next highest output unit.
    1668              :  *
    1669              :  * @warning Generated. Do not edit. See above.
    1670              :  *
    1671              :  * @param t Source time in ticks. uint64_t
    1672              :  *
    1673              :  * @return The converted time value in seconds. uint32_t
    1674              :  */
    1675            1 : #define k_ticks_to_sec_ceil32(t) \
    1676              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_sec, true, true, false)
    1677              : 
    1678              : 
    1679              : /** @brief Convert ticks to seconds. 64 bits. Rounds up.
    1680              :  *
    1681              :  * Converts time values in ticks to seconds.
    1682              :  * Computes result in 64 bit precision.
    1683              :  * Rounds up to the next highest output unit.
    1684              :  *
    1685              :  * @warning Generated. Do not edit. See above.
    1686              :  *
    1687              :  * @param t Source time in ticks. uint64_t
    1688              :  *
    1689              :  * @return The converted time value in seconds. uint64_t
    1690              :  */
    1691            1 : #define k_ticks_to_sec_ceil64(t) \
    1692              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_sec, true, true, false)
    1693              : 
    1694              : 
    1695              : /** @brief Convert ticks to milliseconds. 32 bits. Truncates.
    1696              :  *
    1697              :  * Converts time values in ticks to milliseconds.
    1698              :  * Computes result in 32 bit precision.
    1699              :  * Truncates to the next lowest output unit.
    1700              :  *
    1701              :  * @warning Generated. Do not edit. See above.
    1702              :  *
    1703              :  * @param t Source time in ticks. uint64_t
    1704              :  *
    1705              :  * @return The converted time value in milliseconds. uint32_t
    1706              :  */
    1707            1 : #define k_ticks_to_ms_floor32(t) \
    1708              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_ms, true, false, false)
    1709              : 
    1710              : 
    1711              : /** @brief Convert ticks to milliseconds. 64 bits. Truncates.
    1712              :  *
    1713              :  * Converts time values in ticks to milliseconds.
    1714              :  * Computes result in 64 bit precision.
    1715              :  * Truncates to the next lowest output unit.
    1716              :  *
    1717              :  * @warning Generated. Do not edit. See above.
    1718              :  *
    1719              :  * @param t Source time in ticks. uint64_t
    1720              :  *
    1721              :  * @return The converted time value in milliseconds. uint64_t
    1722              :  */
    1723            1 : #define k_ticks_to_ms_floor64(t) \
    1724              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_ms, true, false, false)
    1725              : 
    1726              : 
    1727              : /** @brief Convert ticks to milliseconds. 32 bits. Round nearest.
    1728              :  *
    1729              :  * Converts time values in ticks to milliseconds.
    1730              :  * Computes result in 32 bit precision.
    1731              :  * Rounds to the nearest output unit.
    1732              :  *
    1733              :  * @warning Generated. Do not edit. See above.
    1734              :  *
    1735              :  * @param t Source time in ticks. uint64_t
    1736              :  *
    1737              :  * @return The converted time value in milliseconds. uint32_t
    1738              :  */
    1739            1 : #define k_ticks_to_ms_near32(t) \
    1740              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_ms, true, false, true)
    1741              : 
    1742              : 
    1743              : /** @brief Convert ticks to milliseconds. 64 bits. Round nearest.
    1744              :  *
    1745              :  * Converts time values in ticks to milliseconds.
    1746              :  * Computes result in 64 bit precision.
    1747              :  * Rounds to the nearest output unit.
    1748              :  *
    1749              :  * @warning Generated. Do not edit. See above.
    1750              :  *
    1751              :  * @param t Source time in ticks. uint64_t
    1752              :  *
    1753              :  * @return The converted time value in milliseconds. uint64_t
    1754              :  */
    1755            1 : #define k_ticks_to_ms_near64(t) \
    1756              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_ms, true, false, true)
    1757              : 
    1758              : 
    1759              : /** @brief Convert ticks to milliseconds. 32 bits. Rounds up.
    1760              :  *
    1761              :  * Converts time values in ticks to milliseconds.
    1762              :  * Computes result in 32 bit precision.
    1763              :  * Rounds up to the next highest output unit.
    1764              :  *
    1765              :  * @warning Generated. Do not edit. See above.
    1766              :  *
    1767              :  * @param t Source time in ticks. uint64_t
    1768              :  *
    1769              :  * @return The converted time value in milliseconds. uint32_t
    1770              :  */
    1771            1 : #define k_ticks_to_ms_ceil32(t) \
    1772              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_ms, true, true, false)
    1773              : 
    1774              : 
    1775              : /** @brief Convert ticks to milliseconds. 64 bits. Rounds up.
    1776              :  *
    1777              :  * Converts time values in ticks to milliseconds.
    1778              :  * Computes result in 64 bit precision.
    1779              :  * Rounds up to the next highest output unit.
    1780              :  *
    1781              :  * @warning Generated. Do not edit. See above.
    1782              :  *
    1783              :  * @param t Source time in ticks. uint64_t
    1784              :  *
    1785              :  * @return The converted time value in milliseconds. uint64_t
    1786              :  */
    1787            1 : #define k_ticks_to_ms_ceil64(t) \
    1788              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_ms, true, true, false)
    1789              : 
    1790              : 
    1791              : /** @brief Convert ticks to microseconds. 32 bits. Truncates.
    1792              :  *
    1793              :  * Converts time values in ticks to microseconds.
    1794              :  * Computes result in 32 bit precision.
    1795              :  * Truncates to the next lowest output unit.
    1796              :  *
    1797              :  * @warning Generated. Do not edit. See above.
    1798              :  *
    1799              :  * @param t Source time in ticks. uint64_t
    1800              :  *
    1801              :  * @return The converted time value in microseconds. uint32_t
    1802              :  */
    1803            1 : #define k_ticks_to_us_floor32(t) \
    1804              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_us, true, false, false)
    1805              : 
    1806              : 
    1807              : /** @brief Convert ticks to microseconds. 64 bits. Truncates.
    1808              :  *
    1809              :  * Converts time values in ticks to microseconds.
    1810              :  * Computes result in 64 bit precision.
    1811              :  * Truncates to the next lowest output unit.
    1812              :  *
    1813              :  * @warning Generated. Do not edit. See above.
    1814              :  *
    1815              :  * @param t Source time in ticks. uint64_t
    1816              :  *
    1817              :  * @return The converted time value in microseconds. uint64_t
    1818              :  */
    1819            1 : #define k_ticks_to_us_floor64(t) \
    1820              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_us, true, false, false)
    1821              : 
    1822              : 
    1823              : /** @brief Convert ticks to microseconds. 32 bits. Round nearest.
    1824              :  *
    1825              :  * Converts time values in ticks to microseconds.
    1826              :  * Computes result in 32 bit precision.
    1827              :  * Rounds to the nearest output unit.
    1828              :  *
    1829              :  * @warning Generated. Do not edit. See above.
    1830              :  *
    1831              :  * @param t Source time in ticks. uint64_t
    1832              :  *
    1833              :  * @return The converted time value in microseconds. uint32_t
    1834              :  */
    1835            1 : #define k_ticks_to_us_near32(t) \
    1836              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_us, true, false, true)
    1837              : 
    1838              : 
    1839              : /** @brief Convert ticks to microseconds. 64 bits. Round nearest.
    1840              :  *
    1841              :  * Converts time values in ticks to microseconds.
    1842              :  * Computes result in 64 bit precision.
    1843              :  * Rounds to the nearest output unit.
    1844              :  *
    1845              :  * @warning Generated. Do not edit. See above.
    1846              :  *
    1847              :  * @param t Source time in ticks. uint64_t
    1848              :  *
    1849              :  * @return The converted time value in microseconds. uint64_t
    1850              :  */
    1851            1 : #define k_ticks_to_us_near64(t) \
    1852              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_us, true, false, true)
    1853              : 
    1854              : 
    1855              : /** @brief Convert ticks to microseconds. 32 bits. Rounds up.
    1856              :  *
    1857              :  * Converts time values in ticks to microseconds.
    1858              :  * Computes result in 32 bit precision.
    1859              :  * Rounds up to the next highest output unit.
    1860              :  *
    1861              :  * @warning Generated. Do not edit. See above.
    1862              :  *
    1863              :  * @param t Source time in ticks. uint64_t
    1864              :  *
    1865              :  * @return The converted time value in microseconds. uint32_t
    1866              :  */
    1867            1 : #define k_ticks_to_us_ceil32(t) \
    1868              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_us, true, true, false)
    1869              : 
    1870              : 
    1871              : /** @brief Convert ticks to microseconds. 64 bits. Rounds up.
    1872              :  *
    1873              :  * Converts time values in ticks to microseconds.
    1874              :  * Computes result in 64 bit precision.
    1875              :  * Rounds up to the next highest output unit.
    1876              :  *
    1877              :  * @warning Generated. Do not edit. See above.
    1878              :  *
    1879              :  * @param t Source time in ticks. uint64_t
    1880              :  *
    1881              :  * @return The converted time value in microseconds. uint64_t
    1882              :  */
    1883            1 : #define k_ticks_to_us_ceil64(t) \
    1884              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_us, true, true, false)
    1885              : 
    1886              : 
    1887              : /** @brief Convert ticks to nanoseconds. 32 bits. Truncates.
    1888              :  *
    1889              :  * Converts time values in ticks to nanoseconds.
    1890              :  * Computes result in 32 bit precision.
    1891              :  * Truncates to the next lowest output unit.
    1892              :  *
    1893              :  * @warning Generated. Do not edit. See above.
    1894              :  *
    1895              :  * @param t Source time in ticks. uint64_t
    1896              :  *
    1897              :  * @return The converted time value in nanoseconds. uint32_t
    1898              :  */
    1899            1 : #define k_ticks_to_ns_floor32(t) \
    1900              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_ns, true, false, false)
    1901              : 
    1902              : 
    1903              : /** @brief Convert ticks to nanoseconds. 64 bits. Truncates.
    1904              :  *
    1905              :  * Converts time values in ticks to nanoseconds.
    1906              :  * Computes result in 64 bit precision.
    1907              :  * Truncates to the next lowest output unit.
    1908              :  *
    1909              :  * @warning Generated. Do not edit. See above.
    1910              :  *
    1911              :  * @param t Source time in ticks. uint64_t
    1912              :  *
    1913              :  * @return The converted time value in nanoseconds. uint64_t
    1914              :  */
    1915            1 : #define k_ticks_to_ns_floor64(t) \
    1916              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_ns, true, false, false)
    1917              : 
    1918              : 
    1919              : /** @brief Convert ticks to nanoseconds. 32 bits. Round nearest.
    1920              :  *
    1921              :  * Converts time values in ticks to nanoseconds.
    1922              :  * Computes result in 32 bit precision.
    1923              :  * Rounds to the nearest output unit.
    1924              :  *
    1925              :  * @warning Generated. Do not edit. See above.
    1926              :  *
    1927              :  * @param t Source time in ticks. uint64_t
    1928              :  *
    1929              :  * @return The converted time value in nanoseconds. uint32_t
    1930              :  */
    1931            1 : #define k_ticks_to_ns_near32(t) \
    1932              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_ns, true, false, true)
    1933              : 
    1934              : 
    1935              : /** @brief Convert ticks to nanoseconds. 64 bits. Round nearest.
    1936              :  *
    1937              :  * Converts time values in ticks to nanoseconds.
    1938              :  * Computes result in 64 bit precision.
    1939              :  * Rounds to the nearest output unit.
    1940              :  *
    1941              :  * @warning Generated. Do not edit. See above.
    1942              :  *
    1943              :  * @param t Source time in ticks. uint64_t
    1944              :  *
    1945              :  * @return The converted time value in nanoseconds. uint64_t
    1946              :  */
    1947            1 : #define k_ticks_to_ns_near64(t) \
    1948              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_ns, true, false, true)
    1949              : 
    1950              : 
    1951              : /** @brief Convert ticks to nanoseconds. 32 bits. Rounds up.
    1952              :  *
    1953              :  * Converts time values in ticks to nanoseconds.
    1954              :  * Computes result in 32 bit precision.
    1955              :  * Rounds up to the next highest output unit.
    1956              :  *
    1957              :  * @warning Generated. Do not edit. See above.
    1958              :  *
    1959              :  * @param t Source time in ticks. uint64_t
    1960              :  *
    1961              :  * @return The converted time value in nanoseconds. uint32_t
    1962              :  */
    1963            1 : #define k_ticks_to_ns_ceil32(t) \
    1964              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_ns, true, true, false)
    1965              : 
    1966              : 
    1967              : /** @brief Convert ticks to nanoseconds. 64 bits. Rounds up.
    1968              :  *
    1969              :  * Converts time values in ticks to nanoseconds.
    1970              :  * Computes result in 64 bit precision.
    1971              :  * Rounds up to the next highest output unit.
    1972              :  *
    1973              :  * @warning Generated. Do not edit. See above.
    1974              :  *
    1975              :  * @param t Source time in ticks. uint64_t
    1976              :  *
    1977              :  * @return The converted time value in nanoseconds. uint64_t
    1978              :  */
    1979            1 : #define k_ticks_to_ns_ceil64(t) \
    1980              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_ns, true, true, false)
    1981              : 
    1982              : 
    1983              : /** @brief Convert ticks to hardware cycles. 32 bits. Truncates.
    1984              :  *
    1985              :  * Converts time values in ticks to hardware cycles.
    1986              :  * Computes result in 32 bit precision.
    1987              :  * Truncates to the next lowest output unit.
    1988              :  *
    1989              :  * @warning Generated. Do not edit. See above.
    1990              :  *
    1991              :  * @param t Source time in ticks. uint64_t
    1992              :  *
    1993              :  * @return The converted time value in hardware cycles. uint32_t
    1994              :  */
    1995            1 : #define k_ticks_to_cyc_floor32(t) \
    1996              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, false, false)
    1997              : 
    1998              : 
    1999              : /** @brief Convert ticks to hardware cycles. 64 bits. Truncates.
    2000              :  *
    2001              :  * Converts time values in ticks to hardware cycles.
    2002              :  * Computes result in 64 bit precision.
    2003              :  * Truncates to the next lowest output unit.
    2004              :  *
    2005              :  * @warning Generated. Do not edit. See above.
    2006              :  *
    2007              :  * @param t Source time in ticks. uint64_t
    2008              :  *
    2009              :  * @return The converted time value in hardware cycles. uint64_t
    2010              :  */
    2011            1 : #define k_ticks_to_cyc_floor64(t) \
    2012              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, false, false)
    2013              : 
    2014              : 
    2015              : /** @brief Convert ticks to hardware cycles. 32 bits. Round nearest.
    2016              :  *
    2017              :  * Converts time values in ticks to hardware cycles.
    2018              :  * Computes result in 32 bit precision.
    2019              :  * Rounds to the nearest output unit.
    2020              :  *
    2021              :  * @warning Generated. Do not edit. See above.
    2022              :  *
    2023              :  * @param t Source time in ticks. uint64_t
    2024              :  *
    2025              :  * @return The converted time value in hardware cycles. uint32_t
    2026              :  */
    2027            1 : #define k_ticks_to_cyc_near32(t) \
    2028              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, false, true)
    2029              : 
    2030              : 
    2031              : /** @brief Convert ticks to hardware cycles. 64 bits. Round nearest.
    2032              :  *
    2033              :  * Converts time values in ticks to hardware cycles.
    2034              :  * Computes result in 64 bit precision.
    2035              :  * Rounds to the nearest output unit.
    2036              :  *
    2037              :  * @warning Generated. Do not edit. See above.
    2038              :  *
    2039              :  * @param t Source time in ticks. uint64_t
    2040              :  *
    2041              :  * @return The converted time value in hardware cycles. uint64_t
    2042              :  */
    2043            1 : #define k_ticks_to_cyc_near64(t) \
    2044              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, false, true)
    2045              : 
    2046              : 
    2047              : /** @brief Convert ticks to hardware cycles. 32 bits. Rounds up.
    2048              :  *
    2049              :  * Converts time values in ticks to hardware cycles.
    2050              :  * Computes result in 32 bit precision.
    2051              :  * Rounds up to the next highest output unit.
    2052              :  *
    2053              :  * @warning Generated. Do not edit. See above.
    2054              :  *
    2055              :  * @param t Source time in ticks. uint64_t
    2056              :  *
    2057              :  * @return The converted time value in hardware cycles. uint32_t
    2058              :  */
    2059            1 : #define k_ticks_to_cyc_ceil32(t) \
    2060              :         z_tmcvt_32(t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, true, false)
    2061              : 
    2062              : 
    2063              : /** @brief Convert ticks to hardware cycles. 64 bits. Rounds up.
    2064              :  *
    2065              :  * Converts time values in ticks to hardware cycles.
    2066              :  * Computes result in 64 bit precision.
    2067              :  * Rounds up to the next highest output unit.
    2068              :  *
    2069              :  * @warning Generated. Do not edit. See above.
    2070              :  *
    2071              :  * @param t Source time in ticks. uint64_t
    2072              :  *
    2073              :  * @return The converted time value in hardware cycles. uint64_t
    2074              :  */
    2075            1 : #define k_ticks_to_cyc_ceil64(t) \
    2076              :         z_tmcvt_64(t, Z_HZ_ticks, Z_HZ_cyc, Z_CCYC, true, false)
    2077              : 
    2078              : #if defined(CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME)
    2079              : #include <zephyr/syscalls/time_units.h>
    2080              : #endif
    2081              : 
    2082              : #undef TIME_CONSTEXPR
    2083              : 
    2084              : /**
    2085              :  * @}
    2086              :  */
    2087              : 
    2088              : #ifdef __cplusplus
    2089              : } /* extern "C" */
    2090              : #endif
    2091              : 
    2092              : #endif /* ZEPHYR_INCLUDE_TIME_UNITS_H_ */
        

Generated by: LCOV version 2.0-1