[alsa-devel] [PATCH 3/9] ASoC: Intel: Skylake: Fix to use correct macros for the path iteration
Vinod Koul
vinod.koul at intel.com
Thu Oct 22 19:52:36 CEST 2015
From: "Subhransu S. Prusty" <subhransu.s.prusty at intel.com>
In case of playback, for the BE dai source path should be iterated to find
the pipe params. With sink path iterated, this resulted in a loop and kernel
panic with page request failure.
Similar are the cases for Capture and FE dais. Using correct macros to fix
the panic
Signed-off-by: Subhransu S. Prusty <subhransu.s.prusty at intel.com>
Signed-off-by: Vinod Koul <vinod.koul at intel.com>
---
sound/soc/intel/skylake/skl-topology.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c
index 7c920857007e..0fba39dcb2ab 100644
--- a/sound/soc/intel/skylake/skl-topology.c
+++ b/sound/soc/intel/skylake/skl-topology.c
@@ -844,7 +844,7 @@ skl_tplg_fe_get_cpr_module(struct snd_soc_dai *dai, int stream)
if (stream == SNDRV_PCM_STREAM_PLAYBACK) {
w = dai->playback_widget;
- snd_soc_dapm_widget_for_each_source_path(w, p) {
+ snd_soc_dapm_widget_for_each_sink_path(w, p) {
if (p->connect && p->sink->power &&
is_skl_dsp_widget_type(p->sink))
continue;
@@ -857,7 +857,7 @@ skl_tplg_fe_get_cpr_module(struct snd_soc_dai *dai, int stream)
}
} else {
w = dai->capture_widget;
- snd_soc_dapm_widget_for_each_sink_path(w, p) {
+ snd_soc_dapm_widget_for_each_source_path(w, p) {
if (p->connect && p->source->power &&
is_skl_dsp_widget_type(p->source))
continue;
@@ -945,7 +945,7 @@ static int skl_tplg_be_set_src_pipe_params(struct snd_soc_dai *dai,
{
struct snd_soc_dapm_path *p;
- snd_soc_dapm_widget_for_each_sink_path(w, p) {
+ snd_soc_dapm_widget_for_each_source_path(w, p) {
if (p->connect && is_skl_dsp_widget_type(p->source) &&
p->source->priv) {
@@ -969,7 +969,7 @@ static int skl_tplg_be_set_sink_pipe_params(struct snd_soc_dai *dai,
{
struct snd_soc_dapm_path *p = NULL;
- snd_soc_dapm_widget_for_each_source_path(w, p) {
+ snd_soc_dapm_widget_for_each_sink_path(w, p) {
if (p->connect && is_skl_dsp_widget_type(p->sink) &&
p->sink->priv) {
--
1.9.1
More information about the Alsa-devel
mailing list