"Nori, Sekhar" <[email protected]> writes:

> On Tue, Dec 08, 2009 at 05:34:41, Kevin Hilman wrote:
>> Sekhar Nori <[email protected]> writes:
>>
>
> [...]
>
>> > diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c 
>> > b/arch/arm/mach-davinci/board-dm646x-evm.c
>> > index 6ff3411..5d9283f 100644
>> > --- a/arch/arm/mach-davinci/board-dm646x-evm.c
>> > +++ b/arch/arm/mach-davinci/board-dm646x-evm.c
>> > @@ -40,6 +40,8 @@
>
> [...]
>
>> >
>> > +#define CDCE949_XIN_RATE   27000000
>> > +
>> > +/* CDCE949 support - "lpsc" field is overridden to work as clock number */
>> > +static struct clk cdce_clk_in = {
>> > +   .name   = "cdce_xin",
>> > +   .flags  = ALWAYS_ENABLED,
>>
>> Why do you need ALWAYS_ENABLED here.  I'd rather see
>> clk_get()/clk_enable() used when this clock is required.
>>
>
> This particular clock is just the crystal which feeds
> into the CDCE949. It cannot be enabled/disabled per se.
> This crystal is different from the OSC_IN crystal which
> feeds into the SoC.
>
> However, I do see that none of the reference clocks in
> <soc>.c files are marked as always enabled. So, I will
> remove this.

OK.  The ALWAYS_ENABLED field currently only applies to clocks that have
a valid enable (currently only PSC clocks.)

>> To do this, we'll need to add enable/disable functionaltiy for non-PSC
>> clocks.  Probably the best way to do this is to add add an 'enable' hook
>> to 'struct clk' and clk_enable() can use that.
>
> CDCE949 does have functionality to disable particular clock
> output (Y1, Y2 etc..), but that's not supported right now.
> I guess that can be an enhancement patch done as and when it
> is required.

Agreed, this can be added later.

Kevin
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to