On 7/24/06, Steve Fairhead <[EMAIL PROTECTED]> wrote:
In general terms, a watchdog is a hardware device that resets the CPU if
it's not "kicked" regularly e.g. every few hundred milliseconds. It should
not be disableable in software; i.e. the code "going off in the weeds"
should not be able to disable the watchdog by accident. An embedded circuit
running proprietary software from boot time can meet these requirements.

Correct.

However, in my experience PC-type boards with watchdogs (e.g. PC/104 boards)
have a software-enabled watchdog. This is off by default, meaning that a
standard OS can boot and run. It's conventional to allow the watchdog to be
enabled under software control, so that a critical application can enable
the device once running. Again in general terms, it makes little sense for
the OS itself to kick the watchdog, since this does not prove that the
application is running and in control.

Understood, and I suppose I was lacking in my original description.
The 'n0rwall' project, circa 2003, bluntly states that the watchdog
trace (J14) must be opened in order to keep the unit from rebooting.
I have not touched mine, nor is the kernel tickling the circuit -- at
least that I know of.  So, unless FreeBSD 4.11 enables the watchdog
where OpenBSD 3.9 does not, I'm not sure what to make of it.  I wasn't
about to hack on the board until I gave OpenBSD a crack at detecting
the watchdog device.  So, it leads me to a few conclusions (in order
of perceived liklihood):

1) it's disabled in the BIOS
2) The trace was cut by the manufacturer, and I didn't notice
999) OpenBSD is doing something good, but it isn't obvious (highly unlikely)

I emphasize that these are general observations which may or may not be
relevant to your platform.

Certainly, and it does bring up a few more points for me to consider.

Reply via email to