ac97_codec.c (87d61c290b5de63cc18ed5ec8103e30fe297373e) ac97_codec.c (69ad07cf98d0ef65cac67bac2ea4381bb499bea8)
1/*
2 * Copyright (c) by Jaroslav Kysela <perex@suse.cz>
3 * Universal interface for Audio Codec '97
4 *
5 * For more details look to AC '97 component specification revision 2.2
6 * by Intel Corporation (http://developer.intel.com).
7 *
8 *

--- 2528 unchanged lines hidden (view full) ---

2537 /* quirk overriden? */
2538 if (override && strcmp(override, "-1") && strcmp(override, "default")) {
2539 result = apply_quirk_str(ac97, override);
2540 if (result < 0)
2541 snd_printk(KERN_ERR "applying quirk type %s failed (%d)\n", override, result);
2542 return result;
2543 }
2544
1/*
2 * Copyright (c) by Jaroslav Kysela <perex@suse.cz>
3 * Universal interface for Audio Codec '97
4 *
5 * For more details look to AC '97 component specification revision 2.2
6 * by Intel Corporation (http://developer.intel.com).
7 *
8 *

--- 2528 unchanged lines hidden (view full) ---

2537 /* quirk overriden? */
2538 if (override && strcmp(override, "-1") && strcmp(override, "default")) {
2539 result = apply_quirk_str(ac97, override);
2540 if (result < 0)
2541 snd_printk(KERN_ERR "applying quirk type %s failed (%d)\n", override, result);
2542 return result;
2543 }
2544
2545 for (; quirk->vendor; quirk++) {
2546 if (quirk->vendor != ac97->subsystem_vendor)
2545 for (; quirk->subvendor; quirk++) {
2546 if (quirk->subvendor != ac97->subsystem_vendor)
2547 continue;
2547 continue;
2548 if ((! quirk->mask && quirk->device == ac97->subsystem_device) ||
2549 quirk->device == (quirk->mask & ac97->subsystem_device)) {
2548 if ((! quirk->mask && quirk->subdevice == ac97->subsystem_device) ||
2549 quirk->subdevice == (quirk->mask & ac97->subsystem_device)) {
2550 if (quirk->codec_id && quirk->codec_id != ac97->id)
2551 continue;
2552 snd_printdd("ac97 quirk for %s (%04x:%04x)\n", quirk->name, ac97->subsystem_vendor, ac97->subsystem_device);
2553 result = apply_quirk(ac97, quirk->type);
2554 if (result < 0)
2555 snd_printk(KERN_ERR "applying quirk type %d for %s failed (%d)\n", quirk->type, quirk->name, result);
2556 return result;
2557 }

--- 43 unchanged lines hidden ---
2550 if (quirk->codec_id && quirk->codec_id != ac97->id)
2551 continue;
2552 snd_printdd("ac97 quirk for %s (%04x:%04x)\n", quirk->name, ac97->subsystem_vendor, ac97->subsystem_device);
2553 result = apply_quirk(ac97, quirk->type);
2554 if (result < 0)
2555 snd_printk(KERN_ERR "applying quirk type %d for %s failed (%d)\n", quirk->type, quirk->name, result);
2556 return result;
2557 }

--- 43 unchanged lines hidden ---