[GIT PULL] DT clk binding support
Shawn Guo
shawn.guo at linaro.org
Mon May 21 19:26:18 EDT 2012
On Mon, May 21, 2012 at 01:30:59PM -0500, Rob Herring wrote:
> > With the bindings here, I need something like below in device tree to
> > replace the clk lookup registration that is currently done in imx6q
> > sabrelite specific setup code. However the problem here is I have cko
> > defined in clock driver, and thus I can not give phandle to cko in
> > device tree. What I suggest is for such cases, we could require
> > clock-names = "cko" than clocks = <&cko>, and of_clk_get() should also
> > be able to find the clock with looking for the clk name.
> >
> > imx6q-sabrelite.dts:
> >
> > codec: sgtl5000 at 0a {
> > compatible = "fsl,sgtl5000";
> > reg = <0x0a>;
> > clocks = <&cko>;
> > };
> >
> > mach-imx6q.c, imx6q_sabrelite_cko1_setup():
> >
> > cko1 = clk_get_sys(NULL, "cko1");
> > clk_register_clkdev(cko1, NULL, "0-000a");
> >
>
> What!? This is a terrible abuse/hack of the clock binding and is in no
> way what was intended. You cannot use half of the clock binding. You
> have to have a provider. The primary binding is a phandle reference.
> clock-names is just auxiliary data.
>
Well, on conversation [1], it seems people agreed that for those huge
clock tree, only leaf clocks should be exposed in device tree. Then
please help me understand how we could do that with the current binding
design, considering those leaf clocks are consumers of their parent
clocks while being provider to the leaf clock the parent clock is not
exposed in device tree.
Regards,
Shawn
[1] http://thread.gmane.org/gmane.linux.ports.arm.kernel/139414/focus=1216423
More information about the linux-arm-kernel
mailing list