enum chips { f71808fg, f71858fg, f71862fg, f71868, f71869, f71882fg, f71889fg,
f81803, f81865, f81866};
-static const char * const f71808e_names[] = {
+static const char * const fintek_wdt_names[] = {
"f71808fg",
"f71858fg",
"f71862fg",
static inline void superio_select(int base, int ld);
static inline void superio_exit(int base);
-struct watchdog_data {
+struct fintek_wdt {
unsigned short sioaddr;
enum chips type;
unsigned long opened;
char caused_reboot; /* last reboot was by the watchdog */
};
-static struct watchdog_data watchdog = {
+static struct fintek_wdt watchdog = {
.lock = __MUTEX_INITIALIZER(watchdog.lock),
};
release_region(base, 2);
}
-static int watchdog_set_timeout(int timeout)
+static int fintek_wdt_set_timeout(int timeout)
{
if (timeout <= 0
|| timeout > WATCHDOG_MAX_TIMEOUT) {
return 0;
}
-static int watchdog_set_pulse_width(unsigned int pw)
+static int fintek_wdt_set_pulse_width(unsigned int pw)
{
int err = 0;
unsigned int t1 = 25, t2 = 125, t3 = 5000;
return err;
}
-static int watchdog_keepalive(void)
+static int fintek_wdt_keepalive(void)
{
int err = 0;
return err;
}
-static int watchdog_start(void)
+static int fintek_wdt_start(void)
{
int err;
u8 tmp;
/* Make sure we don't die as soon as the watchdog is enabled below */
- err = watchdog_keepalive();
+ err = fintek_wdt_keepalive();
if (err)
return err;
return err;
}
-static int watchdog_stop(void)
+static int fintek_wdt_stop(void)
{
int err = 0;
return status;
}
-static bool watchdog_is_running(void)
+static bool fintek_wdt_is_running(void)
{
/*
* if we fail to determine the watchdog's status assume it to be
if (test_and_set_bit(0, &watchdog.opened))
return -EBUSY;
- err = watchdog_start();
+ err = fintek_wdt_start();
if (err) {
clear_bit(0, &watchdog.opened);
return err;
clear_bit(0, &watchdog.opened);
if (!watchdog.expect_close) {
- watchdog_keepalive();
+ fintek_wdt_keepalive();
pr_crit("Unexpected close, not stopping watchdog!\n");
} else if (!nowayout) {
- watchdog_stop();
+ fintek_wdt_stop();
}
return 0;
}
}
/* someone wrote to us, we should restart timer */
- watchdog_keepalive();
+ fintek_wdt_keepalive();
}
return count;
}
return -EFAULT;
if (new_options & WDIOS_DISABLECARD)
- watchdog_stop();
+ fintek_wdt_stop();
if (new_options & WDIOS_ENABLECARD)
- return watchdog_start();
+ return fintek_wdt_start();
fallthrough;
case WDIOC_KEEPALIVE:
- watchdog_keepalive();
+ fintek_wdt_keepalive();
return 0;
case WDIOC_SETTIMEOUT:
if (get_user(new_timeout, uarg.i))
return -EFAULT;
- if (watchdog_set_timeout(new_timeout))
+ if (fintek_wdt_set_timeout(new_timeout))
return -EINVAL;
- watchdog_keepalive();
+ fintek_wdt_keepalive();
fallthrough;
case WDIOC_GETTIMEOUT:
void *unused)
{
if (code == SYS_DOWN || code == SYS_HALT)
- watchdog_stop();
+ fintek_wdt_stop();
return NOTIFY_DONE;
}
snprintf(watchdog.ident.identity,
sizeof(watchdog.ident.identity), "%s watchdog",
- f71808e_names[watchdog.type]);
+ fintek_wdt_names[watchdog.type]);
err = superio_enter(sioaddr);
if (err)
superio_exit(sioaddr);
- err = watchdog_set_timeout(timeout);
+ err = fintek_wdt_set_timeout(timeout);
if (err)
return err;
- err = watchdog_set_pulse_width(pulse_width);
+ err = fintek_wdt_set_pulse_width(pulse_width);
if (err)
return err;
goto exit_miscdev;
}
- err = watchdog_start();
+ err = fintek_wdt_start();
if (err) {
pr_err("cannot start watchdog timer\n");
goto exit_miscdev;
return err;
}
-static int __init f71808e_find(int sioaddr)
+static int __init fintek_wdt_find(int sioaddr)
{
u16 devid;
int err = superio_enter(sioaddr);
}
pr_info("Found %s watchdog chip, revision %d\n",
- f71808e_names[watchdog.type],
+ fintek_wdt_names[watchdog.type],
(int)superio_inb(sioaddr, SIO_REG_DEVREV));
exit:
superio_exit(sioaddr);
return err;
}
-static int __init f71808e_init(void)
+static int __init fintek_wdt_init(void)
{
static const unsigned short addrs[] = { 0x2e, 0x4e };
int err = -ENODEV;
}
for (i = 0; i < ARRAY_SIZE(addrs); i++) {
- err = f71808e_find(addrs[i]);
+ err = fintek_wdt_find(addrs[i]);
if (err == 0)
break;
}
return watchdog_init(addrs[i]);
}
-static void __exit f71808e_exit(void)
+static void __exit fintek_wdt_exit(void)
{
- if (watchdog_is_running()) {
+ if (fintek_wdt_is_running()) {
pr_warn("Watchdog timer still running, stopping it\n");
- watchdog_stop();
+ fintek_wdt_stop();
}
misc_deregister(&watchdog_miscdev);
unregister_reboot_notifier(&watchdog_notifier);
MODULE_AUTHOR("Giel van Schijndel <me@mortis.eu>");
MODULE_LICENSE("GPL");
-module_init(f71808e_init);
-module_exit(f71808e_exit);
+module_init(fintek_wdt_init);
+module_exit(fintek_wdt_exit);