diff options
author | Cezary Rojewski <cezary.rojewski@intel.com> | 2020-03-09 17:21:24 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-03-10 16:50:59 +0300 |
commit | a3b7343e3f8c4c74516df41827b6d81905e346a1 (patch) | |
tree | 847743e4f4ff64e5329d516603913799727e6260 /sound/soc/sof/probe.c | |
parent | 62f9ed5f8768d2425461737d77b83f888b525c06 (diff) | |
download | linux-a3b7343e3f8c4c74516df41827b6d81905e346a1.tar.xz |
ASoC: SOF: Fix probe point getter
Firmware API changes which introduced 'num_elems' param in several probe
structs such as sof_ipc_probe_dma_add_params also impacted getter for
both, DMA and probe points. All struct handlers except for
sof_ipc_probe_info_params have been updated. Align said handler too to
calculate payload size correctly.
Fixes: f3b433e4699f ("ASoC: SOF: Implement Probe IPC API")
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20200309142124.29262-1-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sof/probe.c')
-rw-r--r-- | sound/soc/sof/probe.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sound/soc/sof/probe.c b/sound/soc/sof/probe.c index 2b2f3dcfc7e9..c38169fe00c5 100644 --- a/sound/soc/sof/probe.c +++ b/sound/soc/sof/probe.c @@ -95,13 +95,17 @@ static int sof_ipc_probe_info(struct snd_sof_dev *sdev, unsigned int cmd, if (!reply->num_elems) goto exit; - bytes = reply->num_elems * sizeof(reply->dma[0]); + if (cmd == SOF_IPC_PROBE_DMA_INFO) + bytes = sizeof(reply->dma[0]); + else + bytes = sizeof(reply->desc[0]); + bytes *= reply->num_elems; *params = kmemdup(&reply->dma[0], bytes, GFP_KERNEL); if (!*params) { ret = -ENOMEM; goto exit; } - *num_params = msg.num_elems; + *num_params = reply->num_elems; exit: kfree(reply); |