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

  • From: marcusoverhagen@xxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Mon, 19 Nov 2012 17:40:23 +0100 (CET)

hrev44866 adds 1 changeset to branch 'master'
old head: b0f9ebaca53fb5ff079d1330f4dccfce6687e4a5
new head: 75384e609293eebaaf9c60dc5c2690bc6e95d74a
overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=75384e6+%5Eb0f9eba

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

75384e6: Enable PCI memory access and interrupt

                                  [ Marcus Overhagen <marcus@xxxxxxxxxxxx> ]

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

Revision:    hrev44866
Commit:      75384e609293eebaaf9c60dc5c2690bc6e95d74a
URL:         http://cgit.haiku-os.org/haiku/commit/?id=75384e6
Author:      Marcus Overhagen <marcus@xxxxxxxxxxxx>
Date:        Mon Nov 19 16:36:14 2012 UTC

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

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

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

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 2f281c3..cdebc55 100644
--- a/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
+++ b/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
@@ -869,11 +869,20 @@ hda_hw_init(hda_controller* controller)
                controller->pci_info.device, controller->pci_info.function,
                PCI_command, 2);
        if (!(cmd & PCI_command_master)) {
-               (gPci->write_pci_config)(controller->pci_info.bus,
-                       controller->pci_info.device, 
controller->pci_info.function,
-                               PCI_command, 2, cmd | PCI_command_master);
                dprintf("hda: enabling PCI bus mastering\n");
+               cmd |= PCI_command_master;
        }
+       if (!(cmd & PCI_command_memory)) {
+               dprintf("hda: enabling PCI memory access\n");
+               cmd |= PCI_command_memory;
+       }
+       if ((cmd & PCI_command_int_disable)) {
+               dprintf("hda: enabling PCI interrupts\n");
+               cmd &= ~PCI_command_int_disable;
+       }
+       (gPci->write_pci_config)(controller->pci_info.bus,
+               controller->pci_info.device, controller->pci_info.function,
+                       PCI_command, 2, cmd);
 
        if (get_module(B_PCI_X86_MODULE_NAME, (module_info**)&sPCIx86Module)
                        != B_OK)


Other related posts:

  • » [haiku-commits] haiku: hrev44866 - src/add-ons/kernel/drivers/audio/hda - marcusoverhagen