Hi Stephen, On jeu., juin 30 2016, Stephen Boyd <sboyd@xxxxxxxxxxxxxx> wrote: >> + >> + spin_lock_init(&driver_data->lock); >> + >> + for (i = 0; i < num_periph; i++) { >> + struct clk *clk = driver_data->clk_data.clks[i]; >> + >> + if (armada_3700_add_composite_clk(&data[i], parent_name, reg, >> + &driver_data->lock, dev, clk)) >> + dev_err(dev, "Can't register periph clock %s\n", >> + data[i].name); >> + } >> + >> + ret = of_clk_add_provider(np, of_clk_src_onecell_get, >> + &driver_data->clk_data); >> + if (ret) { >> + for (i = 0; i < num_periph; i++) >> + clk_unregister(driver_data->clk_data.clks[i]); > > It would be nice if we had devm_* registration in composite > clks > This comment is the only one I didn't take into account in the second version I've just sent. I agree it would be nice and I am willing to add it. However these last days I was very busy with the birth of my last child: I managed to find time to write this second version in time to be merged for 4.8 but not enough to add these new function. I will try to send a patch for it next week. Thanks for your review, Gregory -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com -- 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