Hi, Guenter Martin
On 2019/12/16 21:30, Guenter Roeck wrote:
On 12/15/19 10:03 PM, Xingyu Chen wrote:
Hi, Martin
Sorry for the late reply.
On 2019/12/13 4:05, Martin Blumenstingl wrote:
Hi Xingyu and Rob,
On Thu, Dec 12, 2019 at 1:20 PM Xingyu Chen
<xingyu.chen@xxxxxxxxxxx> wrote:
[...]
+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 node
Your understanding is correct.
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.
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.
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
BR
Guenter
.