sched: Move timer dispatch loop to board code
Rename sched_timer_kick() to sched_timer_dispatch() and move its loop into its callers in the board code. This eliminates the need to export timer_try_set_next() from the board code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
@@ -10,6 +10,9 @@
|
||||
#include "sam3x8e.h" // TC0
|
||||
#include "sched.h" // sched_timer_kick
|
||||
|
||||
// From generic/timer.c
|
||||
extern void timer_dispatch_many(void);
|
||||
|
||||
// IRQ handler
|
||||
void __visible
|
||||
TC0_Handler(void)
|
||||
@@ -17,7 +20,7 @@ TC0_Handler(void)
|
||||
irq_disable();
|
||||
uint32_t status = TC0->TC_CHANNEL[0].TC_SR; // read to clear irq pending
|
||||
if (likely(status & TC_SR_CPAS))
|
||||
sched_timer_kick();
|
||||
timer_dispatch_many();
|
||||
irq_enable();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user