Chaithrika U S <[email protected]> writes:

> Some modules do not have PSC to control their clocks.
> The 'lpsc' field in the clk structure is 0 for such clocks.
>
> In the clock disable function check for CLK PSC flag before
> disabling the PSC. If this is not taken care of then it may
> so happen that module controlled by LPSC 0 is erroneously disabled.
>
> Signed-off-by: Chaithrika U S <[email protected]>

Looks good, Applying to master and queuing for 2.6.33-rc in
davinci-fixes branch.

Kevin


> ---
>  arch/arm/mach-davinci/clock.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-davinci/clock.c b/arch/arm/mach-davinci/clock.c
> index e46a643..f097f8d 100644
> --- a/arch/arm/mach-davinci/clock.c
> +++ b/arch/arm/mach-davinci/clock.c
> @@ -49,7 +49,8 @@ static void __clk_disable(struct clk *clk)
>  {
>       if (WARN_ON(atomic_read(&clk->usecount) == 0))
>               return;
> -     if (atomic_dec_and_test(&clk->usecount) && !(clk->flags & CLK_PLL))
> +     if (atomic_dec_and_test(&clk->usecount) && !(clk->flags & CLK_PLL)
> +                                             && (clk->flags & CLK_PSC))
>               davinci_psc_config(psc_domain(clk), clk->gpsc, clk->lpsc, 0);
>       if (clk->parent)
>               __clk_disable(clk->parent);
> -- 
> 1.5.6
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to