Re: [PATCH 0/2] ASoC: add N cpus to M codecs dai link support

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

 



On Wed, Jun 07, 2023 at 05:22:45PM +0100, Mark Brown wrote:
> On Wed, Jun 07, 2023 at 10:10:24AM -0500, Pierre-Louis Bossart wrote:
> > On 6/7/23 04:29, Richard Fitzgerald wrote:
> > > On 07/06/2023 04:12, Bard Liao wrote:
> 
> > > You are declaring that all the CPU and CODEC in the dailink behave as a
> > > single logical link. So you can just connect all CPUs to all CODECS.
> 
> > > That also fixes a problem with the existing N CPU to N CODEC mapping. It
> > > assumes that means CPU0 is connected to CODEC0, CPU1 is connected to
> > > CODEC1, ... But that isn't necessarily true. You could have an N:N
> > > mapping where multiple CPUs have been combined to create a multi-channel
> > > stream that is sent to all CODECs. 
> 
> > This is questionable when the CPUs are connected to different links.
> > SoundWire is not a giant switch matrix, there's a clear parent-child
> > dependency and limited scope.
> 
> > Example topology for a 2 link/4 amplifier solution.
> 
> Or a system with two distinct I2S DAIs (TDM is another thing).

I guess the bit that slightly phases me here is, historically a
DAI link has been the thing that specifies what is connected to
what. What kinda happened when we added multi-cpu is we bent
that assumption, at least for the N -> N case, and now even
more so for the N -> M case, where only a subset of the DAI link
is actually connected.

If your system looks like:

CPU A -> CODEC A
CPU B -> CODEC B

What makes this a single DAI link, rather than 2 DAI links? And
does the information within the DAI link about what is connected
to what not just start looking like DAI links?

Thanks,
Charles



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux