diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2019-07-26 06:50:29 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2019-08-05 17:19:49 +0200 |
commit | 5693d50c830272cb3c4a04d2ce4db502debd1259 (patch) | |
tree | fff0edd0d87239320581598b10c2b8ef18cf8888 /sound/soc/soc-component.c | |
parent | ASoC: soc-component: add snd_soc_component_hw_free() (diff) | |
download | linux-5693d50c830272cb3c4a04d2ce4db502debd1259.tar.xz linux-5693d50c830272cb3c4a04d2ce4db502debd1259.zip |
ASoC: soc-component: add snd_soc_component_trigger()
Current ALSA SoC is directly using component->driver->ops->xxx,
thus, it is deep nested, and makes code difficult to read,
and is not good for encapsulation.
This patch adds new snd_soc_component_trigger() and use it.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/878ssl5rn5.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-component.c')
-rw-r--r-- | sound/soc/soc-component.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/soc-component.c b/sound/soc/soc-component.c index e2bc34efe547..cf0d20a877e6 100644 --- a/sound/soc/soc-component.c +++ b/sound/soc/soc-component.c @@ -336,3 +336,14 @@ int snd_soc_component_hw_free(struct snd_soc_component *component, return 0; } + +int snd_soc_component_trigger(struct snd_soc_component *component, + struct snd_pcm_substream *substream, + int cmd) +{ + if (component->driver->ops && + component->driver->ops->trigger) + return component->driver->ops->trigger(substream, cmd); + + return 0; +} |