patch-2.4.18 linux/drivers/pci/quirks.c
Next file: linux/drivers/pnp/isapnp.c
Previous file: linux/drivers/pci/pci.ids
Back to the patch index
Back to the overall index
- Lines: 22
- Date:
Wed Feb 13 17:44:40 2002
- Orig file:
linux.orig/drivers/pci/quirks.c
- Orig date:
Mon Feb 18 20:18:40 2002
diff -Naur -X /home/marcelo/lib/dontdiff linux.orig/drivers/pci/quirks.c linux/drivers/pci/quirks.c
@@ -444,13 +444,15 @@
static void __init quirk_amd_ordering(struct pci_dev *dev)
{
u32 pcic;
-
- pci_read_config_dword(dev, 0x42, &pcic);
- if((pcic&2)==0)
+ pci_read_config_dword(dev, 0x4C, &pcic);
+ if((pcic&6)!=6)
{
- pcic |= 2;
- printk(KERN_WARNING "BIOS disabled PCI ordering compliance, so we enabled it again.\n");
- pci_write_config_dword(dev, 0x42, pcic);
+ pcic |= 6;
+ printk(KERN_WARNING "BIOS failed to enable PCI standards compliance, fixing this error.\n");
+ pci_write_config_dword(dev, 0x4C, pcic);
+ pci_read_config_dword(dev, 0x84, &pcic);
+ pcic |= (1<<23); /* Required in this mode */
+ pci_write_config_dword(dev, 0x84, pcic);
}
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)