From: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev>
To: Cezary Rojewski <cezary.rojewski@intel.com>,
Vinod Koul <vkoul@kernel.org>
Cc: linux-sound@vger.kernel.org, broonie@kernel.org, tiwai@suse.com,
perex@perex.cz, amade@asmblr.net, linux-kernel@vger.kernel.org,
yung-chuan.liao@linux.intel.com
Subject: Re: [PATCH v2 0/7] ASoC: Intel: avs: Soundwire support
Date: Wed, 4 Nov 2026 21:20:39 +0100 [thread overview]
Message-ID: <259d0c79-2a36-4a36-8e7c-fa24137a02bd@linux.dev> (raw)
In-Reply-To: <746bae53-ed1d-4881-9268-968c25270bda@intel.com>
On 11/4/26 15:31, Cezary Rojewski wrote:
> On 11/4/2026 2:33 PM, Vinod Koul wrote:
>> On 04-11-26, 12:52, Pierre-Louis Bossart wrote:
>>> On 11/4/26 10:14, Cezary Rojewski wrote:
>>>> On 11/3/2026 6:20 PM, Pierre-Louis Bossart wrote:
>>>>>
>>>>>> Also, the existing code fetches the PDIs based on pre-defined "dai_id".
>>>>>> That's not the case for the avs-driver. It simply asks: "is any PDI
>>>>>> free?" and assigns it for the substream if one is found.
>>>>>> No predefining. Again, this aligns with how HDAudio streaming is done.
>>>>> Yeah but at the end of the day there's a 1:1 mapping between cpu_dai and
>>>>> PDI, no?
>>>>>
>>>>> All PDIs are created equal, a dynamic mapping doesn't make things more
>>>>> efficient. It just makes things more complex to debug since you don't
>>>>> have a fixed mapping between dailinks/stream/cpu_dai/PDI.
>>>>>
>>>>> Put differently, couldn't the AVS driver work around that fixed mapping
>>>>> to avoid changes to legacy platforms that have shipped many moons ago?
>>>>
>>>> Kind disagree on the debugging part. Having SDW streaming follow
>>>> closely to what is done for HDAudio from the beginning (no hardcodes)
>>>> makes it easier for a developer to debug stuff. OTOH if one of these
>>>> two follows a completely different path, the developer has to have such
>>>> hardcodes in mind when debugging the PCM code or even when looking at
>>>> the topology.
>>>>
>>>> At the same time, I'm not going anywhere and I do intend to work with
>>>> Peter and Kai to update the common code. Simply put, such a refactor
>>>> would be routed through SOF GH first.
>>> The machine driver selects the first available cpu_dai when creating a
>>> dailink. It doesn't really add much value to add a second level of
>>> freedom to select PDIs, since in practice it'll select the first as
>>> well. PDIs have no moral equivalent in HDaudio, it's a Cadence-specific IP.
>>>
>>> Also there is already a degree of freedom in the allocation of
>>> stream_tag, which is used for DMA support. That one makes sense since
>>> DMAs may be used for non-SoundWire things (HDMI, trace, probe, etc).
>>>
>>> That's 2 degrees of freedom on 3 levels, do you really need full
>>> configurability?
>
> I'm not following this "level of freedom" notion. What's part of this
> set is a basic allocation - driver (a user of the soundwire-lib) comes
> and ask for a free resource (PDI). If there is one, it gets assigned.
> Very standard, how many expect resources are redistributed.
You're missing a level. The platform driver exposes a set of DAIs, and
then the machine driver will decide which dai it needs for a specific
dailink/stream. That's the part that really matters IMHO.
The choice of the PDI is done only internally in the Intel platform
driver, and it really doesn't matter how you map cpu_dais to PDIs. A
fixed mapping is just as good as a dynamic approach - same results,
maybe less elegant but the performance is identical.
>> I dont see any gain from this approach. I would reconsider and see if we
>> can reuse things
>>
>
> I'm not sure which way the last message goes.
>
> However, I find it easier to move from hardcodes to the basic allocation
> approach (seen here, in this very patchset) than the other way around.
> The change would consist of updating intel_hw_params() so the PDI
> allocation is no longer done there.
Change is risky, especially when this touches platforms all the way to
CNL across at least 3 generations of Intel hardware since 2018, for no
tangible benefit.
next prev parent reply other threads:[~2026-11-04 20:22 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-03 13:49 [PATCH v2 0/7] ASoC: Intel: avs: Soundwire support Cezary Rojewski
2026-11-03 13:49 ` [PATCH v2 1/7] soundwire: intel: Define stubs when library is disabled Cezary Rojewski
2026-11-03 13:49 ` [PATCH v2 2/7] soundwire: intel: Allow for dynamic assignment of PDIs Cezary Rojewski
2026-11-03 14:00 ` sashiko-bot
2026-11-03 13:49 ` [PATCH v2 3/7] soundwire: intel: Split PDIs and DAIs initialization Cezary Rojewski
2026-11-03 13:58 ` sashiko-bot
2026-11-03 13:49 ` [PATCH v2 4/7] ASoC: Intel: avs: Pass irq to dsp_interrupt callback Cezary Rojewski
2026-11-03 13:49 ` [PATCH v2 5/7] ASoC: Intel: avs: SoundWire support Cezary Rojewski
2026-11-03 14:13 ` sashiko-bot
2026-11-03 13:49 ` [PATCH v2 6/7] ASoC: Intel: avs: Expose common PCM functions Cezary Rojewski
2026-11-03 13:49 ` [PATCH v2 7/7] ASoC: Intel: avs: SoundWire PCM BE operations Cezary Rojewski
2026-11-03 14:07 ` sashiko-bot
2026-11-03 17:20 ` [PATCH v2 0/7] ASoC: Intel: avs: Soundwire support Pierre-Louis Bossart
2026-11-04 9:14 ` Cezary Rojewski
2026-11-04 11:52 ` Pierre-Louis Bossart
2026-11-04 13:33 ` Vinod Koul
2026-11-04 14:31 ` Cezary Rojewski
2026-11-04 20:20 ` Pierre-Louis Bossart [this message]
2026-11-04 21:02 ` Cezary Rojewski
2026-11-05 9:01 ` Pierre-Louis Bossart
2026-11-05 9:52 ` Cezary Rojewski
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=259d0c79-2a36-4a36-8e7c-fa24137a02bd@linux.dev \
--to=pierre-louis.bossart@linux.dev \
--cc=amade@asmblr.net \
--cc=broonie@kernel.org \
--cc=cezary.rojewski@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=perex@perex.cz \
--cc=tiwai@suse.com \
--cc=vkoul@kernel.org \
--cc=yung-chuan.liao@linux.intel.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.