diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-11-05 12:32:46 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-11-05 12:36:32 +0100 |
commit | ae24c3191ba2ab03ec6b4be323e730e00404b4b6 (patch) | |
tree | 7bc48df71fa8b6720f498cd177df8ad9416d73c3 /sound | |
parent | 5c0ee9497b33cde3e57460efe4f73313dc0b57a3 (diff) | |
download | op-kernel-dev-ae24c3191ba2ab03ec6b4be323e730e00404b4b6.zip op-kernel-dev-ae24c3191ba2ab03ec6b4be323e730e00404b4b6.tar.gz |
ALSA: hda - Force to reset IEC958 status bits for AD codecs
Several bug reports suggest that the forcibly resetting IEC958 status
bits is required for AD codecs to get the SPDIF output working
properly after changing streams.
Original fix credit to Javeed Shaikh.
BugLink: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/359361
Reported-by: Robin Kreis <r.kreis@uni-bremen.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/hda/patch_analog.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_analog.c b/sound/pci/hda/patch_analog.c index cdd43ea..1eeba73 100644 --- a/sound/pci/hda/patch_analog.c +++ b/sound/pci/hda/patch_analog.c @@ -545,6 +545,7 @@ static int ad198x_build_pcms(struct hda_codec *codec) if (spec->multiout.dig_out_nid) { info++; codec->num_pcms++; + codec->spdif_status_reset = 1; info->name = "AD198x Digital"; info->pcm_type = HDA_PCM_TYPE_SPDIF; info->stream[SNDRV_PCM_STREAM_PLAYBACK] = ad198x_pcm_digital_playback; |