public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* 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