diff mbox series

[46/46] ASoC: soc-utils: respawn dummy Platform

Message ID 87ftnutr9i.wl-kuninori.morimoto.gx@renesas.com (mailing list archive)
State Accepted
Commit aff50895269f567d1b30c688ce8d610542991b30
Headers show
Series ASoC: consider CPU-Platform possibility | expand

Commit Message

Kuninori Morimoto June 28, 2019, 1:50 a.m. UTC
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

commit 64ee5067cf64 ("ASoC: soc-utils: remove dummy Platform") removed
dummy Platform from ALSA SoC, but it is over-kill.
This patch respawn it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 sound/soc/soc-utils.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

Comments

Tzung-Bi Shih July 3, 2019, 6:39 a.m. UTC | #1
On Fri, Jun 28, 2019 at 10:18 AM Kuninori Morimoto
<kuninori.morimoto.gx@renesas.com> wrote:
> commit 64ee5067cf64 ("ASoC: soc-utils: remove dummy Platform") removed
> dummy Platform from ALSA SoC, but it is over-kill.
What did you mean by "over-kill"?
Kuninori Morimoto July 3, 2019, 6:56 a.m. UTC | #2
Hi Tzung-Bi

> > commit 64ee5067cf64 ("ASoC: soc-utils: remove dummy Platform") removed
> > dummy Platform from ALSA SoC, but it is over-kill.
> What did you mean by "over-kill"?

It means we need to keep it.

Thank you for your help !!
Best regards
---
Kuninori Morimoto
Tzung-Bi Shih July 3, 2019, 7:02 a.m. UTC | #3
On Wed, Jul 3, 2019 at 2:56 PM Kuninori Morimoto
<kuninori.morimoto.gx@renesas.com> wrote:
>
> > > commit 64ee5067cf64 ("ASoC: soc-utils: remove dummy Platform") removed
> > > dummy Platform from ALSA SoC, but it is over-kill.
> > What did you mean by "over-kill"?
>
> It means we need to keep it.
>
Ok, I see.  I overlooked it and just realized that it is a revert series.
diff mbox series

Patch

diff --git a/sound/soc/soc-utils.c b/sound/soc/soc-utils.c
index f67e715..e3b9dd6 100644
--- a/sound/soc/soc-utils.c
+++ b/sound/soc/soc-utils.c
@@ -262,6 +262,26 @@  static const struct snd_pcm_hardware dummy_dma_hardware = {
 	.periods_max		= 128,
 };
 
+static int dummy_dma_open(struct snd_pcm_substream *substream)
+{
+	struct snd_soc_pcm_runtime *rtd = substream->private_data;
+
+	/* BE's dont need dummy params */
+	if (!rtd->dai_link->no_pcm)
+		snd_soc_set_runtime_hwparams(substream, &dummy_dma_hardware);
+
+	return 0;
+}
+
+static const struct snd_pcm_ops snd_dummy_dma_ops = {
+	.open		= dummy_dma_open,
+	.ioctl		= snd_pcm_lib_ioctl,
+};
+
+static const struct snd_soc_component_driver dummy_platform = {
+	.ops = &snd_dummy_dma_ops,
+};
+
 static const struct snd_soc_component_driver dummy_codec = {
 	.idle_bias_on		= 1,
 	.use_pmdown_time	= 1,
@@ -319,6 +339,11 @@  static int snd_soc_dummy_probe(struct platform_device *pdev)
 
 	ret = devm_snd_soc_register_component(&pdev->dev,
 					      &dummy_codec, &dummy_dai, 1);
+	if (ret < 0)
+		return ret;
+
+	ret = devm_snd_soc_register_component(&pdev->dev, &dummy_platform,
+					      NULL, 0);
 
 	return ret;
 }