On Wed, Dec 18, 2019 at 03:37:49PM +0800, Xingyu Chen wrote: > 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. Just add of_platform_default_populate() call and clean-up calls. That's not what I'd call 'too many changes'. > 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... > > 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 > > > > . > >