blob: 3ed21f55898fbd25037739244a8aa3f29fb9654b [file] [log] [blame]
From 2775700aed948d9bf1b01b2875091c4730144200 Mon Sep 17 00:00:00 2001
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Sun, 22 Jun 2014 17:57:04 -0700
Subject: ASoC: rsnd: enable DVC when capture
Current DVC can be enabled only when playback,
but, this came from misunderstanding.
It is not correct.
DVC <-> DMA relationship is...
Playback: MEM -> DMAC -> SRC -> DVC -> DMACp -> SSI
Capture: SSI -> DMACp -> SRC -> DVC -> DMAC -> MEM
DVC can be used for both Playback/Capture
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 65f459923b7926f6a7f156970d83360bd80cb169)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
sound/soc/sh/rcar/dvc.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/sound/soc/sh/rcar/dvc.c b/sound/soc/sh/rcar/dvc.c
index ed0007006899..deef310c75dc 100644
--- a/sound/soc/sh/rcar/dvc.c
+++ b/sound/soc/sh/rcar/dvc.c
@@ -191,24 +191,20 @@ static int rsnd_dvc_pcm_new(struct rsnd_mod *mod,
struct snd_soc_pcm_runtime *rtd)
{
struct rsnd_dai_stream *io = rsnd_mod_to_io(mod);
- struct rsnd_priv *priv = rsnd_mod_to_priv(mod);
- struct device *dev = rsnd_priv_to_dev(priv);
struct snd_card *card = rtd->card->snd_card;
struct snd_kcontrol *kctrl;
static struct snd_kcontrol_new knew = {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
- .name = "Playback Volume",
.info = rsnd_dvc_volume_info,
.get = rsnd_dvc_volume_get,
.put = rsnd_dvc_volume_put,
};
int ret;
- if (!rsnd_dai_is_play(rdai, io)) {
- dev_err(dev, "DVC%d is connected to Capture DAI\n",
- rsnd_mod_id(mod));
- return -EINVAL;
- }
+ if (rsnd_dai_is_play(rdai, io))
+ knew.name = "Playback Volume";
+ else
+ knew.name = "Capture Volume";
kctrl = snd_ctl_new1(&knew, mod);
if (!kctrl)
--
2.1.2