Re: [net-next: PATCH v2 4/7] net: mvmdio: simplify clock handling
From: Andy Shevchenko <hidden>
Date: 2021-06-17 07:28:34
Also in:
lkml
On Thu, Jun 17, 2021 at 2:25 AM Marcin Wojtas [off-list ref] wrote:
śr., 16 cze 2021 o 21:48 Andrew Lunn [off-list ref] napisał(a):quoted
quoted
+ dev->clks[0].id = "core"; + dev->clks[1].id = "mg"; + dev->clks[2].id = "mg_core"; + dev->clks[3].id = "axi"; + ret = devm_clk_bulk_get_optional(&pdev->dev, MVMDIO_CLOCK_COUNT, + dev->clks);Kirkwood: mdio: mdio-bus@72004 { compatible = "marvell,orion-mdio"; #address-cells = <1>; #size-cells = <0>; reg = <0x72004 0x84>; interrupts = <46>; clocks = <&gate_clk 0>; status = "disabled"; Does this work? There is no clock-names in DT.Neither are the clocks in Armada 7k8k / CN913x: CP11X_LABEL(mdio): mdio@12a200 { #address-cells = <1>; #size-cells = <0>; compatible = "marvell,orion-mdio"; reg = <0x12a200 0x10>; clocks = <&CP11X_LABEL(clk) 1 9>, <&CP11X_LABEL(clk) 1 5>, <&CP11X_LABEL(clk) 1 6>, <&CP11X_LABEL(clk) 1 18>; status = "disabled"; }; Apparently I misread the code and got convinced that contrary to devm_clk_get_optional(), the devm_clk_get_bulk_optional() obtains the clocks directly by index, not name (on the tested boards, the same clocks are enabled by the other interfaces, so the problems
Me too. Sorry for the wrong suggestion. I think we need something that actually gets clocks by indices in a bulk, but this is another story.
I will drop this patch. Thank you for spotting the issue.
I'm fine with this. -- With Best Regards, Andy Shevchenko