diff --git a/drivers/watchdog/wd_core.c b/drivers/watchdog/wd_core.c index fcead11..b6e2a37 100644 --- a/drivers/watchdog/wd_core.c +++ b/drivers/watchdog/wd_core.c @@ -152,12 +152,6 @@ return priority; } -const char *running_names[] = { - [WDOG_HW_RUNNING_UNSUPPORTED] = "unknown", - [WDOG_HW_RUNNING] = "1", - [WDOG_HW_NOT_RUNNING] = "0", -}; - int watchdog_register(struct watchdog *wd) { struct param_d *p; @@ -176,8 +170,7 @@ if (ret) return ret; - p = dev_add_param_enum_ro(&wd->dev, "running", &wd->running, - running_names, ARRAY_SIZE(running_names)); + p = dev_add_param_tristate_ro(&wd->dev, "running", &wd->running); if (IS_ERR(p)) return PTR_ERR(p); diff --git a/include/watchdog.h b/include/watchdog.h index 5790205..9741570 100644 --- a/include/watchdog.h +++ b/include/watchdog.h @@ -15,9 +15,12 @@ #include #include +#include enum wdog_hw_runnning { - WDOG_HW_RUNNING_UNSUPPORTED, WDOG_HW_RUNNING, WDOG_HW_NOT_RUNNING + WDOG_HW_RUNNING_UNSUPPORTED = PARAM_TRISTATE_UNKNOWN, + WDOG_HW_RUNNING = PARAM_TRISTATE_TRUE, + WDOG_HW_NOT_RUNNING = PARAM_TRISTATE_FALSE }; struct watchdog {