regression: Clock changes in next-20141205 break at least omap4

Paul Walmsley pwalmsley at nvidia.com
Tue Dec 16 12:45:25 PST 2014


On Tue, 16 Dec 2014, Russell King - ARM Linux wrote:

> On Tue, Dec 16, 2014 at 01:01:17PM -0700, Paul Walmsley wrote:
> > So the reference clock and functional clock are (usually) required by the
> > PLL to operate, and should therefore be required by the PLL clock driver
> > code in the kernel; but one could claim that they aren't technically parent
> > clocks of the PLL in a clock tree sense, since the downstream output clock
> > isn't directly derived from either of those clocks.
> 
> The reference clock is the parent clock for a PLL, and the output clock 
> is a derivative of the reference clock. The PLL maths show that very 
> clearly.

The PLL's internal oscillator is the electrical source of the PLL's output 
clock.  The reference clock is just used to discipline that internal 
oscillator.  Even that's not necessary - the reference clock can be 
optional on some clock source implementations, which can run the internal 
oscillator in open-loop mode.

The question of what the appropriate "parent" clock(s) should be is really 
a question of how the software chooses to model it, and has more to do 
with use-counts, constraints, etc.  I don't believe we have documented a 
precise definition for what a "parent clock" is, in the Linux clock 
framework context.


- Paul



More information about the linux-arm-kernel mailing list