diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-07-08 11:20:41 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-07-08 11:20:41 -0400 |
| commit | b9f399594d12e353dcb609c25219bdaa76c2a050 (patch) | |
| tree | 98328f0b47ce23634657004edcc7ae251da39352 | |
| parent | c77e9e68269bf50573ce130b5d95ff6e539dbcf8 (diff) | |
| parent | 7645054f181404e6a28c616b307c4d2562423a50 (diff) | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
ALSA: hda - Enable beep on Realtek codecs with PCI SSID override
ALSA: usb-audio - Add volume resolution quirk for some Logitech webcams
ALSA: hda - Add Macbook 5,2 quirk
ALSA: hda - Fix uninitialized variable
| -rw-r--r-- | sound/pci/hda/patch_realtek.c | 7 | ||||
| -rw-r--r-- | sound/usb/mixer.c | 13 |
2 files changed, 18 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index f1ce7d7f5aa3..ff614dd824c1 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
| @@ -1268,8 +1268,10 @@ static int alc_auto_parse_customize_define(struct hda_codec *codec) | |||
| 1268 | struct alc_spec *spec = codec->spec; | 1268 | struct alc_spec *spec = codec->spec; |
| 1269 | 1269 | ||
| 1270 | ass = codec->subsystem_id & 0xffff; | 1270 | ass = codec->subsystem_id & 0xffff; |
| 1271 | if (ass != codec->bus->pci->subsystem_device && (ass & 1)) | 1271 | if (ass != codec->bus->pci->subsystem_device && (ass & 1)) { |
| 1272 | spec->cdefine.enable_pcbeep = 1; /* assume always enabled */ | ||
| 1272 | goto do_sku; | 1273 | goto do_sku; |
| 1274 | } | ||
| 1273 | 1275 | ||
| 1274 | nid = 0x1d; | 1276 | nid = 0x1d; |
| 1275 | if (codec->vendor_id == 0x10ec0260) | 1277 | if (codec->vendor_id == 0x10ec0260) |
| @@ -2547,7 +2549,7 @@ static struct snd_kcontrol_new alc_beep_mixer[] = { | |||
| 2547 | static int alc_build_controls(struct hda_codec *codec) | 2549 | static int alc_build_controls(struct hda_codec *codec) |
| 2548 | { | 2550 | { |
| 2549 | struct alc_spec *spec = codec->spec; | 2551 | struct alc_spec *spec = codec->spec; |
| 2550 | struct snd_kcontrol *kctl; | 2552 | struct snd_kcontrol *kctl = NULL; |
| 2551 | struct snd_kcontrol_new *knew; | 2553 | struct snd_kcontrol_new *knew; |
| 2552 | int i, j, err; | 2554 | int i, j, err; |
| 2553 | unsigned int u; | 2555 | unsigned int u; |
| @@ -9486,6 +9488,7 @@ static struct snd_pci_quirk alc882_ssid_cfg_tbl[] = { | |||
| 9486 | SND_PCI_QUIRK(0x106b, 0x3e00, "iMac 24 Aluminum", ALC885_IMAC24), | 9488 | SND_PCI_QUIRK(0x106b, 0x3e00, "iMac 24 Aluminum", ALC885_IMAC24), |
| 9487 | SND_PCI_QUIRK(0x106b, 0x4900, "iMac 9,1 Aluminum", ALC885_IMAC91), | 9489 | SND_PCI_QUIRK(0x106b, 0x4900, "iMac 9,1 Aluminum", ALC885_IMAC91), |
| 9488 | SND_PCI_QUIRK(0x106b, 0x3f00, "Macbook 5,1", ALC885_MB5), | 9490 | SND_PCI_QUIRK(0x106b, 0x3f00, "Macbook 5,1", ALC885_MB5), |
| 9491 | SND_PCI_QUIRK(0x106b, 0x4a00, "Macbook 5,2", ALC885_MB5), | ||
| 9489 | /* FIXME: HP jack sense seems not working for MBP 5,1 or 5,2, | 9492 | /* FIXME: HP jack sense seems not working for MBP 5,1 or 5,2, |
| 9490 | * so apparently no perfect solution yet | 9493 | * so apparently no perfect solution yet |
| 9491 | */ | 9494 | */ |
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 6939d0f517d9..736d134cc03c 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c | |||
| @@ -1107,6 +1107,19 @@ static void build_feature_ctl(struct mixer_build *state, void *raw_desc, | |||
| 1107 | } | 1107 | } |
| 1108 | break; | 1108 | break; |
| 1109 | 1109 | ||
| 1110 | case USB_ID(0x046d, 0x0809): | ||
| 1111 | case USB_ID(0x046d, 0x0991): | ||
| 1112 | /* Most audio usb devices lie about volume resolution. | ||
| 1113 | * Most Logitech webcams have res = 384. | ||
| 1114 | * Proboly there is some logitech magic behind this number --fishor | ||
| 1115 | */ | ||
| 1116 | if (!strcmp(kctl->id.name, "Mic Capture Volume")) { | ||
| 1117 | snd_printk(KERN_INFO | ||
| 1118 | "set resolution quirk: cval->res = 384\n"); | ||
| 1119 | cval->res = 384; | ||
| 1120 | } | ||
| 1121 | break; | ||
| 1122 | |||
| 1110 | } | 1123 | } |
| 1111 | 1124 | ||
| 1112 | snd_printdd(KERN_INFO "[%d] FU [%s] ch = %d, val = %d/%d/%d\n", | 1125 | snd_printdd(KERN_INFO "[%d] FU [%s] ch = %d, val = %d/%d/%d\n", |
