On Wed, Oct 20, 2010 at 12:27:43PM +0900, Jassi Brar wrote: > On Wed, Oct 20, 2010 at 12:13 PM, Mark Brown > > If we have something in the driver data struct specifying the masks to > > use then set these at probe time rather than having the if statements - > > probably the same mask can be used for playback & record if the > > bitfields are lined up similarly. This would then be: > > con |= data->active_mask; > > con &= ~data->pause_mask; > > or similar, possibly with some shifts. > Let me see if the space saved is worth the complication. I was thinking it should make something similar by making it clear that we're just doing the same thing to a different location rather than lots of conditional code to follow. > > Please add a comment explaining that you're inverting the orientation > > you set previously - it's really surprising when reading the code. > Ok, I'll add a comment. > Btw, isn't it the standard way? Don't other I2S CPU drivers do the same thing ? Not commonly - normally people don't implement anything except plain I2S mode, or have explict mode and inversion bits (so the mode sets the expected polarity and then the inversion bit swaps that). > > How would the index be used with multi-component? > For example, please look at [Patch 23/25] > + /* Secondary is at offset MAX_I2S from Primary */ > + str = (char *)smdk_dai[SEC_PLAYBACK].cpu_dai_name; > + str[strlen(str) - 1] = '0' + MAX_I2S; Hrm, slightly fiddly. Perhaps we want a function people can call which will generate the secondary DAI name for you? Might be more directly what people want. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel