umber-kernel/sound/soc/sof
Peter Ujfalusi a0eb5f8221 ASoC: SOF: ipc4-control: Keep the payload size up to date
[ Upstream commit ebcfdbe4add923dfb690e6fb9d158da87ae0b6bf ]

When the bytes data is read from the firmware, the size of the payload
can be different than what it was previously.
For example when the topology did not contained payload data at all for the
control, the data size was 0.
For get operation allow maximum size of payload to be read and then update
the sizes according to the completed message.

Similarly, keep the size in sync when updating the data in firmware.

With the change we will be able to read data from firmware for bytes
controls which did not had initial payload defined in topology.

Fixes: a062c8899f ("ASoC: SOF: ipc4-control: Add support for bytes control get and put")
Cc: stable@vger.kernel.org
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://patch.msgid.link/20251217143945.2667-5-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2026-03-04 07:20:54 -05:00
..
amd ALSA: compress_offload: Add 64-bit safe timestamp infrastructure 2025-09-08 09:33:24 +02:00
imx Merge branch 'for-linus' into for-next 2025-09-28 08:34:58 +02:00
intel ASoC: SOF: Intel: hda: Fix NULL pointer dereference 2026-03-04 07:20:08 -05:00
mediatek ASoC: Use of_reserved_mem_region_to_resource() for "memory-region" 2025-07-04 13:09:47 +01:00
xtensa module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
Kconfig ASoC: sof: Standardize ASoC menu 2025-06-24 01:01:18 +01:00
Makefile
compress.c ALSA: compress_offload: Add 64-bit safe timestamp infrastructure 2025-09-08 09:33:24 +02:00
control.c ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls 2025-07-04 19:28:22 +01:00
core.c ASoC: SOF: set disable_function_topology if override_tplg_filename is set 2025-05-06 22:48:04 +09:00
debug.c ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls 2025-07-04 19:28:22 +01:00
fw-file-profile.c
iomem-utils.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
ipc.c
ipc3-control.c
ipc3-dtrace.c ASoC: SOF: ipc3-dtrace: fix potential integer overflow in allocation 2025-09-18 22:26:31 +01:00
ipc3-loader.c ASoC: SOF: ipc3-loader: 'Handle' PROBE_INFO ext_manifest type when parsing 2024-11-07 13:03:23 +00:00
ipc3-pcm.c ASoC: SOF: pcm: Add snd_sof_pcm specific wrappers for dev_dbg() and dev_err() 2025-02-06 11:25:43 +00:00
ipc3-priv.h
ipc3-topology.c ASoC: SOF: ipc3-topology: Fix multi-core and static pipelines tear down 2025-10-02 13:31:42 +01:00
ipc3.c ASoC: SOF: ipc3: Use str_enabled_disabled() helper function 2025-02-17 12:09:40 +00:00
ipc4-control.c ASoC: SOF: ipc4-control: Keep the payload size up to date 2026-03-04 07:20:54 -05:00
ipc4-fw-reg.h
ipc4-loader.c treewide: Remove redundant 2025-07-04 22:42:36 +01:00
ipc4-mtrace.c
ipc4-pcm.c ASoC: Fixes for v6.18 2025-10-08 13:52:14 +02:00
ipc4-priv.h ASoC: SOF: ipc4-pcm: Harmonize set pipeline state dbg 2025-06-20 11:33:05 +01:00
ipc4-telemetry.c
ipc4-telemetry.h
ipc4-topology.c ASoC: SOF: ipc4-topology: Correct the allocation size for bytes controls 2026-03-04 07:20:53 -05:00
ipc4-topology.h ASoC: SOF: ipc4/Intel: Fix the host buffer 2025-10-02 18:07:06 +01:00
ipc4.c ASoC: SOF: ipc4: Support for sending payload along with LARGE_CONFIG_GET 2026-03-04 07:19:49 -05:00
loader.c
nocodec.c ASoC: sof: remove dpcm_xxx flags 2024-10-23 13:01:56 +01:00
ops.c
ops.h iopoll/regmap/phy/snd: Fix comment referencing outdated timer documentation 2024-10-16 00:36:47 +02:00
pcm.c treewide: Remove redundant 2025-07-04 22:42:36 +01:00
pm.c
sof-acpi-dev.c ASoC: SOF: acpi: Convert to EXPORT_NS_DEV_PM_OPS() 2025-03-17 10:14:55 +00:00
sof-acpi-dev.h
sof-audio.c ASoC: SOF: Relocate and rework functionality for PCM stream freeing 2025-02-06 11:25:41 +00:00
sof-audio.h ASoC: SOF: sof-audio: add dev_dbg_ratelimited wrapper 2025-10-03 12:39:47 +01:00
sof-client-ipc-flood-test.c ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls 2025-07-04 19:28:22 +01:00
sof-client-ipc-kernel-injector.c ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls 2025-07-04 19:28:22 +01:00
sof-client-ipc-msg-injector.c ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls 2025-07-04 19:28:22 +01:00
sof-client-probes-ipc3.c ASoC: SOF: sof-client-probes: Add available points_info(), IPC4 only 2025-08-29 13:34:19 +02:00
sof-client-probes-ipc4.c ASoC: SOF: sof-client-probes: Add available points_info(), IPC4 only 2025-08-29 13:34:19 +02:00
sof-client-probes.c ASoC: Updates for v6.18 2025-09-20 08:38:17 +02:00
sof-client-probes.h ASoC: Updates for v6.18 2025-09-20 08:38:17 +02:00
sof-client.c ASoC: SOF: sof-client-probes-ipc4: Query available 2025-08-29 23:19:49 +01:00
sof-client.h ASoC: SOF: sof-client-probes-ipc4: Query available 2025-08-29 23:19:49 +01:00
sof-of-dev.c ASoC: SOF: of: Convert to EXPORT_DEV_PM_OPS() 2025-03-17 10:14:57 +00:00
sof-of-dev.h
sof-pci-dev.c ASoC: sof: Use pure devres PCI 2025-05-05 19:32:11 +09:00
sof-pci-dev.h
sof-priv.h ASoC: SOF: sof-client: Convert sof_client_dev_to_sof_dev into function 2025-08-29 13:34:25 +02:00
sof-utils.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sof-utils.h
stream-ipc.c ASoC: SOF: stream-ipc: Check for cstream nullity in sof_ipc_msg_data() 2025-02-05 14:06:26 +00:00
topology.c ASoC: SOF: topology: Parse the dapm_widget_tokens in case of DSPless mode 2025-06-20 00:21:15 +01:00
trace.c