On 5/21/24 10:12, Mark Brown wrote:
On Tue, May 21, 2024 at 08:43:09AM -0500, Pierre-Louis Bossart wrote:
allow me to give you another counter example, beyond the AEC reference I mentioned earlier. It's not uncommon for CPU DAIs to have loopback capabilities, which are used for tests on boards where the codec has no capture capabilities. I think it's a feature that needs to be allowed, not a 'wrong setting'.
This is something we could do properly if we had full digital routing rather than bolting things on the side of the CPU<->CODEC model - having these things where we have to take a CODEC into account even though we're not actually using it is one of the big issues with DPCM.
No disagreement here, these echo references and loopbacks are ugly to support with the dependency between playback and capture directions that isn't well handled, e.g. if someone starts to capture before playback started.
For now we're kind of stuck, what I would suggest is just to remove the extra check that both CPU and codec dai can support a direction, and move on with the other cleanups suggested by Morimoto-san.