aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_intel.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-09-28 07:14:04 -0400
committerTakashi Iwai <tiwai@suse.de>2009-09-28 07:15:30 -0400
commit71623855e20c3febebb5fa60528cde2592678bd5 (patch)
tree158762f28ed00f9e1426b918a2331cd6031d0dca /sound/pci/hda/hda_intel.c
parent08d7a253e40db5a3b082bd7409b5f2c4f2184e59 (diff)
ALSA: hda - Enable MSI as default
Since the recent kernel can handle MSI properly on non-Intel platforms, let's enable MSI as default. If any borken device is found, we can add the quirk entry to the list, which is currently empty. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_intel.c')
-rw-r--r--sound/pci/hda/hda_intel.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index c9ad182e1b4b..d0effa3563e2 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -60,7 +60,7 @@ static int bdl_pos_adj[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = -1};
60static int probe_mask[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = -1}; 60static int probe_mask[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = -1};
61static int probe_only[SNDRV_CARDS]; 61static int probe_only[SNDRV_CARDS];
62static int single_cmd; 62static int single_cmd;
63static int enable_msi; 63static int enable_msi = -1;
64#ifdef CONFIG_SND_HDA_PATCH_LOADER 64#ifdef CONFIG_SND_HDA_PATCH_LOADER
65static char *patch[SNDRV_CARDS]; 65static char *patch[SNDRV_CARDS];
66#endif 66#endif
@@ -2300,11 +2300,9 @@ static void __devinit check_probe_mask(struct azx *chip, int dev)
2300} 2300}
2301 2301
2302/* 2302/*
2303 * white-list for enable_msi 2303 * white/black-list for enable_msi
2304 */ 2304 */
2305static struct snd_pci_quirk msi_white_list[] __devinitdata = { 2305static struct snd_pci_quirk msi_black_list[] __devinitdata = {
2306 SND_PCI_QUIRK(0x103c, 0x30f7, "HP Pavilion dv4t-1300", 1),
2307 SND_PCI_QUIRK(0x103c, 0x3607, "HP Compa CQ40", 1),
2308 {} 2306 {}
2309}; 2307};
2310 2308
@@ -2312,10 +2310,12 @@ static void __devinit check_msi(struct azx *chip)
2312{ 2310{
2313 const struct snd_pci_quirk *q; 2311 const struct snd_pci_quirk *q;
2314 2312
2315 chip->msi = enable_msi; 2313 if (enable_msi >= 0) {
2316 if (chip->msi) 2314 chip->msi = !!enable_msi;
2317 return; 2315 return;
2318 q = snd_pci_quirk_lookup(chip->pci, msi_white_list); 2316 }
2317 chip->msi = 1; /* enable MSI as default */
2318 q = snd_pci_quirk_lookup(chip->pci, msi_black_list);
2319 if (q) { 2319 if (q) {
2320 printk(KERN_INFO 2320 printk(KERN_INFO
2321 "hda_intel: msi for device %04x:%04x set to %d\n", 2321 "hda_intel: msi for device %04x:%04x set to %d\n",