History

Merge tag 'sound-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull more sound fixes from Takashi Iwai: "The fixes for random bugs that have been reported lately in the game: a few fixes in ASoC dpam and wm_hubs bugs spotted by Coverity, a one-liner HD-audio fixup, and a fix for Oops with DPCM. They are not so critically urgent bugs, but all small and safe" * tag 'sound-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: fix oops in snd_pcm_info() caused by ASoC DPCM ASoC: wm_hubs: Add missing break in hp_supply_event() ALSA: hda - Add a fixup for ASUS N76VZ ASoC: dapm: Return -ENOMEM in snd_soc_dapm_new_dai_widgets() ASoC: dapm: Fix source list debugfs outputs

Linus Torvalds committed 13 years ago

Commit f9adfbf2 parents 68e952d a4461f44 files · +9 −1Browse files

Unified · Split

4 files
  1. sound/core/pcm.c +4 −0
  2. sound/pci/hda/patch_realtek.c +1 −0
  3. sound/soc/codecs/wm_hubs.c +1 −0
  4. sound/soc/soc-dapm.c +3 −1
sound/core/pcm.c+4−0
@@ -49,6 +49,8 @@ static struct snd_pcm *snd_pcm_get(struct snd_card *card, int device) · 48 unmodified lines
4949 struct snd_pcm *pcm;
5050
5151 list_for_each_entry(pcm, &snd_pcm_devices, list) {
52+ if (pcm->internal)
53+ continue;
5254 if (pcm->card == card && pcm->device == device)
5355 return pcm;
5456 }
@@ -60,6 +62,8 @@ static int snd_pcm_next(struct snd_card *card, int device) · 5 unmodified lines
6062 struct snd_pcm *pcm;
6163
6264 list_for_each_entry(pcm, &snd_pcm_devices, list) {
65+ if (pcm->internal)
66+ continue;
6367 if (pcm->card == card && pcm->device > device)
6468 return pcm->device;
6569 else if (pcm->card->number > card->number)
sound/pci/hda/patch_realtek.c+1−0
@@ -4623,6 +4623,7 @@ static const struct snd_pci_quirk alc662_fixup_tbl[] = { · 4622 unmodified lines
46234623 SND_PCI_QUIRK(0x1028, 0x05db, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
46244624 SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800),
46254625 SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ", ALC662_FIXUP_ASUS_MODE4),
4626+ SND_PCI_QUIRK(0x1043, 0x1bf3, "ASUS N76VZ", ALC662_FIXUP_ASUS_MODE4),
46264627 SND_PCI_QUIRK(0x1043, 0x8469, "ASUS mobo", ALC662_FIXUP_NO_JACK_DETECT),
46274628 SND_PCI_QUIRK(0x105b, 0x0cd6, "Foxconn", ALC662_FIXUP_ASUS_MODE2),
46284629 SND_PCI_QUIRK(0x144d, 0xc051, "Samsung R720", ALC662_FIXUP_IDEAPAD),
sound/soc/codecs/wm_hubs.c+1−0
@@ -530,6 +530,7 @@ static int hp_supply_event(struct snd_soc_dapm_widget *w, · 529 unmodified lines
530530 hubs->hp_startup_mode);
531531 break;
532532 }
533+ break;
533534
534535 case SND_SOC_DAPM_PRE_PMD:
535536 snd_soc_update_bits(codec, WM8993_CHARGE_PUMP_1,
sound/soc/soc-dapm.c+3−1
@@ -1949,7 +1949,7 @@ static ssize_t dapm_widget_power_read_file(struct file *file, · 1948 unmodified lines
19491949 w->active ? "active" : "inactive");
19501950
19511951 list_for_each_entry(p, &w->sources, list_sink) {
1952− if (p->connected && !p->connected(w, p->sink))
1952+ if (p->connected && !p->connected(w, p->source))
19531953 continue;
19541954
19551955 if (p->connect)
@@ -3495,6 +3495,7 @@ int snd_soc_dapm_new_dai_widgets(struct snd_soc_dapm_context *dapm, · 1539 unmodified lines
34953495 if (!w) {
34963496 dev_err(dapm->dev, "ASoC: Failed to create %s widget\n",
34973497 dai->driver->playback.stream_name);
3498+ return -ENOMEM;
34983499 }
34993500
35003501 w->priv = dai;
@@ -3513,6 +3514,7 @@ int snd_soc_dapm_new_dai_widgets(struct snd_soc_dapm_context *dapm, · 12 unmodified lines
35133514 if (!w) {
35143515 dev_err(dapm->dev, "ASoC: Failed to create %s widget\n",
35153516 dai->driver->capture.stream_name);
3517+ return -ENOMEM;
35163518 }
35173519
35183520 w->priv = dai;