* SBC: Winsystems EPX-C3 Watchdog Timer?
@ 2006-01-13 1:48 Calin A. Culianu
2006-01-13 5:37 ` Willy Tarreau
0 siblings, 1 reply; 2+ messages in thread
From: Calin A. Culianu @ 2006-01-13 1:48 UTC (permalink / raw)
To: linux-kernel
Hi,
I wanted to see if a driver for the watchdog timer built into the
Winsystems EPX-C3 SBC board is something the linux kernel people are
interested in. If so, how should I structure the driver if I were to
submit it?
The reason I ask is that this board's watchdog is pretty basic/primitive.
It is not a PCI device, it doesn't have any status registers per se and is
configured by jumpers on the board only.
Behavior of the watchdog (if configured):
Enable the watchdog: Write a 1 to io address: 0x1EE
Pet the watchdog before the timeout period (1.5s or 200s depending on
jumper config): Write any value to io address: 0x1EF
Disable the watchdog: Write a 0 to io address: 0x1EE.
Pretty basic huh? As such -- there is no way to tell in software if the
watchdog exists, if it is enabled, or how long the timeout is. Since this
is so basic.. does it belong in the mainline kernel? Or should it best be
done as a userspace program instead?
Any guidance is appreciated..
-Calin
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: SBC: Winsystems EPX-C3 Watchdog Timer?
2006-01-13 1:48 SBC: Winsystems EPX-C3 Watchdog Timer? Calin A. Culianu
@ 2006-01-13 5:37 ` Willy Tarreau
0 siblings, 0 replies; 2+ messages in thread
From: Willy Tarreau @ 2006-01-13 5:37 UTC (permalink / raw)
To: Calin A. Culianu; +Cc: linux-kernel
Hi,
On Thu, Jan 12, 2006 at 08:48:43PM -0500, Calin A. Culianu wrote:
>
> Hi,
>
> I wanted to see if a driver for the watchdog timer built into the
> Winsystems EPX-C3 SBC board is something the linux kernel people are
> interested in. If so, how should I structure the driver if I were to
> submit it?
>
> The reason I ask is that this board's watchdog is pretty basic/primitive.
> It is not a PCI device, it doesn't have any status registers per se and
> is configured by jumpers on the board only.
>
> Behavior of the watchdog (if configured):
>
> Enable the watchdog: Write a 1 to io address: 0x1EE
> Pet the watchdog before the timeout period (1.5s or 200s depending on
> jumper config): Write any value to io address: 0x1EF
> Disable the watchdog: Write a 0 to io address: 0x1EE.
>
> Pretty basic huh? As such -- there is no way to tell in software if the
> watchdog exists, if it is enabled, or how long the timeout is. Since
> this is so basic.. does it belong in the mainline kernel? Or should it
> best be done as a userspace program instead?
Most of a watchdog's intelligence should be in userspace. However,
it's interesting to put the basic watchdog driver in kernel so that
you have the choice to use any watchdog daemon which will ping
/dev/watchdog. So I think that basically, your driver should turn
any write to /dev/watchdog into a write to 0x1EF.
Now about your concern that there's no way to detect the presence
of the hardware, well, it's already a problem with most such hardware.
I think you don't have to worry about that. Just put a big config
warning, put a message at startup reminding that it will write to
0x1EE and 0x1EF, and that's all.
> Any guidance is appreciated..
>
> -Calin
Willy
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-01-13 5:37 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-13 1:48 SBC: Winsystems EPX-C3 Watchdog Timer? Calin A. Culianu
2006-01-13 5:37 ` Willy Tarreau
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox