if (val & INTEL_OC_WDT_STS_BITS)
oc_wdt->wdd.bootstatus |= WDIOF_CARDRESET;
oc_wdt->locked = !!(val & INTEL_OC_WDT_CTL_LCK);
if (val & INTEL_OC_WDT_EN) { /* * No need to issue a ping here to "commit" the new timeout * value to hardware as the watchdog core schedules one * immediately when registering the watchdog.
*/
set_bit(WDOG_HW_RUNNING, &oc_wdt->wdd.status);
if (oc_wdt->locked) { /* * Set nowayout unconditionally as we cannot stop * the watchdog.
*/
nowayout = true; /* * If we are locked read the current timeout value * and inform the core we can't change it.
*/
oc_wdt->wdd.timeout = (val & INTEL_OC_WDT_TOV) + 1;
oc_wdt->info.options &= ~WDIOF_SETTIMEOUT;
dev_info(oc_wdt->wdd.parent, "Register access locked, heartbeat fixed at: %u s\n",
oc_wdt->wdd.timeout);
}
} elseif (oc_wdt->locked) { /* * In case the watchdog is disabled and locked there * is nothing we can do with it so just fail probing.
*/ return -EACCES;
}
val &= ~INTEL_OC_WDT_TOV;
outl(val | (oc_wdt->wdd.timeout - 1), INTEL_OC_WDT_CTRL_REG(oc_wdt));
MODULE_AUTHOR("Diogo Ivo ");
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Intel OC Watchdog driver");
Messung V0.5
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.3Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.