]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/3.6.8/alsa-hda-force-to-reset-iec958-status-bits-for-ad-codecs.patch
fix up queue-5.15/mm-fix-race-between-__split_huge_pmd_locked-and-gup-.patch
[thirdparty/kernel/stable-queue.git] / releases / 3.6.8 / alsa-hda-force-to-reset-iec958-status-bits-for-ad-codecs.patch
CommitLineData
083ae65c
GKH
1From ae24c3191ba2ab03ec6b4be323e730e00404b4b6 Mon Sep 17 00:00:00 2001
2From: Takashi Iwai <tiwai@suse.de>
3Date: Mon, 5 Nov 2012 12:32:46 +0100
4Subject: ALSA: hda - Force to reset IEC958 status bits for AD codecs
5
6From: Takashi Iwai <tiwai@suse.de>
7
8commit ae24c3191ba2ab03ec6b4be323e730e00404b4b6 upstream.
9
10Several bug reports suggest that the forcibly resetting IEC958 status
11bits is required for AD codecs to get the SPDIF output working
12properly after changing streams.
13
14Original fix credit to Javeed Shaikh.
15
16BugLink: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/359361
17
18Reported-by: Robin Kreis <r.kreis@uni-bremen.de>
19Signed-off-by: Takashi Iwai <tiwai@suse.de>
20Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
21
22---
23 sound/pci/hda/patch_analog.c | 1 +
24 1 file changed, 1 insertion(+)
25
26--- a/sound/pci/hda/patch_analog.c
27+++ b/sound/pci/hda/patch_analog.c
28@@ -545,6 +545,7 @@ static int ad198x_build_pcms(struct hda_
29 if (spec->multiout.dig_out_nid) {
30 info++;
31 codec->num_pcms++;
32+ codec->spdif_status_reset = 1;
33 info->name = "AD198x Digital";
34 info->pcm_type = HDA_PCM_TYPE_SPDIF;
35 info->stream[SNDRV_PCM_STREAM_PLAYBACK] = ad198x_pcm_digital_playback;