diff options
author | Arnaud Pouliquen <arnaud.pouliquen@st.com> | 2016-10-24 16:42:52 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-10-26 12:41:28 +0200 |
commit | 1e6d304431958929b601b013687b73293ba27b88 (patch) | |
tree | 71416f8153c2de2352cdbd688f60c9b9322000b9 /sound/soc/sti | |
parent | Linux 4.9-rc1 (diff) | |
download | linux-1e6d304431958929b601b013687b73293ba27b88.tar.xz linux-1e6d304431958929b601b013687b73293ba27b88.zip |
ASoC: sti: fix channel status update after playback start
If 'IEC958 Playback Default' control is updated during playback,
Channel status needs to be set according to the runtime structure.
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sti')
-rw-r--r-- | sound/soc/sti/uniperif_player.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sound/soc/sti/uniperif_player.c b/sound/soc/sti/uniperif_player.c index 1bc8ebc2528e..ad54d4cf58ad 100644 --- a/sound/soc/sti/uniperif_player.c +++ b/sound/soc/sti/uniperif_player.c @@ -614,7 +614,11 @@ static int uni_player_ctl_iec958_put(struct snd_kcontrol *kcontrol, iec958->status[3] = ucontrol->value.iec958.status[3]; mutex_unlock(&player->ctrl_lock); - uni_player_set_channel_status(player, NULL); + if (player->substream && player->substream->runtime) + uni_player_set_channel_status(player, + player->substream->runtime); + else + uni_player_set_channel_status(player, NULL); return 0; } |