2019-06-13 01:53:01 +08:00
|
|
|
===================================
|
|
|
|
Berkshire Products PC Watchdog Card
|
|
|
|
===================================
|
|
|
|
|
2007-05-24 05:43:52 +08:00
|
|
|
Last reviewed: 10/05/2007
|
|
|
|
|
2019-06-13 01:53:01 +08:00
|
|
|
Support for ISA Cards Revision A and C
|
|
|
|
=======================================
|
|
|
|
|
|
|
|
Documentation and Driver by Ken Hollis <kenji@bitgate.com>
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
The PC Watchdog is a card that offers the same type of functionality that
|
|
|
|
the WDT card does, only it doesn't require an IRQ to run. Furthermore,
|
|
|
|
the Revision C card allows you to monitor any IO Port to automatically
|
|
|
|
trigger the card into being reset. This way you can make the card
|
|
|
|
monitor hard drive status, or anything else you need.
|
|
|
|
|
|
|
|
The Watchdog Driver has one basic role: to talk to the card and send
|
|
|
|
signals to it so it doesn't reset your computer ... at least during
|
|
|
|
normal operation.
|
|
|
|
|
|
|
|
The Watchdog Driver will automatically find your watchdog card, and will
|
|
|
|
attach a running driver for use with that card. After the watchdog
|
2007-05-24 05:43:52 +08:00
|
|
|
drivers have initialized, you can then talk to the card using a PC
|
|
|
|
Watchdog program.
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
I suggest putting a "watchdog -d" before the beginning of an fsck, and
|
|
|
|
a "watchdog -e -t 1" immediately after the end of an fsck. (Remember
|
|
|
|
to run the program with an "&" to run it in the background!)
|
|
|
|
|
|
|
|
If you want to write a program to be compatible with the PC Watchdog
|
2006-05-22 11:58:10 +08:00
|
|
|
driver, simply use of modify the watchdog test program:
|
2017-10-13 04:24:10 +08:00
|
|
|
tools/testing/selftests/watchdog/watchdog-test.c
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
Other IOCTL functions include:
|
|
|
|
|
|
|
|
WDIOC_GETSUPPORT
|
|
|
|
This returns the support of the card itself. This
|
|
|
|
returns in structure "PCWDS" which returns:
|
2019-06-13 01:53:01 +08:00
|
|
|
|
2005-04-17 06:20:36 +08:00
|
|
|
options = WDIOS_TEMPPANIC
|
|
|
|
(This card supports temperature)
|
|
|
|
firmware_version = xxxx
|
|
|
|
(Firmware version of the card)
|
|
|
|
|
|
|
|
WDIOC_GETSTATUS
|
|
|
|
This returns the status of the card, with the bits of
|
|
|
|
WDIOF_* bitwise-anded into the value. (The comments
|
|
|
|
are in linux/pcwd.h)
|
|
|
|
|
|
|
|
WDIOC_GETBOOTSTATUS
|
|
|
|
This returns the status of the card that was reported
|
|
|
|
at bootup.
|
|
|
|
|
|
|
|
WDIOC_GETTEMP
|
|
|
|
This returns the temperature of the card. (You can also
|
|
|
|
read /dev/watchdog, which gives a temperature update
|
|
|
|
every second.)
|
|
|
|
|
|
|
|
WDIOC_SETOPTIONS
|
|
|
|
This lets you set the options of the card. You can either
|
|
|
|
enable or disable the card this way.
|
|
|
|
|
|
|
|
WDIOC_KEEPALIVE
|
|
|
|
This pings the card to tell it not to reset your computer.
|
|
|
|
|
|
|
|
And that's all she wrote!
|
|
|
|
|
|
|
|
-- Ken Hollis
|
|
|
|
(kenji@bitgate.com)
|