back to discussion of VIA quirk fixup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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	
Dave Jones wrote:
>
> On Tue, May 09, 2006 at 12:59:16PM -0700, Andrew Morton wrote:
>  > 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,
-- 
Sérgio M. B.

Attachment: smime.p7s
Description: S/MIME cryptographic signature


[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux