| 123456789101112131415161718192021222324252627 |
- #pragma once
- #include "shark_types.h"
- typedef struct shark_task {
- u64 time;
- struct shark_task *next;
- u32 (*handler)(void);
- } shark_task_t;
- typedef struct shark_timer {
- u64 time;
- struct shark_timer *prev;
- struct shark_timer *next;
- void (*handler)(struct shark_timer *timer);
- } shark_timer_t;
- u64 shark_get_mseconds(void);
- u32 shark_get_seconds(void);
- void shark_timer_post(shark_timer_t *timer, u32 delay);
- void shark_timer_cancel(shark_timer_t *timer);
- void shark_task_add(shark_task_t *task);
- void shark_task_run(void);
- void task_ticks_enable(void);
- void task_udelay(u32 delay); /* 精确延时, 必须在bsp_init后才能使用 */
|