summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Smith <brad@cvs.openbsd.org>2008-10-10 22:40:23 +0000
committerBrad Smith <brad@cvs.openbsd.org>2008-10-10 22:40:23 +0000
commit3ad13bc361dd6c334cb54cbd4090ff84b38c81cf (patch)
tree4792cf901c0caf7dcfd37e299f9e39604ebcacf2
parentda51482d4777ad7b2900fa5fbeb87df047f50f02 (diff)
Enable PCIe snooping on the remaining ATI/NVIDIA chipsets.
Fixes clicking and other noise related issues. ok ratchov@
-rw-r--r--sys/dev/pci/azalia.c24
1 files changed, 23 insertions, 1 deletions
diff --git a/sys/dev/pci/azalia.c b/sys/dev/pci/azalia.c
index a00295d8294..41d30855262 100644
--- a/sys/dev/pci/azalia.c
+++ b/sys/dev/pci/azalia.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: azalia.c,v 1.56 2008/10/10 14:00:46 jakemsr Exp $ */
+/* $OpenBSD: azalia.c,v 1.57 2008/10/10 22:40:22 brad Exp $ */
/* $NetBSD: azalia.c,v 1.20 2006/05/07 08:31:44 kent Exp $ */
/*-
@@ -426,6 +426,7 @@ azalia_pci_attach(struct device *parent, struct device *self, void *aux)
/* enable PCIe snoop */
switch (PCI_PRODUCT(pa->pa_id)) {
+ case PCI_PRODUCT_ATI_SB450_HDA:
case PCI_PRODUCT_ATI_SBX00_HDA:
reg = azalia_pci_read(pa->pa_pc, pa->pa_tag, ATI_PCIE_SNOOP_REG);
reg &= ATI_PCIE_SNOOP_MASK;
@@ -433,6 +434,27 @@ azalia_pci_attach(struct device *parent, struct device *self, void *aux)
azalia_pci_write(pa->pa_pc, pa->pa_tag, ATI_PCIE_SNOOP_REG, reg);
break;
case PCI_PRODUCT_NVIDIA_MCP51_HDA:
+ case PCI_PRODUCT_NVIDIA_MCP55_HDA:
+ case PCI_PRODUCT_NVIDIA_MCP61_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP61_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP65_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP65_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP67_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP67_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP73_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP73_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP77_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP77_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP77_HDA_3:
+ case PCI_PRODUCT_NVIDIA_MCP77_HDA_4:
+ case PCI_PRODUCT_NVIDIA_MCP79_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP79_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP79_HDA_3:
+ case PCI_PRODUCT_NVIDIA_MCP79_HDA_4:
+ case PCI_PRODUCT_NVIDIA_MCP7B_HDA_1:
+ case PCI_PRODUCT_NVIDIA_MCP7B_HDA_2:
+ case PCI_PRODUCT_NVIDIA_MCP7B_HDA_3:
+ case PCI_PRODUCT_NVIDIA_MCP7B_HDA_4:
reg = azalia_pci_read(pa->pa_pc, pa->pa_tag, NVIDIA_PCIE_SNOOP_REG);
reg &= NVIDIA_PCIE_SNOOP_MASK;
reg |= NVIDIA_PCIE_SNOOP_ENABLE;