[alsa-devel] [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers

Takashi Iwai tiwai at suse.de
Wed Nov 6 09:19:06 CET 2013


At Wed, 06 Nov 2013 09:14:47 +0100,
David Henningsson wrote:
> 
> On 11/05/2013 06:00 PM, Takashi Iwai wrote:
> > Haswell HDMI audio controllers seem to get stuck when unaligned buffer
> > size is used.  Let's enable the buffer alignment for the corresponding
> > entries.
> > 
> > Since AZX_DCAPS_INTEL_PCH contains AZX_DCAPS_BUFSIZE that disables the
> > buffer alignment forcibly, define AZX_DCAPS_INTEL_HASWELL and put the
> > necessary AZX_DCAPS bits there.
> 
> A name question - haswell for me is both the HDMI controller and the
> controller for analog codecs.

The analog codecs are on LynxPoint or such, not directly connected to
Haswell CPU.


Takashi

> How about AZX_DCAPS_HASWELL_HDMI instead?
> 
> > 
> > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=60769
> > Reported-by: Alexander E. Patrakov <patrakov at gmail.com>
> > Cc: <stable at vger.kernel.org>
> > Signed-off-by: Takashi Iwai <tiwai at suse.de>
> > ---
> >  sound/pci/hda/hda_intel.c | 14 ++++++++------
> >  1 file changed, 8 insertions(+), 6 deletions(-)
> > 
> > diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> > index d6dcec768594..9cbd1259a5be 100644
> > --- a/sound/pci/hda/hda_intel.c
> > +++ b/sound/pci/hda/hda_intel.c
> > @@ -613,6 +613,11 @@ enum {
> >  #define AZX_DCAPS_INTEL_PCH \
> >  	(AZX_DCAPS_INTEL_PCH_NOPM | AZX_DCAPS_PM_RUNTIME)
> >  
> > +#define AZX_DCAPS_INTEL_HASWELL \
> > +	(AZX_DCAPS_SCH_SNOOP | AZX_DCAPS_ALIGN_BUFSIZE | \
> > +	 AZX_DCAPS_COUNT_LPIB_DELAY | AZX_DCAPS_PM_RUNTIME | \
> > +	 AZX_DCAPS_I915_POWERWELL)
> > +
> >  /* quirks for ATI SB / AMD Hudson */
> >  #define AZX_DCAPS_PRESET_ATI_SB \
> >  	(AZX_DCAPS_ATI_SNOOP | AZX_DCAPS_NO_TCSEL | \
> > @@ -3992,14 +3997,11 @@ static DEFINE_PCI_DEVICE_TABLE(azx_ids) = {
> >  	  .driver_data = AZX_DRIVER_PCH | AZX_DCAPS_INTEL_PCH },
> >  	/* Haswell */
> >  	{ PCI_DEVICE(0x8086, 0x0a0c),
> > -	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH |
> > -	  AZX_DCAPS_I915_POWERWELL },
> > +	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_HASWELL },
> >  	{ PCI_DEVICE(0x8086, 0x0c0c),
> > -	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH |
> > -	  AZX_DCAPS_I915_POWERWELL },
> > +	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_HASWELL },
> >  	{ PCI_DEVICE(0x8086, 0x0d0c),
> > -	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH |
> > -	  AZX_DCAPS_I915_POWERWELL },
> > +	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_HASWELL },
> >  	/* 5 Series/3400 */
> >  	{ PCI_DEVICE(0x8086, 0x3b56),
> >  	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH_NOPM },
> > 
> 
> 
> 
> -- 
> David Henningsson, Canonical Ltd.
> https://launchpad.net/~diwic
> 


More information about the Alsa-devel mailing list