linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: timo.kokkonen@offcode.fi (Timo Kokkonen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/2] at91sam9_wdt: Allow watchdog to reset device at early boot
Date: Mon, 23 Feb 2015 09:29:41 +0200	[thread overview]
Message-ID: <54EAD6E5.8090104@offcode.fi> (raw)
In-Reply-To: <20150220180646.GA26698@roeck-us.net>

Hi,

On 20.02.2015 20:06, Guenter Roeck wrote:
> On Fri, Feb 20, 2015 at 06:16:40PM +0100, Boris Brezillon wrote:
>> Hi Jean-Christophe,
>>
>> On Sat, 21 Feb 2015 00:33:17 +0800
>> Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> wrote:
>>
>>
>> Timo's need is quite generic, but nobody seemed to bother with that
>> before.
>
> The problem has been discussed before. There are even some patches,
> but they were too specific and limited in scope for my liking.
>
> As I said in my other reply, to move forward we would need
> someone who has the time and energy to get an agreement with the
> DT folks about an acceptable means to express the properties needed
> for a specific hardware, and to actually implement the necessary code.
>
>> Moreover, using an at91 specific implementation does not prevent
>> migrating to a more generic implementation when it's available.
>> Actually, it's rather difficult to design a generic infrastructure until
>> you have dealt with several devices requiring the same feature, and
>> that's obviously not the case here.
>>
> Absolutely agree. If we can not even get a property like the one suggested
> here accepted, it is completely pointless to even think about a more
> generic solution that would work for all watchdog drivers.
>

I'm not really sure that I understand what we are really arguing here, 
but seems that this is not getting any forward unless we get in touch 
with the DT people who get to decide whether this kind of property 
belongs to device tree or not. Who are these people anyway? Which list 
should I write an email to get in touch with them? Why are we not CC'ing 
them already?

Anyway, the way I tried to express it in the v4 patch set, we have a 
generic device tree property that does not try to imply any sort of 
implementation or HW details. The description in watchdog.txt tries to 
state the purpose of the property clearly so that other driver writers 
could make other drivers to support it correctly. And then there is at91 
specific implementation because that's the only watchdog hardware 
currently on my desk that I can easily test it with.

I can't think of how I could make this more generic, not without making 
more changes to the way drivers initialize itself with the watchdog 
core. And that would require changing a lot of drivers, at least if we 
intend to make it work so that the watchdog core takes care of this 
instead of the driver. It's a nice idea but I think it's overly complex 
given the amount of functionality there needs to be in different drivers 
and the diversity between drivers.

To me there is nothing wrong with having this done also via a kernel 
configuration option. We could simply have 
CONFIG_WATCHDOG_EARLY_TIMEOUT_SEC option that works exactly the same way 
as the proposed device tree property. To make it clear only some drivers 
support this option, we could let each driver select an enabler config 
option CONFIG_WATCHDOG_HAS_DEFERRABLE_EARLY_RESET or such that is used 
to hide the config option unless we are building a watchdog that 
supports the given option. Or something like that. But that would be 
less flexible, as if we want to run the same kernel binary on different 
arm boards we can't make these values per board any more. The use case I 
am dealing with doesn't care about this, but I was thinking someone else 
might care. Which is why I thought it should be run time configurable 
via device tree instead of a compile time option.

But now that I have mentioned arm boards, I noticed we are talking about 
generic behaviour and there are also watchdogs running on architectures 
where device trees are not supported. That said, it might be better to 
make it compile time configurable now and add other configuration 
options later.

Any thoughts about that?

Thanks,
-Timo

  reply	other threads:[~2015-02-23  7:29 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-23 10:40 [PATCH] at91sam9_wdt: Allow watchdog to reset device at early boot Timo Kokkonen
2014-11-12  8:20 ` Timo Kokkonen
2014-11-13  9:12   ` Nicolas Ferre
2014-11-14  8:40     ` Timo Kokkonen
2014-11-21 12:23       ` Timo Kokkonen
2014-11-27  6:53         ` Timo Kokkonen
2014-11-27  9:22           ` Nicolas Ferre
2014-11-27 17:23             ` Guenter Roeck
2014-11-27 19:06               ` Boris Brezillon
2014-11-27 19:31                 ` Guenter Roeck
2014-11-28  0:30                   ` Alexandre Belloni
2014-11-28  6:40                   ` Timo Kokkonen
2014-11-27 19:00         ` Boris Brezillon
2014-11-28  6:42           ` Timo Kokkonen
2014-12-05 12:57           ` Timo Kokkonen
2014-12-05 14:12             ` Boris Brezillon
2014-12-05 18:42               ` Timo Kokkonen
2014-12-05 19:02                 ` Guenter Roeck
2014-12-05 20:32                   ` Timo Kokkonen
2014-12-05 21:39                     ` Guenter Roeck
2014-12-06 10:11                       ` Timo Kokkonen
2015-01-13 14:53                         ` Guenter Roeck
2015-01-14  6:09                           ` Timo Kokkonen
2015-02-18 12:57                           ` [PATCHv3 0/2] watchdog: Introduce "early-timeout-sec" property Timo Kokkonen
2015-02-18 12:57                             ` [PATCH 1/2] devicetree: Document generic watchdog properties Timo Kokkonen
2015-02-18 12:57                             ` [PATCH 2/2] at91sam9_wdt: Allow watchdog to reset device at early boot Timo Kokkonen
2015-02-18 13:21                               ` Boris Brezillon
2015-02-18 13:59                               ` Guenter Roeck
2015-02-18 14:17                                 ` Boris Brezillon
2015-02-18 14:50                                   ` Guenter Roeck
2015-02-18 16:00                                     ` Alexandre Belloni
2015-02-18 17:50                                       ` Guenter Roeck
2015-02-18 20:21                                         ` Boris Brezillon
2015-02-19  6:02                                           ` Timo Kokkonen
2015-02-18 21:11                                       ` Rob Herring
2015-02-19  6:14                                         ` Timo Kokkonen
2015-02-20 14:06                                           ` Rob Herring
2015-02-20 16:28                                             ` Guenter Roeck
2015-02-20 19:43                                               ` Boris Brezillon
2015-02-20 20:04                                                 ` Guenter Roeck
2015-02-20  7:48                               ` Jean-Christophe PLAGNIOL-VILLARD
2015-02-20  7:51                                 ` Boris Brezillon
2015-02-20 16:33                                   ` Jean-Christophe PLAGNIOL-VILLARD
2015-02-20 17:16                                     ` Boris Brezillon
2015-02-20 18:06                                       ` Guenter Roeck
2015-02-23  7:29                                         ` Timo Kokkonen [this message]
2015-02-23  8:51                                           ` Boris Brezillon
2015-02-23  9:11                                             ` Timo Kokkonen
2015-02-23 16:19                                               ` Guenter Roeck
2015-02-23 17:10                                                 ` Rob Herring
2015-02-23 17:43                                                   ` Guenter Roeck
2015-02-20  8:00                                 ` Timo Kokkonen
2015-02-20 16:09                                 ` Guenter Roeck
2015-02-18 13:16                             ` [PATCHv3 0/2] watchdog: Introduce "early-timeout-sec" property Boris Brezillon
2015-02-18 13:51                               ` Timo Kokkonen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54EAD6E5.8090104@offcode.fi \
    --to=timo.kokkonen@offcode.fi \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).