mbox series

[v2,00/15] ASoC: SOF: add INTEL_IPC4 plumbing

Message ID 20220414184817.362215-1-pierre-louis.bossart@linux.intel.com
Headers show
Series ASoC: SOF: add INTEL_IPC4 plumbing | expand

Message

Pierre-Louis Bossart April 14, 2022, 6:48 p.m. UTC
The INTEL_IPC4 protocol and firmware architecture will rely on
different sets of firmware binary and topology files. Some platforms
will only support INTEL_IPC4, some will support both INTEL_IPC4 and
SOF_IPC for development, and some will stay with the existing SOF_IPC.

This patchset adds new IPC definitions, and search paths for firmware
and topology files, along with means to override the default IPC type
and search paths for development. The firmware binary names are
aligned with those used by the Intel AVS driver to avoid duplicate
firmware installs, but the topology will have to differ due to driver
architecture differences.

Changes since v1:
Removed SKL/KBL code loader and initial hardware support. This will be
re-submitted as a follow-up patchset. The rest of the code is 100%
identical to v1.

Pierre-Louis Bossart (11):
  ASoC: SOF: add definitions for different IPC types
  ASoC: SOF: add path indirection to each IPC type
  ASoC: SOF: add default IPC capability and file paths
  ASoC: SOF: add IPC-dependent file names
  ASoC: SOF: sof-pci-dev: add parameter to override firmware filename
  ASoC: SOF: sof-pci-dev: add parameter to override topology filename
  ASoC: SOF: sof-audio: preserve topology filename override in nocodec
    mode
  ASoC: SOF: remove const qualifier for 'struct snd_sof_dsp_ops'
  ASoC: SOF: Intel: hda: use common ops across platforms
  ASoC: SOF: Intel: hda: use BIT() macros for consistency
  ASoC: SOF: Intel: add IP identifier

Ranjani Sridharan (4):
  ASoC: SOF: Intel: move HDA_CL_STREAM_FORMAT definition to header
  ASoC: SOF: Intel: hda: define check_ipc_irq op
  ASoC: SOF: Intel: hda: Define rom_status_reg in sof_intel_dsp_desc
  ASoC: SOF: Intel: hda: expose some codeloader functions

 include/sound/sof.h                    |  23 ++++-
 sound/soc/sof/amd/acp.h                |   2 +-
 sound/soc/sof/amd/pci-rn.c             |  14 ++-
 sound/soc/sof/amd/renoir.c             |   2 +-
 sound/soc/sof/core.c                   |   6 ++
 sound/soc/sof/debug.c                  |   2 +-
 sound/soc/sof/imx/imx8.c               |  32 +++++--
 sound/soc/sof/imx/imx8m.c              |  16 +++-
 sound/soc/sof/intel/Makefile           |   2 +-
 sound/soc/sof/intel/apl.c              | 107 +++++-----------------
 sound/soc/sof/intel/bdw.c              |  17 +++-
 sound/soc/sof/intel/byt.c              |  48 +++++++---
 sound/soc/sof/intel/cnl.c              | 112 ++++++-----------------
 sound/soc/sof/intel/hda-common-ops.c   | 107 ++++++++++++++++++++++
 sound/soc/sof/intel/hda-loader.c       |  43 ++++-----
 sound/soc/sof/intel/hda.c              |  23 ++++-
 sound/soc/sof/intel/hda.h              |  30 +++++--
 sound/soc/sof/intel/icl.c              | 111 +++++------------------
 sound/soc/sof/intel/pci-apl.c          |  36 ++++++--
 sound/soc/sof/intel/pci-cnl.c          |  54 +++++++++--
 sound/soc/sof/intel/pci-icl.c          |  36 ++++++--
 sound/soc/sof/intel/pci-tgl.c          |  91 +++++++++++++++----
 sound/soc/sof/intel/pci-tng.c          |  17 +++-
 sound/soc/sof/intel/shim.h             |  16 +++-
 sound/soc/sof/intel/tgl.c              | 120 +++++++------------------
 sound/soc/sof/mediatek/mt8195/mt8195.c |  16 +++-
 sound/soc/sof/ops.h                    |   8 ++
 sound/soc/sof/pcm.c                    |   2 +-
 sound/soc/sof/sof-acpi-dev.c           |   6 +-
 sound/soc/sof/sof-audio.c              |   3 +-
 sound/soc/sof/sof-of-dev.c             |   6 +-
 sound/soc/sof/sof-pci-dev.c            |  47 ++++++++--
 32 files changed, 671 insertions(+), 484 deletions(-)
 create mode 100644 sound/soc/sof/intel/hda-common-ops.c

Comments

Mark Brown April 20, 2022, 9:40 p.m. UTC | #1
On Thu, 14 Apr 2022 13:48:02 -0500, Pierre-Louis Bossart wrote:
> The INTEL_IPC4 protocol and firmware architecture will rely on
> different sets of firmware binary and topology files. Some platforms
> will only support INTEL_IPC4, some will support both INTEL_IPC4 and
> SOF_IPC for development, and some will stay with the existing SOF_IPC.
> 
> This patchset adds new IPC definitions, and search paths for firmware
> and topology files, along with means to override the default IPC type
> and search paths for development. The firmware binary names are
> aligned with those used by the Intel AVS driver to avoid duplicate
> firmware installs, but the topology will have to differ due to driver
> architecture differences.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[01/15] ASoC: SOF: add definitions for different IPC types
        commit: 15527fee767f592d894d954d78cf8af3685cda6d
[02/15] ASoC: SOF: add path indirection to each IPC type
        commit: a375791512254c154fd0d3e4091c78f4b92a5c66
[03/15] ASoC: SOF: add default IPC capability and file paths
        commit: 0cf8ff05e5d2b94b3ccf8a1fbfc633ecb0be56b0
[04/15] ASoC: SOF: add IPC-dependent file names
        commit: a97abb3cae31b4e2420da96b95e54756333f2cc3
[05/15] ASoC: SOF: sof-pci-dev: add parameter to override firmware filename
        commit: 58c520e2dad7c0abc52ce6b41b0793236398dc94
[06/15] ASoC: SOF: sof-pci-dev: add parameter to override topology filename
        commit: 772627acfeb0e670ede534b7d5502dae9668d3ee
[07/15] ASoC: SOF: sof-audio: preserve topology filename override in nocodec mode
        commit: 53fe24c2c76383712bedee6a9e4ebe2ec595345b
[08/15] ASoC: SOF: remove const qualifier for 'struct snd_sof_dsp_ops'
        commit: 856601e5a7ebe69b1c07adef7be80f9a03884329
[09/15] ASoC: SOF: Intel: hda: use common ops across platforms
        commit: 37e809d5f8a7bfbf0abbd4666d0b8ad499f12b7f
[10/15] ASoC: SOF: Intel: move HDA_CL_STREAM_FORMAT definition to header
        commit: 406fed8092d96e3cd565d6041dc381d630039fe0
[11/15] ASoC: SOF: Intel: hda: use BIT() macros for consistency
        commit: 9d201b69d04b89369240c1a7e279fda85cc94720
[12/15] ASoC: SOF: Intel: hda: define check_ipc_irq op
        commit: 3dee239e02747a5d1447249ffb4a3c4425b9e302
[13/15] ASoC: SOF: Intel: hda: Define rom_status_reg in sof_intel_dsp_desc
        commit: 71778f7940f0b496aa1ca1134f3b70b425a59bab
[14/15] ASoC: SOF: Intel: hda: expose some codeloader functions
        commit: b4e4c0b963c85072326222d7ea89078060aa824c
[15/15] ASoC: SOF: Intel: add IP identifier
        commit: 03cf7262076f08601108cc896416fc1d66671994

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark