[alsa-devel] [PATCH] ASoC: da7210: Add support for PLL and SRM

Ashish Chavan ashish.chavan at kpitcummins.com
Mon Apr 16 15:42:30 CEST 2012


On Mon, 2012-04-16 at 13:59 +0100, Mark Brown wrote:
> On Mon, Apr 16, 2012 at 05:53:13PM +0530, Ashish Chavan wrote:
> > On Fri, 2012-04-13 at 10:30 +0100, Mark Brown wrote:
> > > On Wed, Apr 11, 2012 at 10:58:40AM +0530, Ashish Chavan wrote:
> 
> > > > +	/* for MASTER mode, fs = 48Khz */
> > > > +	{ 12000000, 0xF3, 0x12, 0x7, },		/* MCLK=12Mhz */
> 
> > > This *still* has magic number problems.
> 
> > OK, will replace frequency values with defines. That is what you are
> > pointing, right?
> 
> No!  As with *all* the other times you've submitted this you're relying
> on magic array indexes to find stuff in the table which I've *repeatedly* 
> pointed out is terrible for readability and maintainability.  It's very
> disappointing to see the same problem coming back repeatedly.
> 

Thanks for bearing with me Mark. But the only other way I can think is
to make the *extra* info like master/slave and fs a part of array itself
and then search through the array to get required divisors. In this
case, every time I need to search through entire array to pick up
correct divisors. Wouldn't that be inefficient, especially when the
array indexes are fixed? Or the readability/maintainability of that
would outweigh slight performance overhead?

> > > These defines now need to be kept in sync with the table and are going
> > > to be *very* painful to review.
> 
> > Yes, these defines need to be kept in sync with the table. Can you
> > suggest any other, preferred way to do this?
> 
> Yes.  For example, you could use the same technique you're using for the
> frequencies.




More information about the Alsa-devel mailing list