Hi Johannes,

> This patch adds a sysfs interface for the watchdog device found on MEN A21
> Boards.
> 
> The newly generated files are:
> * rebootcause:
> Can be one of:
> Power on Reset,
> CPU Reset Request,
> Push Button,
> FPGA Reset Request,
> Watchdog,
> Local Power Bad,
> Invalid or
> BDI
> and shows the reason of the boards last reboot.

Question: why don't you use the detection of the reboot cause in your driver
initialization so that you can:
1) report the reboot cause at the start of the driver (like we do in most
drivers that support these kind of features)
2) set the .bootstatus info in the watchdog_device struct data?
(See the WDIOF flags in #include <uapi/linux/watchdog.h>
#define WDIOF_OVERHEAT          0x0001  /* Reset due to CPU overheat */
#define WDIOF_FANFAULT          0x0002  /* Fan failed */
#define WDIOF_EXTERN1           0x0004  /* External relay 1 */
#define WDIOF_EXTERN2           0x0008  /* External relay 2 */
#define WDIOF_POWERUNDER        0x0010  /* Power bad/power fault */
#define WDIOF_CARDRESET         0x0020  /* Card previously reset the CPU */
#define WDIOF_POWEROVER         0x0040  /* Power over voltage */
#define WDIOF_SETTIMEOUT        0x0080  /* Set timeout (in seconds) */
#define WDIOF_MAGICCLOSE        0x0100  /* Supports magic close char */
#define WDIOF_PRETIMEOUT        0x0200  /* Pretimeout (in seconds), get/set */
#define WDIOF_ALARMONLY         0x0400  /* Watchdog triggers a management or
                                           other external alarm not a reboot */
#define WDIOF_KEEPALIVEPING     0x8000  /* Keep alive ping reply */
(Example driver: wdt_pci.c )).

Kind regards,
Wim.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to