linux/sound
Jaska Uimonen a1687c68c3
ASoC: SOF: topology: handle multiple sets of tuple arrays
Widget's parameters are set in topology and they usually consist of
several different types of tuple arrays like strings, words and bytes.
Here this kind of combination is called a "set".

Lately we've seen more complex widget definitions with multiple
identical sets of tuple arrays. One example is the dmic pdm
configuration, which is currently handled as a special case in token
parsing. This is not scalable for other components with multiple sets.

So add a new function sof_parse_token_sets, which can be used to parse
multiple sets. This function defines the number of sets and an offset to
copy the tokens to correct positions in the destination ipc struct. Old
sof_parse_token function will be a special case of calling
sof_parse_token_sets to parse 1 set with offset 0.

Finally modify the dmic dai link loading to use the new
sof_parse_array_sets to load multiple pdm configs.

Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20200415202816.934-25-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2020-04-16 00:23:19 +01:00
..
ac97
aoa ALSA: aoa: More constifications 2020-01-05 16:14:27 +01:00
arm ASoC: arm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer 2020-03-27 14:44:56 +00:00
atmel
core sound fixes for 5.7-rc1 2020-04-10 12:27:06 -07:00
drivers ALSA: dummy: Use standard macros for fixing PCM format cast 2020-02-10 08:27:31 +01:00
firewire ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_locked() 2020-03-11 07:55:38 +01:00
hda ALSA: hda: Use scnprintf() for string truncation 2020-03-13 15:59:04 +01:00
i2c
isa ALSA: emu8000: Fix the cast to __user pointer 2020-02-10 08:26:38 +01:00
mips ALSA: sgio2audio: Remove usage of dropped hw_params/hw_free functions 2020-03-06 12:06:41 +01:00
oss .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
parisc sound updates for 5.6-rc1 2020-01-28 16:26:57 -08:00
pci ALSA: hda: Add ElkhartLake HDMI codec vid 2020-04-14 14:34:03 +01:00
pcmcia ALSA: pdaudiocf: More constification 2020-01-05 16:15:13 +01:00
ppc ALSA: ppc: keywest: convert to use i2c_new_client_device() 2020-03-27 09:33:01 +01:00
sh ALSA: sh: Fix compile warning wrt const 2020-01-05 16:15:14 +01:00
soc ASoC: SOF: topology: handle multiple sets of tuple arrays 2020-04-16 00:23:19 +01:00
sparc ALSA: sparc: More constifications 2020-01-05 16:14:56 +01:00
spi ALSA: spi: More constification 2020-01-05 16:15:13 +01:00
synth ALSA: emux: More constifications 2020-01-05 16:14:46 +01:00
usb ALSA: usb-audio: Add mixer workaround for TRX40 and co 2020-04-08 16:05:55 +02:00
x86 sound updates for 5.6-rc1 2020-01-28 16:26:57 -08:00
xen
ac97_bus.c
Kconfig
last.c
Makefile
sound_core.c