diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-21 18:58:35 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-21 18:58:35 -0400 |
commit | bda0c0afa7a694bb1459fd023515aca681e4d79a (patch) | |
tree | cd8b9d9811463de2065cbe79d59689082d6c53cf /drivers/pci/quirks.c | |
parent | 904e0ab54b7591b9cb01cfc0dbbedcc8bc0d949b (diff) | |
parent | af40b485ea2d957ae2f237ab0e33539ae8f29562 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6: (42 commits)
PCI: Change PCI subsystem MAINTAINER
PCI: pci-iommu-iotlb-flushing-speedup
PCI: pci_setup_bridge() mustn't be __devinit
PCI: pci_bus_size_cardbus() mustn't be __devinit
PCI: pci_scan_device() mustn't be __devinit
PCI: pci_alloc_child_bus() mustn't be __devinit
PCI: replace remaining __FUNCTION__ occurrences
PCI: Hotplug: fakephp: Return success, not ENODEV, when bus rescan is triggered
PCI: Hotplug: Fix leaks in IBM Hot Plug Controller Driver - ibmphp_init_devno()
PCI: clean up resource alignment management
PCI: aerdrv_acpi.c: remove unneeded NULL check
PCI: Update VIA CX700 quirk
PCI: Expose PCI VPD through sysfs
PCI: iommu: iotlb flushing
PCI: simplify quirk debug output
PCI: iova RB tree setup tweak
PCI: parisc: use generic pci_enable_resources()
PCI: ppc: use generic pci_enable_resources()
PCI: powerpc: use generic pci_enable_resources()
PCI: ia64: use generic pci_enable_resources()
...
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 | } |