diff --git a/platform/galileo/clock.c b/platform/galileo/clock.c index e000f1db5..d81ba835f 100644 --- a/platform/galileo/clock.c +++ b/platform/galileo/clock.c @@ -29,6 +29,7 @@ */ #include "sys/clock.h" +#include "sys/etimer.h" #include "contiki-conf.h" #include "drivers/rtc.h" @@ -69,7 +70,14 @@ static volatile clock_time_t tick_count = 0; static void update_ticks(void) { + clock_time_t expire = etimer_next_expiration_time(); + tick_count++; + + /* Notify etimer library if the next event timer has expired */ + if(expire != 0 && tick_count >= expire) { + etimer_request_poll(); + } } /*---------------------------------------------------------------------------*/ void diff --git a/platform/galileo/contiki-main.c b/platform/galileo/contiki-main.c index 69387ead5..53b7f9cb1 100644 --- a/platform/galileo/contiki-main.c +++ b/platform/galileo/contiki-main.c @@ -41,6 +41,8 @@ main(void) ENABLE_IRQ(); process_init(); + process_start(&etimer_process, NULL); + ctimer_init(); autostart_start(autostart_processes); while(1) {