Hi Stephen, again Can I confirm ?? Was I misunderstanding ?? > 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. ------ Pattern1 ----------- sound_soc { clocks = <&xxx>, <&xxx>; clock-names = "cpu", "codec"; ... cpu { /* of_cpu_node */ ... }; codec { /* of_codec_node */ ... }; }; ---------------------------- Do you mean, this case we can use devm_get_clk_from_child(dev, of_cpu_node, "cpu"); devm_get_clk_from_child(dev, of_codec_node, "codec"); ------ Pattern2 ----------- sound_soc { ... cpu { /* of_cpu_node */ clocks = <&xxx>; ... }; codec { /* of_codec_node */ clocks = <&xxx>; ... }; }; ---------------------------- And, this case, we can use devm_get_clk_from_child(dev, of_cpu_node, NULL); devm_get_clk_from_child(dev, of_codec_node, NULL); If so, I can use it without DT change. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html