static inline void run_trigger_task() {
  struct timeval tv;
  uint64_t ticks = stored_ticks + (uint64_t) LPC_TIM2->CR0;
  tv.tv_usec = (time_t) (ticks % US_PER_SECOND);
  tv.tv_sec = (time_t) (ticks / US_PER_SECOND);
  trigger_task(&tv);
}
static inline void run_trigger_task() {
  struct timeval tv;
  uint64_t ticks = stored_ticks + (uint64_t) LPC_TIM2->CR0;
  /* convert it back master's time */
  ticks -= offset_;
  ticks /= k_;
  tv.tv_usec = (time_t) (ticks % US_PER_SECOND);
  tv.tv_sec = (time_t) (ticks / US_PER_SECOND);
  trigger_task(&tv);
}