コード例 #1
0
ファイル: at91sam9_wdt.c プロジェクト: CSCLOG/beaglebone
/*
 * Timer tick
 */
static void at91_ping(unsigned long data)
{
	if (time_before(jiffies, at91wdt_private.next_heartbeat) ||
			(!nowayout && !at91wdt_private.open)) {
		at91_wdt_reset();
		mod_timer(&at91wdt_private.timer, jiffies + WDT_TIMEOUT);
	} else
		printk(KERN_CRIT DRV_NAME": I will reset your machine !\n");
}
コード例 #2
0
ファイル: at91sam9_wdt.c プロジェクト: 383530895/linux
/*
 * Timer tick
 */
static void at91_ping(unsigned long data)
{
	struct at91wdt *wdt = (struct at91wdt *)data;
	if (time_before(jiffies, wdt->next_heartbeat) ||
	    !watchdog_active(&wdt->wdd)) {
		at91_wdt_reset(wdt);
		mod_timer(&wdt->timer, jiffies + wdt->heartbeat);
	} else {
		pr_crit("I will reset your machine !\n");
	}
}
コード例 #3
0
ファイル: at91sam9_wdt.c プロジェクト: avagin/linux
/*
 * Timer tick
 */
static void at91_ping(struct timer_list *t)
{
	struct at91wdt *wdt = from_timer(wdt, t, timer);
	if (time_before(jiffies, wdt->next_heartbeat) ||
	    !watchdog_active(&wdt->wdd)) {
		at91_wdt_reset(wdt);
		mod_timer(&wdt->timer, jiffies + wdt->heartbeat);
	} else {
		pr_crit("I will reset your machine !\n");
	}
}
コード例 #4
0
/*
 * Timer tick
 */
static void at91wdt_timer_tick(unsigned long data)
{
	struct watchdog_device *wddev = (struct watchdog_device *)data;
	struct at91wdt_drvdata *driver_data = watchdog_get_drvdata(wddev);

	if (time_before(jiffies, driver_data->next_heartbeat)) {
		at91_wdt_reset(driver_data);
		mod_timer(&driver_data->timer, jiffies + WDT_TIMEOUT);

		if (!watchdog_is_open(wddev))
			driver_data->next_heartbeat = jiffies
						+ wddev->timeout * HZ;
	} else
		pr_crit("I will reset your machine !\n");
}