Re: [PATCH] ALSA: hda-intel - Disable MSI support by default

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please try the patch about using pci_intx.

it could use msi.

YH
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index e35cfd3..88b99ab 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -547,6 +547,7 @@ static unsigned int azx_rirb_get_respons
 		chip->msi = 0;
 		if (azx_acquire_irq(chip, 1) < 0)
 			return -1;
+		pci_intx(chip->pci, 1);
 		goto again;
 	}
 
@@ -1435,11 +1436,16 @@ static int azx_resume(struct pci_dev *pc
 		return -EIO;
 	}
 	pci_set_master(pci);
-	if (chip->msi)
+	if (chip->msi) {
+		pci_intx(pci, 0);
 		if (pci_enable_msi(pci) < 0)
 			chip->msi = 0;
+	}
 	if (azx_acquire_irq(chip, 1) < 0)
 		return -EIO;
+
+	if (!chip->msi) 
+		pci_intx(pci, 1);
 	azx_init_chip(chip);
 	snd_hda_resume(chip->bus);
 	snd_power_change_state(card, SNDRV_CTL_POWER_D0);
@@ -1531,7 +1537,8 @@ static int __devinit azx_create(struct s
 	chip->pci = pci;
 	chip->irq = -1;
 	chip->driver_type = driver_type;
-	chip->msi = enable_msi;
+//	chip->msi = enable_msi;
+	chip->msi = 1;
 
 	chip->position_fix = position_fix;
 	chip->single_cmd = single_cmd;
@@ -1561,14 +1568,19 @@ #endif
 		goto errout;
 	}
 
-	if (chip->msi)
+	if (chip->msi) {
+		pci_intx(pci, 0);
 		if (pci_enable_msi(pci) < 0)
 			chip->msi = 0;
+	}
 
 	if (azx_acquire_irq(chip, 0) < 0) {
 		err = -EBUSY;
 		goto errout;
 	}
+	
+	if(!chip->msi)
+		pci_intx(pci, 1);
 
 	pci_set_master(pci);
 	synchronize_irq(chip->irq);

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux