All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers
@ 2013-11-05 17:00 Takashi Iwai
  2013-11-05 17:00 ` [PATCH 2/2] ALSA: hda - Name Haswell HDMI controllers better Takashi Iwai
  2013-11-06  8:14 ` [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers David Henningsson
  0 siblings, 2 replies; 5+ messages in thread
From: Takashi Iwai @ 2013-11-05 17:00 UTC (permalink / raw)
  To: alsa-devel

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.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=60769
Reported-by: Alexander E. Patrakov <patrakov@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@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 },
-- 
1.8.4.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] ALSA: hda - Name Haswell HDMI controllers better
  2013-11-05 17:00 [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers Takashi Iwai
@ 2013-11-05 17:00 ` Takashi Iwai
  2013-11-06  8:14 ` [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers David Henningsson
  1 sibling, 0 replies; 5+ messages in thread
From: Takashi Iwai @ 2013-11-05 17:00 UTC (permalink / raw)
  To: alsa-devel

"HDA Intel MID" is no correct name for Haswell HDMI controllers.
Give them a better name, "HDA Intel HDMI".

Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/pci/hda/hda_intel.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index 9cbd1259a5be..17f4aa8cddd5 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -569,6 +569,7 @@ enum {
 	AZX_DRIVER_ICH,
 	AZX_DRIVER_PCH,
 	AZX_DRIVER_SCH,
+	AZX_DRIVER_HDMI,
 	AZX_DRIVER_ATI,
 	AZX_DRIVER_ATIHDMI,
 	AZX_DRIVER_ATIHDMI_NS,
@@ -648,6 +649,7 @@ static char *driver_short_names[] = {
 	[AZX_DRIVER_ICH] = "HDA Intel",
 	[AZX_DRIVER_PCH] = "HDA Intel PCH",
 	[AZX_DRIVER_SCH] = "HDA Intel MID",
+	[AZX_DRIVER_HDMI] = "HDA Intel HDMI",
 	[AZX_DRIVER_ATI] = "HDA ATI SB",
 	[AZX_DRIVER_ATIHDMI] = "HDA ATI HDMI",
 	[AZX_DRIVER_ATIHDMI_NS] = "HDA ATI HDMI",
@@ -3997,11 +3999,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_HASWELL },
+	  .driver_data = AZX_DRIVER_HDMI | AZX_DCAPS_INTEL_HASWELL },
 	{ PCI_DEVICE(0x8086, 0x0c0c),
-	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_HASWELL },
+	  .driver_data = AZX_DRIVER_HDMI | AZX_DCAPS_INTEL_HASWELL },
 	{ PCI_DEVICE(0x8086, 0x0d0c),
-	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_HASWELL },
+	  .driver_data = AZX_DRIVER_HDMI | AZX_DCAPS_INTEL_HASWELL },
 	/* 5 Series/3400 */
 	{ PCI_DEVICE(0x8086, 0x3b56),
 	  .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH_NOPM },
-- 
1.8.4.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers
  2013-11-05 17:00 [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers Takashi Iwai
  2013-11-05 17:00 ` [PATCH 2/2] ALSA: hda - Name Haswell HDMI controllers better Takashi Iwai
@ 2013-11-06  8:14 ` David Henningsson
  2013-11-06  8:19   ` Takashi Iwai
  1 sibling, 1 reply; 5+ messages in thread
From: David Henningsson @ 2013-11-06  8:14 UTC (permalink / raw)
  To: Takashi Iwai, alsa-devel

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.

How about AZX_DCAPS_HASWELL_HDMI instead?

> 
> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=60769
> Reported-by: Alexander E. Patrakov <patrakov@gmail.com>
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Takashi Iwai <tiwai@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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers
  2013-11-06  8:14 ` [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers David Henningsson
@ 2013-11-06  8:19   ` Takashi Iwai
  2013-11-06  9:42     ` David Henningsson
  0 siblings, 1 reply; 5+ messages in thread
From: Takashi Iwai @ 2013-11-06  8:19 UTC (permalink / raw)
  To: David Henningsson; +Cc: alsa-devel

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@gmail.com>
> > Cc: <stable@vger.kernel.org>
> > Signed-off-by: Takashi Iwai <tiwai@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
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers
  2013-11-06  8:19   ` Takashi Iwai
@ 2013-11-06  9:42     ` David Henningsson
  0 siblings, 0 replies; 5+ messages in thread
From: David Henningsson @ 2013-11-06  9:42 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

On 11/06/2013 09:19 AM, Takashi Iwai wrote:
> 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.

Fair enough, I stand corrected. I guess I just usually bunk the entire
platform together and call it "Haswell".


-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-11-06  9:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-05 17:00 [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers Takashi Iwai
2013-11-05 17:00 ` [PATCH 2/2] ALSA: hda - Name Haswell HDMI controllers better Takashi Iwai
2013-11-06  8:14 ` [PATCH 1/2] ALSA: hda - Force buffer alignment for Haswell HDMI controllers David Henningsson
2013-11-06  8:19   ` Takashi Iwai
2013-11-06  9:42     ` David Henningsson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.