linux/sound/soc
Cássio Gabriel 2c4fdd055f
ASoC: SOF: compress: return the configured codec from get_params
The SOF compressed offload path accepts codec parameters in
sof_compr_set_params() and forwards them to firmware as
extended data in the SOF IPC stream params message.

However, sof_compr_get_params() still returns success without
filling the snd_codec structure. Since the compress core allocates
that structure zeroed and copies it back to userspace on success,
SNDRV_COMPRESS_GET_PARAMS returns an all-zero codec description
even after the stream has been configured successfully.

The stale TODO in this callback conflates get_params() with capability
discovery. Supported codec enumeration belongs in get_caps() and
get_codec_caps(). get_params() should report the current codec settings.

Cache the codec accepted by sof_compr_set_params() in the per-stream SOF
compress state and return it from sof_compr_get_params().

Fixes: 6324cf901e ("ASoC: SOF: compr: Add compress ops implementation")
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
Link: https://patch.msgid.link/20260325-sof-compr-get-params-v1-1-0758815f13c7@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2026-04-06 13:11:57 +01:00
..
adi
amd ASoC: amd: acp-sdw-legacy: remove unnecessary condition check 2026-04-03 13:36:13 +01:00
apple ASoC: apple: name back to pcm_new()/pcm_free() 2026-03-16 13:37:43 +00:00
atmel ASoC: atmel: name back to pcm_new()/pcm_free() 2026-03-16 13:37:44 +00:00
au1x ASoC: au1x: name back to pcm_new()/pcm_free() 2026-03-16 13:37:45 +00:00
bcm ASoC: bcm: name back to pcm_new()/pcm_free() 2026-03-16 13:37:46 +00:00
cirrus
codecs ASoC: rt5640: Handle 0Hz sysclk during stream shutdown 2026-04-06 13:04:03 +01:00
dwc ASoC: dwc: name back to pcm_new()/pcm_free() 2026-03-16 13:37:49 +00:00
fsl ASoC: imx-rpmsg: Add DSD format support with dynamic DAI format switching 2026-04-03 15:13:22 +01:00
generic ASoC: generic: keep fallback dai_name stable across rebind 2026-03-30 20:06:54 +01:00
google ASoC: google: name back to pcm_new()/pcm_free() 2026-03-16 13:37:52 +00:00
hisilicon
img
intel ASoC: Intel: Fix MCLK leaks and clean up error 2026-04-03 15:15:04 +01:00
jz4740
kirkwood ASoC: kirkwood: name back to pcm_new()/pcm_free() 2026-03-16 13:37:54 +00:00
loongson ASoC: loongson: name back to pcm_new()/pcm_free() 2026-03-16 13:37:55 +00:00
mediatek ASoC: mediatek: name back to pcm_new()/pcm_free() 2026-03-16 13:37:56 +00:00
meson Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
mxs ASoC: mxs-sgtl5000: disable MCLK on error paths of mxs_sgtl5000_probe() 2026-04-01 14:01:25 +01:00
pxa ASoC: pxa: name back to pcm_new()/pcm_free() 2026-03-16 13:37:56 +00:00
qcom ASoC: qcom: audioreach: explicitly enable speaker protection modules 2026-04-06 13:07:06 +01:00
renesas ASoC: rsnd: Fix potential out-of-bounds access of component_dais[] 2026-04-03 13:37:20 +01:00
rockchip ASoC: rockchip: rockchip_sai: Set slot width for non-TDM mode 2026-03-25 16:58:24 +00:00
samsung ASoC: samsung: spdif: Convert to devm_ioremap_resource() 2026-03-30 19:37:21 +01:00
sdca ASoC: SDCA: Export Q7.8 volume control helpers 2026-04-03 15:12:38 +01:00
sdw_utils ASoC: intel: sof_sdw: Prepare for configuration without a jack 2026-04-03 13:09:25 +01:00
sof ASoC: SOF: compress: return the configured codec from get_params 2026-04-06 13:11:57 +01:00
sophgo ASoC: sophgo: fix 64-bit division build failure 2026-02-02 12:09:35 +00:00
spacemit
spear ASoC: Add SPDX ids to many soc files 2026-02-22 23:52:20 +00:00
sprd ASoC: sprd: name back to pcm_new()/pcm_free() 2026-03-16 13:38:02 +00:00
starfive ASoC: Add SPDX ids to many soc files 2026-02-22 23:52:20 +00:00
sti ASoC: sti: use managed regmap_field allocations 2026-03-01 23:48:23 +00:00
stm ASoC: stm: name back to pcm_new()/pcm_free() 2026-03-16 13:38:03 +00:00
sunxi ASoC: sun4i-spdif: Make reset control non-optional and check for all errors 2026-03-24 00:11:20 +00:00
tegra ASoC: tegra: Add error logging for probe and callback failures 2026-04-01 14:53:29 +01:00
ti ASoC: ti: davinci-mcasp: McASP code cleanup and clk 2026-03-10 12:09:17 +00:00
uniphier ASoC: uniphier: name back to pcm_new()/pcm_free() 2026-03-16 13:38:05 +00:00
ux500
xilinx ASoC: xilinx: name back to pcm_new()/pcm_free() 2026-03-16 13:38:06 +00:00
xtensa ASoC: xtensa: name back to pcm_new()/pcm_free() 2026-03-16 13:38:07 +00:00
Kconfig ASoC: sophgo: add CV1800B I2S/TDM controller driver 2026-01-27 12:52:03 +00:00
Makefile ASoC: sophgo: add CV1800B I2S/TDM controller driver 2026-01-27 12:52:03 +00:00
soc-ac97.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
soc-acpi.c
soc-card-test.c
soc-card.c
soc-component.c ASoC: soc-component: add snd_soc_component_regmap_val_bytes() 2026-03-20 12:55:59 +00:00
soc-compress.c ASoC: soc-compress: use function to clear symmetric params 2026-02-22 23:52:21 +00:00
soc-core.c ASoC: soc-core: remove duplicate snd_soc_flush_all_delayed_work() 2026-03-31 14:49:23 +01:00
soc-dai.c ASoC: soc-dai: add common operation to set TDM idle mode 2026-03-16 01:13:03 +00:00
soc-dapm.c ASoC: dapm: Add a named controls variant of a mux widget 2026-03-16 18:45:28 +00:00
soc-devres.c
soc-generic-dmaengine-pcm.c ASoC: soc-generic-dmaengine-pcm: name back to pcm_new()/pcm_free() 2026-03-16 13:38:00 +00:00
soc-jack.c
soc-link.c
soc-ops-test.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
soc-ops.c ASoC: soc-component: add snd_soc_component_regmap_val_bytes() 2026-03-20 12:55:59 +00:00
soc-pcm.c ASoC: soc-compress: use function to clear symmetric params 2026-02-22 23:52:21 +00:00
soc-topology-test.c
soc-topology.c ASoC: soc-topology: fix __le32 conversion in printed values 2026-03-23 19:32:16 +00:00
soc-usb.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
soc-utils-test.c
soc-utils.c