Re: [PATCH v3 3/6] dt-bindings: clock: imx8mp: Add reset-controller sub-node

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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






[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux