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