[ALSA] hda-intel - Fix Oops with ATI HDMI devices
authorTakashi Iwai <tiwai@suse.de>
Fri, 22 Feb 2008 17:47:12 +0000 (18:47 +0100)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Fri, 22 Feb 2008 22:20:09 +0000 (14:20 -0800)
The driver gets Oops with ATI HDMI devices due to the wrong calculation
of index for playback streams.  This patch fixes it.  Reference:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3746

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
sound/pci/hda/hda_intel.c

index a1098bb..4be36c8 100644 (file)
@@ -1818,7 +1818,7 @@ static int __devinit azx_create(struct snd_card *card, struct pci_dev *pci,
                 */
                chip->playback_streams = (gcap & (0xF << 12)) >> 12;
                chip->capture_streams = (gcap & (0xF << 8)) >> 8;
-               chip->playback_index_offset = (gcap & (0xF << 12)) >> 12;
+               chip->playback_index_offset = chip->capture_streams;
                chip->capture_index_offset = 0;
        } else {
                /* gcap didn't give any info, switching to old method */