[alsa-devel] [PATCH v2 3/5] ASoC: core: add support to snd_soc_dai_get_sdw_stream()

Srinivas Kandagatla srinivas.kandagatla at linaro.org
Wed Oct 9 10:32:51 CEST 2019


Hi Pierre,

On 14/08/2019 15:09, Pierre-Louis Bossart wrote:
> 
> 
> On 8/13/19 11:11 PM, Vinod Koul wrote:
>> On 13-08-19, 20:58, Mark Brown wrote:
>>> On Tue, Aug 13, 2019 at 02:38:53PM -0500, Pierre-Louis Bossart wrote:
>>>
>>>> Indeed. I don't have a full understanding of that part to be honest, 
>>>> nor why
>>>> we need something SoundWire-specific. We already abused the 
>>>> set_tdm_slot API
>>>> to store an HDaudio stream, now we have a rather confusing stream
>>>> information for SoundWire and I have about 3 other 'stream' contexts in
>>>> SOF... I am still doing basic cleanups but this has been on my radar 
>>>> for a
>>>> while.
>>>
>>> There is something to be said for not abusing the TDM slot API if it can
>>> make things clearer by using bus-idiomatic mechanisms, but it does mean
>>> everything needs to know about each individual bus :/ .
>>
>> Here ASoC doesn't need to know about sdw bus. As Srini explained, this
>> helps in the case for him to get the stream context and set the stream
>> context from the machine driver.
>>
>> Nothing else is expected to be done from this API. We already do a set
>> using snd_soc_dai_set_sdw_stream(). Here we add the 
>> snd_soc_dai_get_sdw_stream() to query
> 
> I didn't see a call to snd_soc_dai_set_sdw_stream() in Srini's code?


There is a snd_soc_dai_get_sdw_stream() to get stream context and we add 
slave streams(amplifier in this case) to that context using 
sdw_stream_add_slave() in machine driver[1].

Without this helper there is no way to link slave streams to stream 
context in non dai based setup like smart speaker amplifiers.

Currently this driver is blocked on this patch, If you think there are 
other ways to do this, am happy to try them out.

Thanks,
srini

[1] 
https://git.linaro.org/people/srinivas.kandagatla/linux.git/tree/sound/soc/qcom/db845c.c?h=release/db845c/qcomlt-5.2


More information about the Alsa-devel mailing list