Merge pull request #15780 from haukepetersen/opt_ztimer_isset
ztimer: add ztimer_is_set() to user API
This commit is contained in:
commit
a1250963d4
@ -349,6 +349,17 @@ void ztimer_handler(ztimer_clock_t *clock);
|
|||||||
*/
|
*/
|
||||||
void ztimer_set(ztimer_clock_t *clock, ztimer_t *timer, uint32_t val);
|
void ztimer_set(ztimer_clock_t *clock, ztimer_t *timer, uint32_t val);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Check if a timer is currently active
|
||||||
|
*
|
||||||
|
* @param[in] clock ztimer clock to operate on
|
||||||
|
* @param[in] timer timer to check
|
||||||
|
*
|
||||||
|
* @return > 0 if timer is active
|
||||||
|
* @return 0 if timer is not active
|
||||||
|
*/
|
||||||
|
unsigned ztimer_is_set(const ztimer_clock_t *clock, const ztimer_t *timer);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Remove a timer from a clock
|
* @brief Remove a timer from a clock
|
||||||
*
|
*
|
||||||
|
|||||||
@ -58,6 +58,15 @@ static unsigned _is_set(const ztimer_clock_t *clock, const ztimer_t *t)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned ztimer_is_set(const ztimer_clock_t *clock, const ztimer_t *timer)
|
||||||
|
{
|
||||||
|
unsigned state = irq_disable();
|
||||||
|
unsigned res = _is_set(clock, timer);
|
||||||
|
|
||||||
|
irq_restore(state);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
void ztimer_remove(ztimer_clock_t *clock, ztimer_t *timer)
|
void ztimer_remove(ztimer_clock_t *clock, ztimer_t *timer)
|
||||||
{
|
{
|
||||||
unsigned state = irq_disable();
|
unsigned state = irq_disable();
|
||||||
|
|||||||
@ -70,6 +70,11 @@ int main(void)
|
|||||||
|
|
||||||
ztimer_periodic_start(&t);
|
ztimer_periodic_start(&t);
|
||||||
|
|
||||||
|
if (!ztimer_is_set(ZTIMER_MSEC, &t.timer)) {
|
||||||
|
print_str("Test failed\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* wait for periodic to trigger N times */
|
/* wait for periodic to trigger N times */
|
||||||
mutex_lock(&_mutex);
|
mutex_lock(&_mutex);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user