Re: [PATCH v5 2/4] dt-bindings: watchdog: add new binding for meson secure watchdog
From: Xingyu Chen <hidden>
Date: 2019-12-19 02:50:31
Also in:
linux-amlogic, linux-devicetree, linux-watchdog, lkml
Hi, Rob On 2019/12/19 4:34, Rob Herring wrote:
On Wed, Dec 18, 2019 at 03:37:49PM +0800, Xingyu Chen wrote:quoted
Hi, Guenter Martin On 2019/12/16 21:30, Guenter Roeck wrote:quoted
On 12/15/19 10:03 PM, Xingyu Chen wrote:quoted
Hi, Martin Sorry for the late reply. On 2019/12/13 4:05, Martin Blumenstingl wrote:quoted
Hi Xingyu and Rob, On Thu, Dec 12, 2019 at 1:20 PM Xingyu Chen [off-list ref] wrote: [...]quoted
+examples: + - | + watchdog { + compatible = "amlogic,meson-sec-wdt"; + timeout-sec = <60>; + };in v3 of this patch Rob commented that there shouldn't be an OF node if there are no additional properties with timeout-sec there's now an additional property so my understanding is that it's fine to have an OF nodeYour understanding is correct.quoted
what I don't understand yet is where this node should be placed. is it supposed to be a child node of the secure monitor node (for which we already have a binding here: Documentation/devicetree/bindings/firmware/meson/meson_sm.txt) or where else would we place it inside the .dts?IMO, Although the watchdog node need to reference the meson_sm node, there is no bus-like dependencies between the devices which the two nodes corresponding to. so i think that the watchdog node as child node of meson_sm maybe not appropriate.The watchdog driver needs the meson SM's dt node, and it depends on the existence of that node. That seems enough of a relationship to warrant having it as child note.Thanks for your reply, if i take the wdt node as child of secure monitor (sm), how should i register or find the wdt device ? I only think of the following three methods : 1). update the sm driver,and scan®ister wdt device when the sm driver probes(It is like i2c), but there are too many changes involved.Just add of_platform_default_populate() call and clean-up calls. That's not what I'd call 'too many changes'.
Thanks for your guidance.
quoted
2). add "simple-bus" key string to compatible of sm node, and it will make the child node is registered as platform device, but it seems that the key string is not match current scene.You previously said it's not a bus...quoted
secure-monitor { compatible = "amlogic,meson-gxbb-sm", "simple-bus"; watchdog { compatible = "amlogic,meson-sec-wdt"; timeout-sec = <60>; } } 3). don't register device, and find directly the watchdog node by using the of_* API in watchdog driver (Eg: linux-4.x/drivers/tee/optee/core.c) secure-monitor { compatible = "amlogic,meson-gxbb-sm"; watchdog { compatible = "amlogic,meson-sec-wdt"; timeout-sec = <60>; } } The method 3 looks better for me, do you have a better suggestion ? Thanks BRquoted
Guenter ..
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel