summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Nagy <robert@cvs.openbsd.org>2020-10-22 18:11:14 +0000
committerRobert Nagy <robert@cvs.openbsd.org>2020-10-22 18:11:14 +0000
commitac30548bf03cf4280a3976edf2de470abfd8a0c9 (patch)
treebe6d373b7923e3f34431b6ca0f8d57a9b2835c86
parent454d7afd4222848e43013384b3d875ba5492f80a (diff)
add support for AMD 17h/3xh HD Audio and the ALC887 codec
ok deraadt@
-rw-r--r--sys/dev/pci/azalia_codec.c6
-rw-r--r--sys/dev/pci/pcidevs3
-rw-r--r--sys/dev/pci/pcidevs.h1
-rw-r--r--sys/dev/pci/pcidevs_data.h4
4 files changed, 12 insertions, 2 deletions
diff --git a/sys/dev/pci/azalia_codec.c b/sys/dev/pci/azalia_codec.c
index 33833d2f8ea..2c520a9a2c9 100644
--- a/sys/dev/pci/azalia_codec.c
+++ b/sys/dev/pci/azalia_codec.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: azalia_codec.c,v 1.178 2019/10/14 02:04:35 jcs Exp $ */
+/* $OpenBSD: azalia_codec.c,v 1.179 2020/10/22 18:11:13 robert Exp $ */
/* $NetBSD: azalia_codec.c,v 1.8 2006/05/10 11:17:27 kent Exp $ */
/*-
@@ -222,6 +222,10 @@ azalia_codec_init_vtbl(codec_t *this)
this->subid == 0x00a0106b)
this->qrks |= AZ_QRK_WID_OVREF50;
break;
+ case 0x10ec0887:
+ this->name = "Realtek ALC887";
+ this->qrks |= AZ_QRK_WID_CDIN_1C | AZ_QRK_WID_BEEP_1D;
+ break;
case 0x10ec0888:
this->name = "Realtek ALC888";
this->qrks |= AZ_QRK_WID_CDIN_1C | AZ_QRK_WID_BEEP_1D;
diff --git a/sys/dev/pci/pcidevs b/sys/dev/pci/pcidevs
index 04be8a6448c..5a41d7eb6a7 100644
--- a/sys/dev/pci/pcidevs
+++ b/sys/dev/pci/pcidevs
@@ -1,4 +1,4 @@
-$OpenBSD: pcidevs,v 1.1939 2020/10/07 11:14:59 jsg Exp $
+$OpenBSD: pcidevs,v 1.1940 2020/10/22 18:11:13 robert Exp $
/* $NetBSD: pcidevs,v 1.30 1997/06/24 06:20:24 thorpej Exp $ */
/*
@@ -751,6 +751,7 @@ product AMD 17_PCIE_4 0x1470 17h PCIE
product AMD 17_PCIE_5 0x1471 17h PCIE
product AMD 17_3X_RC 0x1480 17h/3xh Root Complex
product AMD 17_3X_CCP 0x1486 17h/3xh Crypto
+product AMD 17_3X_HDA 0x1487 17h/3xh HD Audio
product AMD 14_HB 0x1510 14h Host
product AMD 14_PCIE_1 0x1512 14h PCIE
product AMD 14_PCIE_2 0x1513 14h PCIE
diff --git a/sys/dev/pci/pcidevs.h b/sys/dev/pci/pcidevs.h
index e5f74e84555..d2983737588 100644
--- a/sys/dev/pci/pcidevs.h
+++ b/sys/dev/pci/pcidevs.h
@@ -756,6 +756,7 @@
#define PCI_PRODUCT_AMD_17_PCIE_5 0x1471 /* 17h PCIE */
#define PCI_PRODUCT_AMD_17_3X_RC 0x1480 /* 17h/3xh Root Complex */
#define PCI_PRODUCT_AMD_17_3X_CCP 0x1486 /* 17h/3xh Crypto */
+#define PCI_PRODUCT_AMD_17_3X_HDA 0x1487 /* 17h/3xh HD Audio */
#define PCI_PRODUCT_AMD_14_HB 0x1510 /* 14h Host */
#define PCI_PRODUCT_AMD_14_PCIE_1 0x1512 /* 14h PCIE */
#define PCI_PRODUCT_AMD_14_PCIE_2 0x1513 /* 14h PCIE */
diff --git a/sys/dev/pci/pcidevs_data.h b/sys/dev/pci/pcidevs_data.h
index adf7a6207ab..c2edac5dfdc 100644
--- a/sys/dev/pci/pcidevs_data.h
+++ b/sys/dev/pci/pcidevs_data.h
@@ -1328,6 +1328,10 @@ static const struct pci_known_product pci_known_products[] = {
"17h/3xh Crypto",
},
{
+ PCI_VENDOR_AMD, PCI_PRODUCT_AMD_17_3X_HDA,
+ "17h/3xh HD Audio",
+ },
+ {
PCI_VENDOR_AMD, PCI_PRODUCT_AMD_14_HB,
"14h Host",
},