OpenCloudOS-Kernel/sound/soc/sof/intel
Mark Brown b700672e22
ASoC: SOF: Intel/IPC4: Support for external firmware libraries
Merge series from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:

In IPC4 all DSP loadable executable is a 'library' containing modules. The main
or basefw is also a library which contains multiple modules.
IPC4 allows to use loadable libraries to extend the functionality of the booted
basefw.

This series adds support for loading external libraries in case they are needed
by the loaded topology file.

The libraries must be placed to a specific firmware directory (fw_lib_prefix),
which is:
intel/avs-lib|sof-ipc4-lib/ followed by the platform name and in case of
community key use a 'community' directory.

For example for upx-i11 (community key): intel/avs-lib/tgl/community is the
default path.

The name of the library should be the UUID of the module it contains since the
library loading is going to look for the file as <module_UUID>.bin
In case there is a need to bundle multiple modules into single library, symlinks
can be used to point to the file:

module_boundle.bin
<UUID1>.bin -> module_boundle.bin
<UUID2>.bin -> module_boundle.bin
<UUID3>.bin -> module_boundle.bin

But note that in this case all modules will be loaded to the DSP since only the
whole library can be loaded, not individual modules.
2022-10-21 20:04:19 +01:00
..
Kconfig ASoC: SOF: Intel: add initial SKL/KBL hardware support 2022-09-20 19:07:30 +01:00
Makefile ASoC: SOF: Intel: add initial SKL/KBL hardware support 2022-09-20 19:07:30 +01:00
apl.c ASoC: SOF: Intel: Add ipc4 library loading implementation 2022-10-21 13:05:07 +01:00
atom.c ASoC: SOF: Intel: atom: don't keep a temporary string in fixup_tplg_name 2022-07-15 20:11:35 +01:00
atom.h ASoC: SOF: avoid casting "const" attribute away 2021-12-17 11:06:16 +00:00
bdw.c ASoC: SOF: Intel: bdw: remove duplicating driver data retrieval 2022-07-05 19:54:01 +01:00
byt.c ASoC: SOF: Intel: byt: remove duplicating driver data retrieval 2022-07-05 19:54:03 +01:00
cnl.c ASoC: SOF: Intel/IPC4: Support for external firmware libraries 2022-10-21 20:04:19 +01:00
ext_manifest.h ASoC: SOF: ext_manifest: parse cavs extra config data elem 2020-11-27 17:23:05 +00:00
hda-bus.c ASoC: SOF: Intel: hda: fix hotplug when only codec is suspended 2021-11-05 12:58:11 +00:00
hda-codec.c ASoC: SOF: Fix compilation when HDA_AUDIO_CODEC config is disabled 2022-08-19 14:55:40 +02:00
hda-common-ops.c ASoC: SOF: Intel: Do not set fw_ready callback 2022-04-25 13:58:48 +01:00
hda-ctrl.c ASoC: SOF: Intel: hda-ctrl: apply symmetry for DPIB 2021-12-13 19:32:47 +00:00
hda-dai.c ALSA/ASoC: hda: ext: add 'bus' prefix for multi-link stream setting 2022-10-20 14:31:41 +02:00
hda-dsp.c ASoC: SOF: Intel: hda-dsp: simplify S3 resume flows 2022-10-18 19:16:33 +01:00
hda-ipc.c ASoC: SOF: Intel: ipc4: Ack a received reply or notification separately 2022-10-18 19:16:45 +01:00
hda-ipc.h ASoC: SOF: Intel: cnl: Add separate ops for ipc_dump for IPC4 2022-09-23 14:53:17 +01:00
hda-loader-skl.c ASoC: SOF: Intel: hda-loader-skl: Use the basefw firmware container directly 2022-10-21 13:04:57 +01:00
hda-loader.c ASoC: SOF: Intel: Add ipc4 library loading implementation 2022-10-21 13:05:07 +01:00
hda-pcm.c ALSA/ASoC: hda: move SPIB/DRMS functionality from ext layer 2022-10-20 14:31:42 +02:00
hda-probes.c ASoC: SOF: probes: rename assign/free callbacks as startup/shutdown 2022-07-15 20:11:38 +01:00
hda-stream.c ALSA/ASoC: hda: move SPIB/DRMS functionality from ext layer 2022-10-20 14:31:42 +02:00
hda-trace.c ASoC: SOF: Modify the host trace_init parameter list to include dmab 2022-05-19 16:44:17 +01:00
hda.c ASoC: Merge HDA/ext cleanup 2022-10-21 12:22:32 +01:00
hda.h ASoC: SOF: Intel/IPC4: Support for external firmware libraries 2022-10-21 20:04:19 +01:00
icl.c ASoC: SOF: Intel: Add ipc4 library loading implementation 2022-10-21 13:05:07 +01:00
mtl.c ASoC: SOF: Intel/IPC4: Support for external firmware libraries 2022-10-21 20:04:19 +01:00
mtl.h ASoC: SOF: Intel: Add support for MeteorLake (MTL) 2022-06-15 09:56:57 +01:00
pci-apl.c ASoC: SOF: Intel: Set the default firmware library path for IPC4 2022-10-21 13:05:04 +01:00
pci-cnl.c ASoC: SOF: Intel: Set the default firmware library path for IPC4 2022-10-21 13:05:04 +01:00
pci-icl.c ASoC: SOF: Intel: Set the default firmware library path for IPC4 2022-10-21 13:05:04 +01:00
pci-mtl.c ASoC: SOF: Intel: Set the default firmware library path for IPC4 2022-10-21 13:05:04 +01:00
pci-skl.c ASoC: SOF: Intel: add ops for SKL/KBL 2022-09-20 19:07:31 +01:00
pci-tgl.c ASoC: SOF: Intel: Set the default firmware library path for IPC4 2022-10-21 13:05:04 +01:00
pci-tng.c ASoC: SOF: Intel: bdw/byt/pci-tng: Do not set the load_module ops 2022-04-29 13:06:14 +01:00
shim.h ASoC: SOF: Intel: Add a new op for disabling interrupts 2022-09-23 13:56:16 +01:00
skl.c ASoC: SOF: ipc4/Intel: Improve and enable IPC error dump 2022-09-23 20:46:25 +01:00
tgl.c ASoC: SOF: Intel: Add ipc4 library loading implementation 2022-10-21 13:05:07 +01:00