diff options
author | KaiChieh Chuang <kaichieh.chuang@mediatek.com> | 2018-02-05 13:00:00 +0800 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2018-02-07 11:15:26 +0000 |
commit | 28735af3f59af8388ff5317f1faa3cf532af5dcf (patch) | |
tree | 5716acd7cd003434a607d96b9831df8de0612533 /sound | |
parent | 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323 (diff) | |
download | linux-stable-28735af3f59af8388ff5317f1faa3cf532af5dcf.tar.gz linux-stable-28735af3f59af8388ff5317f1faa3cf532af5dcf.tar.bz2 linux-stable-28735af3f59af8388ff5317f1faa3cf532af5dcf.zip |
ASoC: dapm: fix debugfs read using path->connected
This fix a bug in dapm_widget_power_read_file(),
where it may sent opposite order of source/sink widget
into the p->connected().
for example,
static int connected_check(source, sink);
{"w_sink", NULL, "w_source", connected_check}
the dapm_widget_power_read_file() will query p->connected()
in following case
p->conneted("w_source", "w_sink")
p->conneted("w_sink", "w_source")
we should avoid the last case, since it's the wrong order (source/sink)
as declared in snd_soc_dapm_route.
Signed-off-by: KaiChieh Chuang <kaichieh.chuang@mediatek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/soc-dapm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index a10b21cfc31e..ee6d9d9a3c5e 100644 --- a/sound/soc/soc-dapm.c +++ b/sound/soc/soc-dapm.c @@ -2026,7 +2026,7 @@ static ssize_t dapm_widget_power_read_file(struct file *file, snd_soc_dapm_for_each_direction(dir) { rdir = SND_SOC_DAPM_DIR_REVERSE(dir); snd_soc_dapm_widget_for_each_path(w, dir, p) { - if (p->connected && !p->connected(w, p->node[rdir])) + if (p->connected && !p->connected(p->source, p->sink)) continue; if (!p->connect) |