* [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.