Messages in this thread | | | Date | Fri, 17 May 2024 13:10:05 -0400 | From | Frank Li <> | Subject | Re: [PATCH v3 3/6] dt-bindings: clock: imx8mp: Add reset-controller sub-node |
| |
On Fri, May 17, 2024 at 05:21:32PM +0100, Conor Dooley wrote: > On Thu, May 16, 2024 at 11:56:27PM -0400, Frank Li wrote: > > > Look like it is easy to register auxdev "reset" devices. But I have a > > problem. How to use it by DT phandle? "reset" devices is service provider. > > Some client will use it. > > > > Generally, reset node will used by other devices nodes. like > > > > ABC: reset { > > compatible="simple-reset"; > > ... > > } > > > > other node will use "reset = <&ABC 0>". If use auxdev, how to get &ABC > > in dts file. > > Whether or not you use auxdev or any other method etc, does not matter > in a DT system, the consumer will always have a phandle to the provider > node: > > ABC: whatever { > compatible = "whatever"; > #clock-cells = <...>; > #reset-cells = <...>; > } > > something-else { > clocks = <&ABC ...>; > resets = <&ABC ...>; > }
It goes back to old problem, "reset-cells" will be in "clock-controller".
clock-controller@30e20000 { compatible = "fsl,imx8mp-audio-blk-ctrl", "syscon", "simple-mfd"; reg = <0x30e20000 0x10000>; ... #reset-cells = <...>; ^^^ };
If create new "whatever" auxdev bus driver which included two aux devices, (clock and reset).
it will be similar with mfd. Still need change clock-controller@30e20000 drivers.
"Which is I suspect is gonna require a change to your clock driver, because the range in the existing clock nodes: audio_blk_ctrl: clock-controller@30e20000 { compatible = "fsl,imx8mp-audio-blk-ctrl"; reg = <0x30e20000 0x10000>; }; would then have to move to the mfd parent node, and your clock child would have a reg property that overlaps the reset region. You'd need to then define a new binding that splits the range in two - obviously doable, but significantly more work and more disruptive than using an auxdev."
So I don't know why auxdev will be better than mfd.
A possible benefit may be that Auxdev needn't binding doc for clock and reset node devices.
Frank
Frank
| |