ALSA: HDA: Use LPIB Position fix for Intel SCH Poulsbo
PATCH 1/1 ALSA: HDA: Use LPIB Position fix for Intel SCH Poulsbo
Hi Takashi,
I just got another position_fix=1 report for the same vendor/deviceID [1] as I sent you the other day, and I assume Eric Piel (a month ago on this list) have the same chipset as well, although I cannot see his alsa-info. I think you have it, can you verify?
So...can we consider quirking the entire chip to use LPIB, like in the attached patch (untested)? If so I'll send another patch later to remove existing quirks for this chipset.
// David
[1] http://www.alsa-project.org/db/?f=b7421521b8d8a4db3842ee14cdb54b4f440cae5e
Quoted 1 line
From
4f6630ecafc2246c4237f0be5008d4a15cfce733Mon Sep 17 00:00:00 2001
From: David Henningsson <[email protected]>
Date: Wed, 14 Dec 2011 15:52:30 +0800
Subject: [PATCH] ALSA: HDA: Use LPIB Position fix for Intel SCH Poulsbo
Several people with this chipset have reported inconsistent/sloppy values for position reporting when the DMA position buffer is used, and that setting position_fix=1 have fixed their problems.
--- sound/pci/hda/hda_intel.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
sound/pci/hda/hda_intel.c +2 -1
@@ -2971,7 +2971,8 @@ static DEFINE_PCI_DEVICE_TABLE(azx_ids) = {/* SCH */ { PCI_DEVICE(0x8086, 0x811b), .driver_data =AZX_DRIVER_SCH |AZX_DCAPS_SCH_SNOOP | - AZX_DCAPS_BUFSIZE}, + AZX_DCAPS_BUFSIZE | AZX_DCAPS_POSFIX_LPIB }, /* Poulsbo */ + /* ICH */ { PCI_DEVICE(0x8086, 0x2668), .driver_data =AZX_DRIVER_ICH |AZX_DCAPS_OLD_SSYNC | AZX_DCAPS_BUFSIZE }, /* ICH6 */
Signature · 1 line
1.7.5.4
At Wed, 14 Dec 2011 16:01:08 +0800,
Quoted 7 lines · David Henningsson
Hi Takashi,
I just got another position_fix=1 report for the same vendor/deviceID
[1] as I sent you the other day, and I assume Eric Piel (a month ago on this list) have the same chipset as well, although I cannot see his alsa-info. I think you have it, can you verify?
You can find it in
https://lkml.org/lkml/2011/10/18/54
Yes, the controller is same. Just a different SSID.
Quoted 2 lines
So...can we consider quirking the entire chip to use LPIB, like in the attached patch (untested)?
I guess this would be good. A question is whether to put this into 3.2 or 3.3. I think it can be put to 3.2-rc6, although it's a bit late. Changing to LPIB is basically harmless.
Quoted 2 lines
If so I'll send another patch later to remove existing quirks for this chipset.
Thanks.
Takashi
Quoted 38 lines
// David
[1]
http://www.alsa-project.org/db/?f=b7421521b8d8a4db3842ee14cdb54b4f440cae5e
[2 0001-ALSA-HDA-Use-LPIB-Position-fix-for-Intel-SCH-Poulsbo.patch <text/x-patch (7bit)>]Quoted 1 line
From
4f6630ecafc2246c4237f0be5008d4a15cfce733Mon Sep 17 00:00:00 2001From: David Henningsson <[email protected]>
Date: Wed, 14 Dec 2011 15:52:30 +0800
Subject: [PATCH] ALSA: HDA: Use LPIB Position fix for Intel SCH PoulsboSeveral people with this chipset have reported inconsistent/sloppy values for position reporting when the DMA position buffer is used, and that setting position_fix=1 have fixed their problems.
Signed-off-by David Henningsson <[email protected]>--- sound/pci/hda/hda_intel.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)sound/pci/hda/hda_intel.c +2
-1@@ -2971,7 +2971,8 @@ static DEFINE_PCI_DEVICE_TABLE(azx_ids) = {/* SCH */ { PCI_DEVICE(0x8086, 0x811b), .driver_data =AZX_DRIVER_SCH |AZX_DCAPS_SCH_SNOOP | - AZX_DCAPS_BUFSIZE}, + AZX_DCAPS_BUFSIZE | AZX_DCAPS_POSFIX_LPIB }, /* Poulsbo */ + /* ICH */ { PCI_DEVICE(0x8086, 0x2668), .driver_data =AZX_DRIVER_ICH |AZX_DCAPS_OLD_SSYNC | AZX_DCAPS_BUFSIZE }, /* ICH6 */Signature · 1 line
1.7.5.4