mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Vinod Koul <vkoul@kernel.org>
To: Cezary Rojewski <cezary.rojewski@intel.com>
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, pierre-louis.bossart@linux.dev
Subject: Re: [PATCH 0/7] ASoC: Intel: avs: Soundwire support
Date: Tue, 3 Nov 2026 11:07:59 +0530	[thread overview]
Message-ID: <aulzN9MCl5CJB1Al@parshuram> (raw)
In-Reply-To: <20261102181042.1922005-1-cezary.rojewski@intel.com>

On 02-11-26, 19:10, Cezary Rojewski wrote:
> The RaptorLake-P and RaptorLake-M based platform used in Automotive area
> do utilize SoundWire for streaming audio.  This patchset brings such
> support to the public domain.
> 
> If possible, I'd like the changes to go through Mark's tree.
> 
> As the patchset updates drivers/soundwire, I've decided to strip it off
> any machine-boards and have here just the changes done to the main
> soundwire driver and their user/usage.  Machine boards for RPL-P/M will
> follow in a separate set and do not touch drivers/soundwire stuff.
> 
> 
> The reasoning behind modyfing the soundwire code:
> 
> Typically dai->startup() is responsible for checking if all the required
> resources are available whereas dai->hw_params() is responsible for
> configuring such resources.  Existing code does the PDI assignment and
> its configuration within one function - intel_hw_params().  The logical
> split is not possible.  The change provides functions that represent
> such logical blocks: assign, release and config.  Such division exists
> already for the HDAudio interface, see sound/hda/core/stream.c

I understand that you want to split things up which helps your avs
driver but I fail to understand why should we add one more layer in
soundwire intel driver to handle one more driver from Intel.

Why not modify soundwire intel driver to do both startup and hw_params.
This way the driver does not care if it is calling sof driver, avs
driver or somenew team driver! I would like to avoid a new driver
specific handling please..

> 
> For the user i.e.: avs-driver (sound/soc/intel/avs) it also makes the
> code very cohesive - aligns with that's done on the HDAudio side as all
> the HDAudio streams are assignment during dai->startup() and configured
> with dai->hw_params().  
> 
> 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.

That makes sense, we can have pdis dynamically done, that is an
improvement..

> No predefining.  Again, this aligns with how HDAudio streaming is done.
> 
> avs-driver -only patches follow the three soundwire ones.  First, they
> extend the existing code so it can accommodate SDW interface.  With that
> done, laverage existing PCM code (sound/soc/intel/avs/pcm.c) and
> soundwire-intel to implement DAI operations.
> 
> Cezary Rojewski (7):
>   soundwire: intel: Define stubs when library is disabled
>   soundwire: intel: Allow for dynamic assignment of PDIs
>   soundwire: intel: Split PDIs and DAIs initialization
>   ASoC: Intel: avs: Pass irq to dsp_interrupt callback
>   ASoC: Intel: avs: SoundWire support
>   ASoC: Intel: avs: Expose common PCM functions
>   ASoC: Intel: avs: SoundWire PCM BE operations
> 
>  drivers/soundwire/cadence_master.c    |  64 ++++++
>  drivers/soundwire/cadence_master.h    |  24 +--
>  drivers/soundwire/intel.c             |  40 +++-
>  drivers/soundwire/intel.h             |   3 +-
>  drivers/soundwire/intel_auxdevice.c   |   4 +
>  include/linux/soundwire/sdw_cadence.h |  35 ++++
>  include/linux/soundwire/sdw_intel.h   |  41 ++++
>  sound/hda/core/Kconfig                |   2 +-
>  sound/hda/core/Makefile               |   3 +
>  sound/soc/intel/Kconfig               |   1 +
>  sound/soc/intel/avs/Makefile          |   4 +
>  sound/soc/intel/avs/apl.c             |   2 +-
>  sound/soc/intel/avs/avs.h             |  15 +-
>  sound/soc/intel/avs/cnl.c             |  25 ++-
>  sound/soc/intel/avs/core.c            |  24 ++-
>  sound/soc/intel/avs/loader.c          |   3 +
>  sound/soc/intel/avs/messages.h        |   2 +
>  sound/soc/intel/avs/mtl.c             |   2 +-
>  sound/soc/intel/avs/path.c            |   2 +
>  sound/soc/intel/avs/pcm.c             |  42 +---
>  sound/soc/intel/avs/pcm.h             |  51 +++++
>  sound/soc/intel/avs/pcm_sdw.c         | 276 ++++++++++++++++++++++++++
>  sound/soc/intel/avs/registers.h       |   4 +
>  sound/soc/intel/avs/skl.c             |   2 +-
>  sound/soc/intel/avs/soundwire.c       | 112 +++++++++++
>  sound/soc/intel/avs/soundwire.h       |  63 ++++++
>  26 files changed, 765 insertions(+), 81 deletions(-)
>  create mode 100644 include/linux/soundwire/sdw_cadence.h
>  create mode 100644 sound/soc/intel/avs/pcm_sdw.c
>  create mode 100644 sound/soc/intel/avs/soundwire.c
>  create mode 100644 sound/soc/intel/avs/soundwire.h
> 
> -- 
> 2.34.1

-- 
~Vinod

  parent reply	other threads:[~2026-11-03  5:38 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-02 18:10 Cezary Rojewski
2026-11-02 18:10 ` [PATCH 1/7] soundwire: intel: Define stubs when library is disabled Cezary Rojewski
2026-11-02 18:10 ` [PATCH 2/7] soundwire: intel: Allow for dynamic assignment of PDIs Cezary Rojewski
2026-11-03  9:04   ` kernel test robot
2026-11-02 18:10 ` [PATCH 3/7] soundwire: intel: Split PDIs and DAIs initialization Cezary Rojewski
2026-11-03  2:35   ` Liao, Bard
2026-11-03  8:59     ` Cezary Rojewski
2026-11-02 18:10 ` [PATCH 4/7] ASoC: Intel: avs: Pass irq to dsp_interrupt callback Cezary Rojewski
2026-11-02 18:10 ` [PATCH 5/7] ASoC: Intel: avs: SoundWire support Cezary Rojewski
2026-11-02 18:10 ` [PATCH 6/7] ASoC: Intel: avs: Expose common PCM functions Cezary Rojewski
2026-11-02 18:18   ` Amadeusz Sławiński
2026-11-02 18:20     ` Cezary Rojewski
2026-11-02 18:10 ` [PATCH 7/7] ASoC: Intel: avs: SoundWire PCM BE operations Cezary Rojewski
2026-11-03  5:37 ` Vinod Koul [this message]
2026-11-03  9:18   ` [PATCH 0/7] ASoC: Intel: avs: Soundwire support 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=aulzN9MCl5CJB1Al@parshuram \
    --to=vkoul@kernel.org \
    --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=pierre-louis.bossart@linux.dev \
    --cc=tiwai@suse.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®