Re: [PATCH] fix book E watchdog to take WDIOC_SETTIMEOUT arg inseconds

From: Josh Boyer
Date: Thu Aug 27 2009 - 08:09:17 EST

On Thu, Aug 27, 2009 at 01:14:58PM +0200, Wim Van Sebroeck wrote:
>Hi Chris,
>> The WDIOC_SETTIMEOUT argument is supposed to be a "seconds" value.
>> However, the book E wdt currently treats it as a "period" which is
>> interpreted in a board-specific way.
>> This patch allows the user to pass in a "seconds" value and the driver
>> will set the smallest timeout that is at least as large as specified
>> by the user. It's been tested on e500 hardware and works as
>> expected.
>> The patch only modifies the CONFIG_FSL_BOOKE case, the CONFIG_4xx case
>> is left unmodified as I don't have any hardware to test it on.
>> Signed-off-by: Chris Friesen <cfriesen@xxxxxxxxxx>
>Added with some small changes to keep checkpatch happy. (removed trailing spaces + changed sizeof(struct watchdog_info) to sizeof(ident) and changed some spaces in tabs).
>Now we only need someone that can look at the CONFIG_4xx cases still :-)

It seems the FSL watchdog is much more flexible than the one found in 4xx
cores. On 4xx, you basically have 4 static choices that represent specific
times determined by the clock frequency. I'm concerned that the lack of
granularity here will result in less than desirable behavior.

For example, with a 400MHz clock you would get choices of roughly:

5.2 ms
83.9 ms
1.34 s
21.47 s

Personally, I consider the first two options basically unusable. Considering
the second two, if a user were to say "Set the timeout for 2 seconds" they
would then get a timeout of 21 seconds with the framework Chris' patch has
set up. That doesn't really seem to be ideal to me.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at