static void devalarm_start(struct devalarm *alrm, ktime_t exp) { if (is_wakeup(alrm->type)) alarm_start(&alrm->u.alrm, exp); else hrtimer_start(&alrm->u.hrt, exp, HRTIMER_MODE_ABS); }
static void bcmpmu_rpc_program_alarm(struct bcmpmu_rpc *rpc, long seconds) { ktime_t interval = ktime_set(seconds, 0); ktime_t next; pr_rpc(VERBOSE, "set timeout %ld s.\n", seconds); next = ktime_add(ktime_get_real(), interval); alarm_start(&rpc->alarm, next); }
/** * Toggles activation of the timer */ static void on_enable_toggle (GtkWidget *widget) { int alarm_enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)); if(alarm_enabled != timer_on) { if (alarm_enabled) { alarm_start(); } else { alarm_stop(); } } }
/** * alarmtimer_do_nsleep - Internal alarmtimer nsleep implementation * @alarm: ptr to alarmtimer * @absexp: absolute expiration time * * Sets the alarm timer and sleeps until it is fired or interrupted. */ static int alarmtimer_do_nsleep(struct alarm *alarm, ktime_t absexp) { alarm->data = (void *)current; do { set_current_state(TASK_INTERRUPTIBLE); alarm_start(alarm, absexp, ktime_set(0, 0)); if (likely(alarm->data)) schedule(); alarm_cancel(alarm); } while (alarm->data && !signal_pending(current)); __set_current_state(TASK_RUNNING); return (alarm->data == NULL); }
static gboolean alarm_si_button_press_event(GtkWidget *icon, GdkEventButton *event, gpointer data) { if(event->button == 1) { if (timer_on == FALSE) { alarm_start(); } else { alarm_stop(); } /* Again, check for active page and set button otherwise */ return TRUE; } else if (event->button == 3) { preferences_show_pref_window(plugin.id); } return FALSE; }
static void android_bat_monitor_set_alarm(struct android_bat_data *battery, int seconds) { alarm_start(&battery->monitor_alarm, ktime_add(battery->last_poll, ktime_set(seconds, 0))); }