Hi Stephen Thank you for your feedback.
> > > > sound_soc { > > > > clocks = <&xxx>, <&xxx>; > > > > clock-names = "cpu", "codec"; > > > > ... > > > > cpu { > > > > ... > > > > }; > > > > codec { > > > > ... > > > > }; > > > > }; (snip) > The problem is that it encourages the use of of_clk_get() when > clk_get() is more desirable. Ideally of_clk_get() is never used > when a device exists. In this case, it seems like we need to > support it though, hence the suggestion of having a > devm_get_clk_from_child() API, that explicitly reads as "get a > clock from a child node of this device". The distinction is > important, because of_clk_get() should rarely be used. I understand your point, but I think devm_get_clk_from_child() needs new DT setings, and it can't keep compatibility, or it makes driver complex. I think it is nice to have. but, I want to keep current style. Thus, I will try to use current of_clk_get() as-is, and call clk_free() somehow in this driver.