Skip to contentSkip to conversation

back to discussion of VIA quirk fixup

DISCUSSION Sergio Monteiro Basto 3 participants 3 messages May 24, 2006 – Jun 5, 2006 ACPI

lore
Share & tools
lore
#0 lore raw

Hi,
Before this matter getting cold, I'd like to tell this:

1º This quirk_via_irq function has been created originally by Bjorn Helgaas, so maybe he can tell better what patch does.

2º This is need it on a Compaq presario 700 (laptop) that I bought on year 2002. After new ACPI get some stability and enter in kernel (2.4.22), some quirks could be deleted. And when Bjorn has being to introduction GSIs stuff, came with this patch that replace another bunch of quirks.

3º On my new desktop, one Intel(R) Pentium(R) D ual, using lscpi -n, I see that I got :
cat /usr/include/linux/pci_ids.h | grep VIA | grep 3149
#define PCI_DEVICE_ID_VIA_8237_SATA 0x3149
PCI_DEVICE_ID_VIA_82C586_1 0x0571
PCI_DEVICE_ID_VIA_82C586_2 0x3038

But I think, I don't need this quirks, but with or without the quirks I still have one oops on my ethernet card, you can have more details on:
http://bugme.osdl.org/show_bug.cgi?id=6419
I think my system runs better without quirks, but I am not sure and I don't have a way to prove it !

REFERENCES:
http://lkml.org/lkml/2006/5/9/250

Subject Re: [PATCH] VIA quirk fixup, additional PCI IDs

Quoted 8 lines · Dave Jones
Quoted 2 lines · Andrew Morton

This looks like a 2.6.17-worthy fix, but it's not clear. Help. What happens if 2.6.17 doesn't have this??

We won't run the quirk on machines that used to have it run, so we get buggered up irq routing.

and
Andrew Morton wrote:
OK..

We used to have

DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_ANY_ID, quirk_via_irq);

and we now have

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_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);

which is rather a step backwards, because we need to keep that list updated now, and we'll fail to catch new devices.

What happens if we just revert 75cf7456dd87335f574dcd53c4ae616a2ad71a11?

It says

Alan Cox pointed out that the VIA 'IRQ fixup' was erroneously running on my system which has no VIA southbridge (but I do have a VIA IEEE 1394 device).

but so what? Did anything actually go wrong? Is it likely to go wrong in the future?

Is there was a problem, is there something we can do at runtime in quirk_via_irq() to avoid the problem, rather than expanding out the fixup list in this manner?

Thanks,

Signature · 1 line
Sérgio M. B.
#1 lore raw
Quoted 2 lines · Sergio Monteiro Basto

I think my system runs better without quirks, but I am not sure and I don't have a way to prove it !

please cc' me in further comments wrt to this if possible

can you please send me your kernel vresion, and the output of lspci -n on the relevant system(s) with a description of what problems you are seeing?

#2 lore raw
In reply to Sergio Monteiro Basto
Quoted 2 lines · Sergio Monteiro Basto

1º This quirk_via_irq function has been created originally by Bjorn Helgaas, so maybe he can tell better what patch does.

I didn't really create the function, I merely renamed it and tweaked it a bit based on some bug reports. And I've never been able to match up this quirk with any VIA chipset documentation, so I vowed never to get involved with it again :-)

Bjorn

-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html