aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_intel.c
diff options
context:
space:
mode:
authorDavid Henningsson <david.henningsson@canonical.com>2010-10-04 06:02:14 -0400
committerTakashi Iwai <tiwai@suse.de>2010-10-12 07:05:02 -0400
commitbdd9ef24cd343c508ed93f1e08f30d4db595b754 (patch)
tree0d2a1de82a727b6d642c74eba70ccae862dfc78a /sound/pci/hda/hda_intel.c
parent6a92934d9e987b6363db3e6a08e17bc0f2078c5d (diff)
ALSA: HDA: Correctly apply position_fix quirks for ATI and VIA controllers
Position_fix quirks for specific machines now override the default position_fix behavior for all HDA controllers. BugLink: http://launchpad.net/bugs/465942 BugLink: http://launchpad.net/bugs/580749 BugLink: http://launchpad.net/bugs/587546 Signed-off-by: David Henningsson <david.henningsson@canonical.com> 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.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index 38b063eb80e9..5cbea85a6453 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -2315,14 +2315,6 @@ static int __devinit check_position_fix(struct azx *chip, int fix)
2315 return fix; 2315 return fix;
2316 } 2316 }
2317 2317
2318 /* Check VIA/ATI HD Audio Controller exist */
2319 switch (chip->driver_type) {
2320 case AZX_DRIVER_VIA:
2321 case AZX_DRIVER_ATI:
2322 /* Use link position directly, avoid any transfer problem. */
2323 return POS_FIX_VIACOMBO;
2324 }
2325
2326 q = snd_pci_quirk_lookup(chip->pci, position_fix_list); 2318 q = snd_pci_quirk_lookup(chip->pci, position_fix_list);
2327 if (q) { 2319 if (q) {
2328 printk(KERN_INFO 2320 printk(KERN_INFO
@@ -2331,6 +2323,15 @@ static int __devinit check_position_fix(struct azx *chip, int fix)
2331 q->value, q->subvendor, q->subdevice); 2323 q->value, q->subvendor, q->subdevice);
2332 return q->value; 2324 return q->value;
2333 } 2325 }
2326
2327 /* Check VIA/ATI HD Audio Controller exist */
2328 switch (chip->driver_type) {
2329 case AZX_DRIVER_VIA:
2330 case AZX_DRIVER_ATI:
2331 /* Use link position directly, avoid any transfer problem. */
2332 return POS_FIX_VIACOMBO;
2333 }
2334
2334 return POS_FIX_AUTO; 2335 return POS_FIX_AUTO;
2335} 2336}
2336 2337