Re: [PATCH 5/17] ARM: OMAP2: Change 24xx to use new register access

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

 



* Tony Lindgren <tony@xxxxxxxxxxx> [080409 21:54]:
> * Russell King - ARM Linux <linux@xxxxxxxxxxxxxxxx> [080409 21:22]:
> > On Wed, Apr 09, 2008 at 08:57:13PM +0000, Tony Lindgren wrote:
> > > Here's how it now looks:
> > 
> > Not quite.  The point I was trying to make is:
> > 
> > > @@ -302,15 +288,17 @@
> > >  	int eth_cs;
> > >  	unsigned long cs_mem_base;
> > >  	unsigned int muxed, rate;
> > > -	struct clk *l3ck;
> > > +	struct clk *gpmc_fck;
> > >  
> > >  	eth_cs	= H4_SMC91X_CS;
> > >  
> > > -	l3ck = clk_get(NULL, "core_l3_ck");
> > > -	if (IS_ERR(l3ck))
> > > -		rate = 100000000;
> > > -	else
> > > -		rate = clk_get_rate(l3ck);
> > > +	gpmc_fck = clk_get(NULL, "gpmc_fck");	/* Always on ENABLE_ON_INIT */
> > > +	if (IS_ERR(gpmc_fck)) {
> > > +		WARN_ON(1);
> > > +		return;
> > > +	}
> > > +
> > 
> > that there should be a call to clk_enable() here - if even if it's
> > apparantly "always on".  (If it's always enabled then the call won't
> > do any harm anyway - it just serves to ensure that the API conditions
> > are followed.)
> 
> OK, I'll clk_enable() before clk_get_rate() and then clk_disable() to
> make usecounts happy as rate is only needed for setting GPMC timings:
> 
> @@ -302,15 +288,19 @@
>  	int eth_cs;
>  	unsigned long cs_mem_base;
>  	unsigned int muxed, rate;
> -	struct clk *l3ck;
> +	struct clk *gpmc_fck;
>  
>  	eth_cs	= H4_SMC91X_CS;
>  
> -	l3ck = clk_get(NULL, "core_l3_ck");
> -	if (IS_ERR(l3ck))
> -		rate = 100000000;
> -	else
> -		rate = clk_get_rate(l3ck);
> +	gpmc_fck = clk_get(NULL, "gpmc_fck");	/* Always on ENABLE_ON_INIT */
> +	if (IS_ERR(gpmc_fck)) {
> +		WARN_ON(1);
> +		return;
> +	}
> +
> +	clk_enable(gpmc_fck);
> +	rate = clk_get_rate(gpmc_fck);
> +	clk_disable(gpmc_fck);
>  
>  	if (is_gpmc_muxed())
>  		muxed = 0x200;

I made one more update to do clk_disable() and clk_put() at the end of
the function..

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

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux