[RFC PATCH 1/2] soundwire: add support for static port mapping
Srinivas Kandagatla
srinivas.kandagatla at linaro.org
Mon Jan 25 17:23:35 CET 2021
On 22/01/2021 16:42, Pierre-Louis Bossart wrote:
>>>
>>> if you completely remove the stream and re-add it with updated
>>> configuration things should work.
>>
>> That's exactly what we do currently!
>>
>> The updated ports due to new configuration ex: for "mic capture"
>> dailink needs to be communicated from slave(codec) to master so that
>> it can allocate correct ports. That is what this patch is trying to do
>> (share current port map information).
>
> .. we have a disconnect on how to do this configuration update.
>
> The 'stream' support was designed so that a stream can be split across
> multiple devices (both masters and slaves). With this design we need to
> have a central configuration and distribute the information to all
> devices taking part of the stream.
>
> It seems you are in a different solution-space, where the codec driver
> needs to notify the master of which ports it needs to use?
Correct! As Codec is the place where we have mixer controls ant it can
clearly tell which master ports should be used for that particular
configuration.
>
> I also don't see where the mapping is actually set. Patch 2 uses a
> mapping but there's no codec driver change that defines the mapping?
>
> Do you actually call sdw_stream_add_slave() with a new mapping?
>
Yes, currently am working on a codec driver for WCD938x Codec, which I
will posting very soon!
> It feels we are missing the codec part to really see what you are trying
> to do?
My WIP code is at
https://git.linaro.org/people/srinivas.kandagatla/linux.git/tree/sound/soc/codecs/wcd938x.c?h=wcd938x/wip#n4526
Currently the master ports are hardcoded in the driver for now, but
these will come from DT.
--srini
More information about the Alsa-devel
mailing list