Re: [RFC] Common clock framework for external clock generators

From: Mark Brown
Date: Sun May 13 2012 - 13:16:35 EST


On Sun, May 13, 2012 at 07:11:09PM +0200, Sebastian Hesselbarh wrote:

> One more thing I thought about: The platform I currently use needs
> to pass the external clocks to the platform devices that can use
> them
> later. IMHO the correct way of creating clocks would be:

> - register i2c clock driver and let it register its clocks with names
> like e.g. si5351, clkout0. The clock driver itself cannot and should
> not know who uses it later on.
> - let drivers look for e.g. kirkwood-i2s.1, extclk because the i2s
> driver cannot know where the external clock comes from.
> - have a board-specific function that configures clock hierarchy and
> create suitable clk_aliases e.g.
> si5351,clkout0 = kirkwood-i2s.1,extclk.

> Currently I added a callback function pointer to the platform data
> passed to the i2c clock driver that is called at the end of clock
> driver probe. I doubt it will be accepted that way but can't think
> of any other way..

This is what clkdev is for - it provides such a layer of indirection.
The only trick right now is that it needs the struct clk to add the
lookup but some platform data for your driver would probably do the
trick in the short term, I don't know what the plan is long term with
that stuff.

Attachment: signature.asc
Description: Digital signature