Force events into the future

pull/3982/head
mjrgh 2017-03-21 15:51:09 -07:00 committed by GitHub
parent 094d9ac909
commit 72ccf0b2b5
1 changed files with 7 additions and 6 deletions

View File

@ -185,11 +185,12 @@ static void lptmr_isr(void) {
}
void us_ticker_set_interrupt(timestamp_t timestamp) {
int delta = (int)((uint32_t)timestamp - us_ticker_read());
uint32_t tcur = us_ticker_read();
int delta = (int)((uint32_t)timestamp - tcur);
if (delta <= 0) {
// This event was in the past:
us_ticker_irq_handler();
return;
// This event was in the past. Force it into the very near
// future instead.
timestamp = tcur + 2;
}
us_ticker_int_counter = (uint32_t)(delta >> 16);