[alsa-devel] ASoC:Question rate constraint between the dais

Jassi Brar jassisinghbrar at gmail.com
Sun Mar 18 07:22:01 CET 2012


On Sun, Mar 18, 2012 at 1:19 AM, Trent Piepho <tpiepho at gmail.com> wrote:
>>
>> > > There's a way to do this, and it's the way that the WM8988 driver is
>> > > doing it - obviously you'll have different criteria for choosing
>> > > constraints but the actual application of the constraints is going to be
>> > > done in the same way.
>>
>> > Since the constraint is based on the current configuration of another
>> > DAI, the two DAIs need some way to query each other's parameters.  The
>>
>> Since they're both provided by the same driver this is trivial.
>
> It's not that trivial with the sub-streams in question aren't in the
> same instance of the driver, e.g. playback and record.  Say you had
> two WM8988 codecs, how does one codec get a handle to the other?
>
A CODEC is constrained only by its own, not by its another instance.
If your machine routes related signals to two instances of the CODEC,
then you have constraints at machine level, still not at codec level.
So your machine driver should keep track of the first active codec's
configuration and impose that on dais of the other as requests come.
If actually your machine doesn't impose any such constraint, it becomes
a policy, which should be imposed from user-space.

Implementation wise, maybe two tightly coupled dais at machine level,
could be represented as one virtual dai with independent virtual 'mute'
switches for each physical path?

I find it so obvious, so perhaps I am overlooking something :D

-j


More information about the Alsa-devel mailing list