timer: limit

This commit is contained in:
Matheus
2024-09-21 19:26:21 -03:00
parent 100c045e36
commit 6d436b1a9a
3 changed files with 24 additions and 13 deletions
+3 -1
View File
@@ -19,8 +19,10 @@ typedef struct timerentry_t {
typedef struct {
spinlock_t lock;
time_t tick_limit;
time_t ticksperus;
time_t tickcurrent;
time_t current_target;
bool running;
void (*arm)(time_t);
time_t (*stop)();
@@ -32,6 +34,6 @@ void timer_stop(timer_t *timer);
void timer_isr(timer_t *timer, context_t *context);
void timer_insert(timer_t *timer, timerentry_t *entry, dpcfn_t fn, dpcarg_t arg, time_t us, bool repeating);
uintmax_t timer_remove(timer_t *timer, timerentry_t *entry);
timer_t *timer_new(time_t ticksperus, void (*arm)(time_t), time_t (*stop)());
timer_t *timer_new(time_t ticksperus, void (*arm)(time_t), time_t (*stop)(), time_t tick_limit);
#endif