[alsa-devel] [PATCH] ALSA: hda - using POS_FIX_LPIB on Broadwell HDMI Audio

Takashi Iwai tiwai at suse.de
Tue May 13 09:19:34 CEST 2014


At Tue, 13 May 2014 04:37:18 +0000,
Lin, Mengdong wrote:
> 
> Hi Takashi,
> 
> I submitted two patches to mask the buggy DMA0 of Broadwell display controller. Please review.
> 
> [PATCH 1/2] ALSA: hda - allow to mask a buggy stream DMA by setting it as opened
> [PATCH 2/2] ALSA: hda - mask buggy stream DMA0 for Broadwell display controller

It can be just simple like the patch below.  This is rather a
tentative workaround.  If the hardware (or the corresponding part in
the graphics driver) is fixed, we can get rid of it easily.  So, just
keep the change as small and simple as possible.


Takashi

---
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index b540ad71eb0d..2c54629d62d1 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -1367,6 +1367,12 @@ static int azx_first_init(struct azx *chip)
 	/* initialize streams */
 	azx_init_stream(chip);
 
+	/* workaround for Broadwell HDMI: the first stream is broken,
+	 * so mask it by keeping it as if opened
+	 */
+	if (pci->vendor == 0x8086 && pci->device == 0x160c)
+		chip->azx_dev[0].opened = 1;
+
 	/* initialize chip */
 	azx_init_pci(chip);
 	azx_init_chip(chip, (probe_only[dev] & 2) == 0);


More information about the Alsa-devel mailing list