diff --git a/kernel/timeout.c b/kernel/timeout.c index 98c38a0908f..7e0daee0641 100644 --- a/kernel/timeout.c +++ b/kernel/timeout.c @@ -379,3 +379,15 @@ uint64_t sys_clock_timeout_end_calc(k_timeout_t timeout) return sys_clock_tick_get() + MAX(1, dt); } } + +#ifdef CONFIG_ZTEST +void z_impl_sys_clock_tick_set(uint64_t tick) +{ + curr_tick = tick; +} + +void z_vrfy_sys_clock_tick_set(uint64_t tick) +{ + z_impl_sys_clock_tick_set(tick); +} +#endif diff --git a/subsys/testsuite/ztest/include/zephyr/ztest_test.h b/subsys/testsuite/ztest/include/zephyr/ztest_test.h index 693d139dc92..b9635560c02 100644 --- a/subsys/testsuite/ztest/include/zephyr/ztest_test.h +++ b/subsys/testsuite/ztest/include/zephyr/ztest_test.h @@ -21,6 +21,8 @@ extern "C" { __syscall void z_test_1cpu_start(void); __syscall void z_test_1cpu_stop(void); +__syscall void sys_clock_tick_set(uint64_t tick); + #ifdef __cplusplus } #endif