public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Hugo Vanwoerkom <rociobarroso@att.net.mx>
To: ocilent1@gmail.com
Cc: Chris Wedgwood <cw@f00f.org>, Lee Revell <rlrevell@joe-job.com>,
	Con Kolivas <kernel@kolivas.org>,
	ck@vds.kolivas.org, linux list <linux-kernel@vger.kernel.org>,
	dsd@gentoo.org
Subject: Re: sound skips on 2.6.18-ck1
Date: Sun, 08 Oct 2006 11:18:27 -0500	[thread overview]
Message-ID: <452924D3.9070907@att.net.mx> (raw)
In-Reply-To: <45281E90.2080502@att.net.mx>

[-- Attachment #1: Type: text/plain, Size: 678 bytes --]

Hugo Vanwoerkom wrote:
> Hi,
>
>
> I see that on 2.6.18-ck1 still some sort of quirks patch is needed for 
> VIA chips.
>
> I get plenty:
>
> ALSA: underrun, at least 0ms.
>
> and with 2.6.17-ck1 with the quirks.c.patch I did not. But the patch 
> does not fit on 2.6.18 :-(
>
> Strangely enough this time around I do *not* get underruns on vt's 
> with mpg321 and I *do* get them on X. Last time around it was the 
> reverse.
>
> Is there a fix for 2.6.18 ?
>
> Thanks!
>
> Hugo
>

I know nothing about quirks.c but I adapted the patch that worked (TM) 
under 2.6.17 to 2.6.18 and it solves the situation for me.
I attach the reworked patch and my lspci.

Regards

Hugo








[-- Attachment #2: quirks.c.2.6.18.patch --]
[-- Type: text/plain, Size: 2175 bytes --]

diff -Naur linux-2.6.17.orig/drivers/pci/quirks.c linux-2.6.17/drivers/pci/quirks.c
--- linux-2.6.17.orig/drivers/pci/quirks.c	2006-10-08 07:52:25.000000000 -0500
+++ linux-2.6.17/drivers/pci/quirks.c	2006-10-08 07:45:06.000000000 -0500
@@ -650,10 +650,37 @@
  * Some of the on-chip devices are actually '586 devices' so they are
  * listed here.
  */
+
+static int via_irq_fixup_needed = -1;
+
+/*
+ * As some VIA hardware is available in PCI-card form, we need to restrict
+ * this quirk to VIA PCI hardware built onto VIA-based motherboards only.
+ * We try to locate a VIA southbridge before deciding whether the quirk
+ * should be applied.
+ */
+static const struct pci_device_id via_irq_fixup_tbl[] = {
+	{
+		.vendor 	= PCI_VENDOR_ID_VIA,
+		.device		= PCI_ANY_ID,
+		.subvendor	= PCI_ANY_ID,
+		.subdevice	= PCI_ANY_ID,
+		.class		= PCI_CLASS_BRIDGE_ISA << 8,
+		.class_mask	= 0xffff00,
+	},
+	{ 0, },
+};
+
 static void quirk_via_irq(struct pci_dev *dev)
 {
 	u8 irq, new_irq;
 
+	if (via_irq_fixup_needed == -1)
+		via_irq_fixup_needed = pci_dev_present(via_irq_fixup_tbl);
+
+	if (!via_irq_fixup_needed)
+		return;
+
 	new_irq = dev->irq & 0xf;
 	pci_read_config_byte(dev, PCI_INTERRUPT_LINE, &irq);
 	if (new_irq != irq) {
@@ -663,14 +690,7 @@
 		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, new_irq);
 	}
 }
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_0, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_2, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_3, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8235_USB_2, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_4, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_5, quirk_via_irq);
+DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_ANY_ID, quirk_via_irq);
 
 /*
  * VIA VT82C598 has its device ID settable and many BIOSes

[-- Attachment #3: 11.lspci --]
[-- Type: text/plain, Size: 1606 bytes --]

00:00.0 Host bridge: VIA Technologies, Inc. KT880 Host Bridge
00:00.1 Host bridge: VIA Technologies, Inc. KT880 Host Bridge
00:00.2 Host bridge: VIA Technologies, Inc. KT880 Host Bridge
00:00.3 Host bridge: VIA Technologies, Inc. KT880 Host Bridge
00:00.4 Host bridge: VIA Technologies, Inc. KT880 Host Bridge
00:00.7 Host bridge: VIA Technologies, Inc. KT880 Host Bridge
00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge
00:0a.0 VGA compatible controller: nVidia Corporation NV18 [GeForce4 MX 440 AGP 8x] (rev a2)
00:0b.0 RAID bus controller: Silicon Image, Inc. SiI 3112 [SATALink/SATARaid] Serial ATA Controller (rev 02)
00:0c.0 Multimedia audio controller: Creative Labs SB Audigy LS
00:0f.0 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South]
00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 60)
00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 78)
01:00.0 VGA compatible controller: nVidia Corporation NV18 [GeForce4 MX 4000 AGP 8x] (rev c1)

  parent reply	other threads:[~2006-10-08 16:19 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <4487F942.3030601@att.net.mx>
     [not found] ` <200606161115.53716.ocilent1@gmail.com>
     [not found]   ` <4493D24D.2010902@att.net.mx>
2006-06-17 11:29     ` sound skips on 2.6.16.17 Con Kolivas
2006-06-18  2:41       ` Chris Wedgwood
2006-06-18  4:04         ` ocilent1
2006-06-18  4:40           ` Chris Wedgwood
2006-06-18  4:49             ` ocilent1
2006-06-18 11:11             ` Hugo Vanwoerkom
2006-06-18 13:35               ` karsten wiese
2006-06-19  3:54             ` ocilent1
2006-06-19 21:24               ` Lee Revell
2006-06-19 21:50                 ` Chris Wedgwood
2006-06-20 18:35                   ` Lee Revell
2006-06-20 19:36                     ` Chris Wedgwood
2006-06-24 14:08                       ` Jacek J
2006-06-27 22:25                       ` Lee Revell
2006-06-27 22:48                         ` Chris Wedgwood
2006-07-07 16:33                           ` Lee Revell
2006-07-07 17:00                             ` Chris Wedgwood
2006-07-07 18:00                               ` Lee Revell
2006-07-19  6:03                               ` ocilent1
2006-07-19  6:33                                 ` Chris Wedgwood
2006-07-19 11:25                                   ` ocilent1
2006-07-19 13:47                                   ` Hugo Vanwoerkom
2006-07-19 13:51                                     ` ocilent1
2006-10-07 21:39                                     ` sound skips on 2.6.18-ck1 Hugo Vanwoerkom
2006-10-07 21:56                                       ` Hugo Vanwoerkom
2006-10-08 16:18                                       ` Hugo Vanwoerkom [this message]
2006-10-08 17:19                                         ` [ck] " Andreas Mohr
2006-10-08 17:33                                           ` Daniel Drake
2006-06-18 11:06         ` sound skips on 2.6.16.17 Hugo Vanwoerkom
2006-06-18 13:10         ` Sergey Vlasov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=452924D3.9070907@att.net.mx \
    --to=rociobarroso@att.net.mx \
    --cc=ck@vds.kolivas.org \
    --cc=cw@f00f.org \
    --cc=dsd@gentoo.org \
    --cc=kernel@kolivas.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ocilent1@gmail.com \
    --cc=rlrevell@joe-job.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox