Skip to content

Commit

Permalink
ASoC: soc-dai: add snd_soc_dai_compr_get_params()
Browse files Browse the repository at this point in the history
dai related function should be implemented at soc-dai.c.
This patch adds snd_soc_dai_compr_get_params().

Signed-off-by: Kuninori Morimoto <[email protected]>
Reviewed-By: Ranjani Sridharan <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Mark Brown <[email protected]>
  • Loading branch information
morimoto authored and broonie committed Apr 29, 2020
1 parent 8dfedaf commit adbef54
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 5 deletions.
3 changes: 3 additions & 0 deletions include/sound/soc-dai.h
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,9 @@ int snd_soc_dai_compr_trigger(struct snd_soc_dai *dai,
int snd_soc_dai_compr_set_params(struct snd_soc_dai *dai,
struct snd_compr_stream *cstream,
struct snd_compr_params *params);
int snd_soc_dai_compr_get_params(struct snd_soc_dai *dai,
struct snd_compr_stream *cstream,
struct snd_codec *params);

struct snd_soc_dai_ops {
/*
Expand Down
8 changes: 3 additions & 5 deletions sound/soc/soc-compress.c
Original file line number Diff line number Diff line change
Expand Up @@ -544,11 +544,9 @@ static int soc_compr_get_params(struct snd_compr_stream *cstream,

mutex_lock_nested(&rtd->card->pcm_mutex, rtd->card->pcm_subclass);

if (cpu_dai->driver->cops && cpu_dai->driver->cops->get_params) {
ret = cpu_dai->driver->cops->get_params(cstream, params, cpu_dai);
if (ret < 0)
goto err;
}
ret = snd_soc_dai_compr_get_params(cpu_dai, cstream, params);
if (ret < 0)
goto err;

for_each_rtd_components(rtd, i, component) {
if (!component->driver->compress_ops ||
Expand Down
14 changes: 14 additions & 0 deletions sound/soc/soc-dai.c
Original file line number Diff line number Diff line change
Expand Up @@ -553,3 +553,17 @@ int snd_soc_dai_compr_set_params(struct snd_soc_dai *dai,
return soc_dai_ret(dai, ret);
}
EXPORT_SYMBOL_GPL(snd_soc_dai_compr_set_params);

int snd_soc_dai_compr_get_params(struct snd_soc_dai *dai,
struct snd_compr_stream *cstream,
struct snd_codec *params)
{
int ret = 0;

if (dai->driver->cops &&
dai->driver->cops->get_params)
ret = dai->driver->cops->get_params(cstream, params, dai);

return soc_dai_ret(dai, ret);
}
EXPORT_SYMBOL_GPL(snd_soc_dai_compr_get_params);

0 comments on commit adbef54

Please sign in to comment.