Unverified Commit f183f927 authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Mark Brown
Browse files

ASoC: soc-pcm: add soc_rtd_startup()

parent df310074
Loading
Loading
Loading
Loading
+14 −7
Original line number Diff line number Diff line
@@ -28,6 +28,15 @@

#define DPCM_MAX_BE_USERS	8

static int soc_rtd_startup(struct snd_soc_pcm_runtime *rtd,
			   struct snd_pcm_substream *substream)
{
	if (rtd->dai_link->ops &&
	    rtd->dai_link->ops->startup)
		return rtd->dai_link->ops->startup(substream);
	return 0;
}

/**
 * snd_soc_runtime_activate() - Increment active count for PCM runtime components
 * @rtd: ASoC PCM runtime that is activated
@@ -522,14 +531,12 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
			codec_dai->rx_mask = 0;
	}

	if (rtd->dai_link->ops->startup) {
		ret = rtd->dai_link->ops->startup(substream);
	ret = soc_rtd_startup(rtd, substream);
	if (ret < 0) {
		pr_err("ASoC: %s startup failed: %d\n",
		       rtd->dai_link->name, ret);
		goto machine_err;
	}
	}

	/* Dynamic PCM DAI links compat checks use dynamic capabilities */
	if (rtd->dai_link->dynamic || rtd->dai_link->no_pcm)