[haiku-commits] haiku: hrev53922 - src/add-ons/kernel/drivers/audio/hda

  • From: Jérôme Duval <jerome.duval@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 28 Feb 2020 03:28:37 -0500 (EST)

hrev53922 adds 2 changesets to branch 'master'
old head: 48064fbc413adae0844b9199cc9e89a0086bb0bb
new head: 276e89f7560bf38e7926b2a32b38ba38f64c2ed8
overview: 
https://git.haiku-os.org/haiku/log/?qt=range&q=276e89f7560b+%5E48064fbc413a

----------------------------------------------------------------------------

8a1c964d4f74: hda: enable pci snooping on AMD non-hdmi.
  
  disable snooping on ATI non-hdmi.
  
  Change-Id: Ic62e8c7ae376a1e26646f88f308242eef3aa119e
  Reviewed-on: https://review.haiku-os.org/c/haiku/+/2287
  Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

276e89f7560b: hda: sync snoop quirk intel pci ids list based on alsa.
  
  Change-Id: I08d8e8aa05d03ce49cbf3937eccdb109b00e83f2
  Reviewed-on: https://review.haiku-os.org/c/haiku/+/2288
  Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

                                   [ Jérôme Duval <jerome.duval@xxxxxxxxx> ]

----------------------------------------------------------------------------

1 file changed, 21 insertions(+), 3 deletions(-)
.../kernel/drivers/audio/hda/hda_controller.cpp  | 24 +++++++++++++++++---

############################################################################

Commit:      8a1c964d4f7493b0e57392c00a7c5cd4eda180c4
URL:         https://git.haiku-os.org/haiku/commit/?id=8a1c964d4f74
Author:      Jérôme Duval <jerome.duval@xxxxxxxxx>
Date:        Thu Feb 27 20:07:25 2020 UTC

hda: enable pci snooping on AMD non-hdmi.

disable snooping on ATI non-hdmi.

Change-Id: Ic62e8c7ae376a1e26646f88f308242eef3aa119e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2287
Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

----------------------------------------------------------------------------

diff --git a/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp 
b/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
index 5bc08d9754..774a16dc95 100644
--- a/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
+++ b/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
@@ -34,7 +34,8 @@
 #define ALIGN(size, align)     (((size) + align - 1) & ~(align - 1))
 
 
-#define PCI_VENDOR_AMD                 0x1002
+#define PCI_VENDOR_ATI                 0x1002
+#define PCI_VENDOR_AMD                 0x1022
 #define PCI_VENDOR_CREATIVE            0x1102
 #define PCI_VENDOR_INTEL               0x8086
 #define PCI_VENDOR_NVIDIA              0x10de
@@ -81,9 +82,15 @@ static const struct {
        { PCI_VENDOR_INTEL, 0xa171, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0xa2f0, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0xa348, HDA_QUIRK_SNOOP },
-       // Enable snooping for ATI and Nvidia, right now for all their 
hda-devices,
+       { PCI_VENDOR_ATI, 0x437b, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_ATI, 0x4383, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_AMD, 0x157a, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_AMD, 0x780d, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_AMD, 0x1457, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_AMD, 0x1487, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_AMD, 0x15e3, HDA_QUIRK_SNOOP },
+       // Enable snooping for Nvidia, right now for all their hda-devices,
        // but only based on guessing.
-       { PCI_VENDOR_AMD, PCI_ALL_DEVICES, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_NVIDIA, PCI_ALL_DEVICES, HDA_QUIRK_SNOOP | HDA_QUIRK_NO_MSI
                | HDA_QUIRK_NO_CORBRP_RESET_ACK },
        { PCI_VENDOR_CREATIVE, 0x0010, HDA_QUIRK_NO_MSI },
@@ -1071,6 +1078,7 @@ hda_hw_init(hda_controller* controller)
                        }
 
                        case PCI_VENDOR_AMD:
+                       case PCI_VENDOR_ATI:
                        {
                                controller->dma_snooping = 
update_pci_register(controller,
                                        ATI_HDA_MISC_CNTR2, 
ATI_HDA_MISC_CNTR2_MASK,

############################################################################

Revision:    hrev53922
Commit:      276e89f7560bf38e7926b2a32b38ba38f64c2ed8
URL:         https://git.haiku-os.org/haiku/commit/?id=276e89f7560b
Author:      Jérôme Duval <jerome.duval@xxxxxxxxx>
Date:        Thu Feb 27 20:40:05 2020 UTC

hda: sync snoop quirk intel pci ids list based on alsa.

Change-Id: I08d8e8aa05d03ce49cbf3937eccdb109b00e83f2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2288
Reviewed-by: Jérôme Duval <jerome.duval@xxxxxxxxx>

----------------------------------------------------------------------------

diff --git a/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp 
b/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
index 774a16dc95..f778a9ef8d 100644
--- a/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
+++ b/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
@@ -52,6 +52,8 @@ static const struct {
        uint32 vendor_id, device_id;
        uint32 quirks;
 } kControllerQuirks[] = {
+       { PCI_VENDOR_INTEL, 0x02c8, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0x06c8, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x080a, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x0a0c, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x0c0c, HDA_QUIRK_SNOOP },
@@ -64,8 +66,12 @@ static const struct {
        { PCI_VENDOR_INTEL, 0x2284, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x3198, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x34c8, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0x38c8, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x3b56, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x3b57, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0x4b55, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0x4d55, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0x4dc8, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x5a98, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x811b, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x8c20, HDA_QUIRK_SNOOP },
@@ -78,10 +84,14 @@ static const struct {
        { PCI_VENDOR_INTEL, 0x9d70, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x9d71, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0x9dc8, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0xa0c8, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0xa170, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0xa171, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0xa1f0, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0xa270, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0xa2f0, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_INTEL, 0xa348, HDA_QUIRK_SNOOP },
+       { PCI_VENDOR_INTEL, 0xa3f0, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_ATI, 0x437b, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_ATI, 0x4383, HDA_QUIRK_SNOOP },
        { PCI_VENDOR_AMD, 0x157a, HDA_QUIRK_SNOOP },


Other related posts:

  • » [haiku-commits] haiku: hrev53922 - src/add-ons/kernel/drivers/audio/hda - Jérôme Duval