diff options
Diffstat (limited to 'drivers/pci/quirks.c')
-rw-r--r-- | drivers/pci/quirks.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index e887aa45c9cd..afd914ebe215 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c | |||
@@ -1502,8 +1502,8 @@ static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_f | |||
1502 | if ((f->vendor == dev->vendor || f->vendor == (u16) PCI_ANY_ID) && | 1502 | if ((f->vendor == dev->vendor || f->vendor == (u16) PCI_ANY_ID) && |
1503 | (f->device == dev->device || f->device == (u16) PCI_ANY_ID)) { | 1503 | (f->device == dev->device || f->device == (u16) PCI_ANY_ID)) { |
1504 | #ifdef DEBUG | 1504 | #ifdef DEBUG |
1505 | dev_dbg(&dev->dev, "calling quirk 0x%p", f->hook); | 1505 | dev_dbg(&dev->dev, "calling "); |
1506 | print_fn_descriptor_symbol(": %s()\n", | 1506 | print_fn_descriptor_symbol("%s()\n", |
1507 | (unsigned long) f->hook); | 1507 | (unsigned long) f->hook); |
1508 | #endif | 1508 | #endif |
1509 | f->hook(dev); | 1509 | f->hook(dev); |
@@ -1648,13 +1648,24 @@ static void __devinit quirk_via_cx700_pci_parking_caching(struct pci_dev *dev) | |||
1648 | /* Turn off PCI Bus Parking */ | 1648 | /* Turn off PCI Bus Parking */ |
1649 | pci_write_config_byte(dev, 0x76, b ^ 0x40); | 1649 | pci_write_config_byte(dev, 0x76, b ^ 0x40); |
1650 | 1650 | ||
1651 | dev_info(&dev->dev, | ||
1652 | "Disabling VIA CX700 PCI parking\n"); | ||
1653 | } | ||
1654 | } | ||
1655 | |||
1656 | if (pci_read_config_byte(dev, 0x72, &b) == 0) { | ||
1657 | if (b != 0) { | ||
1651 | /* Turn off PCI Master read caching */ | 1658 | /* Turn off PCI Master read caching */ |
1652 | pci_write_config_byte(dev, 0x72, 0x0); | 1659 | pci_write_config_byte(dev, 0x72, 0x0); |
1660 | |||
1661 | /* Set PCI Master Bus time-out to "1x16 PCLK" */ | ||
1653 | pci_write_config_byte(dev, 0x75, 0x1); | 1662 | pci_write_config_byte(dev, 0x75, 0x1); |
1663 | |||
1664 | /* Disable "Read FIFO Timer" */ | ||
1654 | pci_write_config_byte(dev, 0x77, 0x0); | 1665 | pci_write_config_byte(dev, 0x77, 0x0); |
1655 | 1666 | ||
1656 | dev_info(&dev->dev, | 1667 | dev_info(&dev->dev, |
1657 | "Disabling VIA CX700 PCI parking/caching\n"); | 1668 | "Disabling VIA CX700 PCI caching\n"); |
1658 | } | 1669 | } |
1659 | } | 1670 | } |
1660 | } | 1671 | } |