Matías Alejandro Torres wrote: > >> Well, making it work without pci=nomsi is the whole point here. I dunno >> why this simple thing doesn't work. Can you post the result of 'lspci >> -nn' so that we can see the numeric ID? >> > I would really like to know the answer to that, but i'm hundred of miles > away. Attached to this email is the output of lspci -nn . > > Maybe you have the wrong id of the pci bridge: > > 00:02.0 PCI bridge [0604]: ATI Technologies Inc RS480 PCI-X Root Port > [1002:5a34] > > +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x5a3f, quirk_disable_msi); > /* RS480 PCI bridge */ Yeah, apparently. 00:02.0 PCI bridge [0604]: ATI Technologies Inc RS480 PCI-X Root Port [1002:5a34] So, there are two broken PCI bridges. Argh.... Okay, please try the attached patch. It includes both 5a34 and 5a3f. Thanks for your patience. -- tejun
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 3411483..b0e89db 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -1648,6 +1648,8 @@ static void __devinit quirk_disable_msi( } } DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_8131_BRIDGE, quirk_disable_msi); +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x5a34, quirk_disable_msi); /* RS480 PCI-X root port */ +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x5a3f, quirk_disable_msi); /* RS480 PCI bridge */ /* Go through the list of Hypertransport capabilities and * return 1 if a HT MSI capability is found and enabled */