linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
To: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
	Charles Keepax <ckeepax@opensource.cirrus.com>
Cc: devicetree@vger.kernel.org, alsa-devel@alsa-project.org,
	bgoswami@codeaurora.org, linux-kernel@vger.kernel.org,
	plai@codeaurora.org, robh+dt@kernel.org, lgirdwood@gmail.com,
	Vinod Koul <vkoul@kernel.org>, Mark Brown <broonie@kernel.org>,
	spapothi@codeaurora.org
Subject: Re: [alsa-devel] [PATCH v2 3/5] ASoC: core: add support to snd_soc_dai_get_sdw_stream()
Date: Thu, 10 Oct 2019 15:52:56 +0100	[thread overview]
Message-ID: <e671930b-645a-7ee3-6926-eea39626c0a3@linaro.org> (raw)
In-Reply-To: <22eff3aa-dfd6-1ee5-8f22-2af492286053@linux.intel.com>



On 10/10/2019 15:01, Pierre-Louis Bossart wrote:
> 
>>>> It's been a while since this thread started, and I still don't
>>>> quite get the concepts or logic.
>>>>
>>>> First, I don't understand what the problem with "aux" devices is.
>>>> All the SoundWire stuff is based on the concept of DAI, so I guess
>>>> I am
>>>
>>> That is the actual problem! Some aux devices does not have dais.
>>>
>>
>> Usually aux devices are used for things like analog amplifiers that
>> clearly don't have a digital interface, thus it really makes no sense
>> to have a DAI link connecting them. So I guess my question here
>> would be what is the thinking on making the "smart amplifier" dailess?
>> It feels like having a CODEC to CODEC DAI between the CODEC and
>> the AMP would be a more obvious way to connect the two devices
>> and would presumably avoid the issues being discussed around the
>> patch.
> 
> Ah, now I get it, I missed the point about not having DAIs for the 
> amplifier.
> 
> I will second Charles' point, the code you have in the machine driver at 

I agree with Charles,

WSA8810/WSA8815 is connected via SoundWire digital interface, so I can 
try to model this amplifier with dais and see how it ends up.

I still need to figure out prefixing multiple instances of this 
Amplifier controls with "Left" and "Right"

> [1] gets a SoundWire stream context from the SLIMbus codec dai. It's a 
> bit odd to mix layers this way.

Yep we have a very mixed setup on this SoC.

So it looks like this.
Main WCD934X Codec which is connected via SLIMBus which has SoundWire 
Controller block along with other analog + digital blocks.
Again the SoundWire Controller from that WCD934X codec is wired up to 
WSA881X Smart speaker amplifiers.


> 
> 
> And if I look at the code below, taken from [1], if you have more than 
> one codec, then your code looks problematic: data->sruntime would be 
> overriden and you'd use the info from the last codec dai on the dailink...

This code has been written very much specific to DB845c which has only 
one codec. But I agree with your point.

--srini

> 
> case SLIMBUS_0_RX...SLIMBUS_6_TX:
>    for (i = 0 ; i < dai_link->num_codecs; i++) {
>      [snip]
>      data->sruntime[cpu_dai->id] =
>      snd_soc_dai_get_sdw_stream(rtd->codec_dais[i], 0); << same 
> destination for multiple codec_dais...
> 
> If you keep the amp dai-less, then the stream concept should be somehow 
> allocated on the master (or machine) side and passed to the codec dais 
> that are associated to the same 'stream'.
> 
> 
> [1] 
> https://git.linaro.org/people/srinivas.kandagatla/linux.git/tree/sound/soc/qcom/db845c.c?h=release/db845c/qcomlt-5.2 
> 
> 

  reply	other threads:[~2019-10-10 14:53 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-13  8:35 [PATCH v2 0/5] soundwire: Add support to Qualcomm SoundWire master Srinivas Kandagatla
2019-08-13  8:35 ` [PATCH v2 1/5] soundwire: Add compute_params callback Srinivas Kandagatla
2019-08-13 14:34   ` Pierre-Louis Bossart
2019-08-13 18:17     ` Srinivas Kandagatla
2019-08-13 19:08       ` Pierre-Louis Bossart
2019-08-14  4:05         ` Vinod Koul
2019-09-04  9:28   ` Vinod Koul
2019-09-04 13:36     ` [alsa-devel] " Pierre-Louis Bossart
2019-08-13  8:35 ` [PATCH v2 2/5] soundwire: stream: make stream name a const pointer Srinivas Kandagatla
2019-09-04  9:29   ` Vinod Koul
2019-08-13  8:35 ` [PATCH v2 3/5] ASoC: core: add support to snd_soc_dai_get_sdw_stream() Srinivas Kandagatla
2019-08-13 14:44   ` [alsa-devel] " Pierre-Louis Bossart
2019-08-13 16:50     ` Srinivas Kandagatla
2019-08-13 17:51       ` Pierre-Louis Bossart
2019-08-13 18:06         ` Srinivas Kandagatla
2019-08-13 19:15           ` Pierre-Louis Bossart
2019-08-13 19:18             ` Mark Brown
2019-08-13 19:38               ` Pierre-Louis Bossart
2019-08-13 19:58                 ` Mark Brown
2019-08-14  4:11                   ` Vinod Koul
2019-08-14  9:08                     ` Mark Brown
2019-08-14 14:09                     ` Pierre-Louis Bossart
2019-10-09  8:32                       ` Srinivas Kandagatla
2019-10-09 14:29                         ` Pierre-Louis Bossart
2019-10-09 16:01                           ` Srinivas Kandagatla
2019-10-09 18:53                             ` Pierre-Louis Bossart
2019-10-10  8:50                               ` Srinivas Kandagatla
2019-10-10 12:03                                 ` Charles Keepax
2019-10-10 13:51                                   ` Mark Brown
2019-10-10 14:01                                   ` Pierre-Louis Bossart
2019-10-10 14:52                                     ` Srinivas Kandagatla [this message]
2019-10-10 15:49                                       ` Pierre-Louis Bossart
2019-10-11 12:30                                         ` Srinivas Kandagatla
2019-08-13 16:03   ` Cezary Rojewski
2019-08-13 16:52     ` Srinivas Kandagatla
2019-08-13 17:29       ` Cezary Rojewski
2019-08-13 19:19         ` Mark Brown
2019-08-13  8:35 ` [PATCH v2 4/5] dt-bindings: soundwire: add bindings for Qcom controller Srinivas Kandagatla
2019-08-23  7:28   ` Vinod Koul
2019-08-30  8:05     ` Srinivas Kandagatla
2019-08-13  8:35 ` [PATCH v2 5/5] soundwire: qcom: add support for SoundWire controller Srinivas Kandagatla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e671930b-645a-7ee3-6926-eea39626c0a3@linaro.org \
    --to=srinivas.kandagatla@linaro.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=bgoswami@codeaurora.org \
    --cc=broonie@kernel.org \
    --cc=ckeepax@opensource.cirrus.com \
    --cc=devicetree@vger.kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=plai@codeaurora.org \
    --cc=robh+dt@kernel.org \
    --cc=spapothi@codeaurora.org \
    --cc=vkoul@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).