Re: [PATCH] ARM: SAMSUNG: s3c_set_clksrc returns for single parent clock.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 18, 2010 at 09:38:17AM +0900, Thomas Abraham wrote:
> The function s3c_set_clksrc should return if the clksrc_clk clock has
> only one possible parent clock.

Does this actually relate to a real bug or is this something that you've
come across whilst reading the code?

>From arch/arm/plat-samnsung/clock-clksrc.c:

   181                          if (!clksrc->reg_div.reg)
   182                                  clksrc->clk.ops = &clksrc_ops_nodiv;
   183                          else if (!clksrc->reg_src.reg)
   184                                  clksrc->clk.ops = &clksrc_ops_nosrc;
   185                          else
   186                                  clksrc->clk.ops = &clksrc_ops;

So we change the ops dependant on which register(s) we have availalbe.
 
> Signed-of-by:  Thomas Abraham <thomas.ab@xxxxxxxxxxx>
> ---
>  arch/arm/plat-samsung/clock-clksrc.c |    5 +++--
>  1 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
> index 33c633a..80da4c4 100644
> --- a/arch/arm/plat-samsung/clock-clksrc.c
> +++ b/arch/arm/plat-samsung/clock-clksrc.c
> @@ -131,9 +131,10 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
>  	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
>  	u32 clksrc = 0;
>  
> -	if (clk->reg_src.reg)
> -		clksrc = __raw_readl(clk->reg_src.reg);
> +	if (!clk->reg_src.reg)
> +		return;
>  
> +	clksrc = __raw_readl(clk->reg_src.reg);
>  	clksrc &= mask;
>  	clksrc >>= clk->reg_src.shift;
>  
> -- 
> 1.6.3.3
> 

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux