diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-22 14:59:51 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-22 14:59:51 -0400 |
commit | 59ef7a83f1127038a433464597df02e2dc9540e7 (patch) | |
tree | 725d262fc2e68eb9c592d76265f878cec73f8f2d /drivers/pci/quirks.c | |
parent | 5165aece0efac6574fc3e32b6f1c2a964820d1c6 (diff) | |
parent | 2af5066f664cb011cf17d2e4414491fe24597e07 (diff) |
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6
* 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (74 commits)
PCI: make msi_free_irqs() to use msix_mask_irq() instead of open coded write
PCI: Fix the NIU MSI-X problem in a better way
PCI ASPM: remove get_root_port_link
PCI ASPM: cleanup pcie_aspm_sanity_check
PCI ASPM: remove has_switch field
PCI ASPM: cleanup calc_Lx_latency
PCI ASPM: cleanup pcie_aspm_get_cap_device
PCI ASPM: cleanup clkpm checks
PCI ASPM: cleanup __pcie_aspm_check_state_one
PCI ASPM: cleanup initialization
PCI ASPM: cleanup change input argument of aspm functions
PCI ASPM: cleanup misc in struct pcie_link_state
PCI ASPM: cleanup clkpm state in struct pcie_link_state
PCI ASPM: cleanup latency field in struct pcie_link_state
PCI ASPM: cleanup aspm state field in struct pcie_link_state
PCI ASPM: fix typo in struct pcie_link_state
PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS
PCI: remove redundant __msi_set_enable()
PCI PM: consistently use type bool for wake enable variable
x86/ACPI: Correct maximum allowed _CRS returned resources and warn if exceeded
...
Diffstat (limited to 'drivers/pci/quirks.c')
-rw-r--r-- | drivers/pci/quirks.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index bd4253f93d5a..56552d74abea 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c | |||
@@ -1133,6 +1133,7 @@ static void __init asus_hides_smbus_hostbridge(struct pci_dev *dev) | |||
1133 | switch (dev->subsystem_device) { | 1133 | switch (dev->subsystem_device) { |
1134 | case 0x1751: /* M2N notebook */ | 1134 | case 0x1751: /* M2N notebook */ |
1135 | case 0x1821: /* M5N notebook */ | 1135 | case 0x1821: /* M5N notebook */ |
1136 | case 0x1897: /* A6L notebook */ | ||
1136 | asus_hides_smbus = 1; | 1137 | asus_hides_smbus = 1; |
1137 | } | 1138 | } |
1138 | else if (dev->device == PCI_DEVICE_ID_INTEL_82855PM_HB) | 1139 | else if (dev->device == PCI_DEVICE_ID_INTEL_82855PM_HB) |
@@ -1163,6 +1164,7 @@ static void __init asus_hides_smbus_hostbridge(struct pci_dev *dev) | |||
1163 | switch (dev->subsystem_device) { | 1164 | switch (dev->subsystem_device) { |
1164 | case 0x12bc: /* HP D330L */ | 1165 | case 0x12bc: /* HP D330L */ |
1165 | case 0x12bd: /* HP D530 */ | 1166 | case 0x12bd: /* HP D530 */ |
1167 | case 0x006a: /* HP Compaq nx9500 */ | ||
1166 | asus_hides_smbus = 1; | 1168 | asus_hides_smbus = 1; |
1167 | } | 1169 | } |
1168 | else if (dev->device == PCI_DEVICE_ID_INTEL_82875_HB) | 1170 | else if (dev->device == PCI_DEVICE_ID_INTEL_82875_HB) |
@@ -2016,6 +2018,28 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_BROADCOM, | |||
2016 | PCI_DEVICE_ID_NX2_5709S, | 2018 | PCI_DEVICE_ID_NX2_5709S, |
2017 | quirk_brcm_570x_limit_vpd); | 2019 | quirk_brcm_570x_limit_vpd); |
2018 | 2020 | ||
2021 | /* Originally in EDAC sources for i82875P: | ||
2022 | * Intel tells BIOS developers to hide device 6 which | ||
2023 | * configures the overflow device access containing | ||
2024 | * the DRBs - this is where we expose device 6. | ||
2025 | * http://www.x86-secret.com/articles/tweak/pat/patsecrets-2.htm | ||
2026 | */ | ||
2027 | static void __devinit quirk_unhide_mch_dev6(struct pci_dev *dev) | ||
2028 | { | ||
2029 | u8 reg; | ||
2030 | |||
2031 | if (pci_read_config_byte(dev, 0xF4, ®) == 0 && !(reg & 0x02)) { | ||
2032 | dev_info(&dev->dev, "Enabling MCH 'Overflow' Device\n"); | ||
2033 | pci_write_config_byte(dev, 0xF4, reg | 0x02); | ||
2034 | } | ||
2035 | } | ||
2036 | |||
2037 | DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82865_HB, | ||
2038 | quirk_unhide_mch_dev6); | ||
2039 | DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82875_HB, | ||
2040 | quirk_unhide_mch_dev6); | ||
2041 | |||
2042 | |||
2019 | #ifdef CONFIG_PCI_MSI | 2043 | #ifdef CONFIG_PCI_MSI |
2020 | /* Some chipsets do not support MSI. We cannot easily rely on setting | 2044 | /* Some chipsets do not support MSI. We cannot easily rely on setting |
2021 | * PCI_BUS_FLAGS_NO_MSI in its bus flags because there are actually | 2045 | * PCI_BUS_FLAGS_NO_MSI in its bus flags because there are actually |