lkml.org 
[lkml]   [2015]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [BUG, bisect] ALSA: hda - No sound output
At Fri, 29 May 2015 09:37:44 +0200,
Takashi Iwai wrote:
>
> At Fri, 29 May 2015 00:27:14 -0700,
> Jeremiah Mahler wrote:
> >
> > Takashi, all,
> >
> > On several of my machines there is no longer any sound output when
> > running the latest linux-next (20150528). Activity can be seen in a
> > mixer such as pavucontrol suggesting that there should be sound, but
> > both the speakers and head phones are silent.
> >
> > I have bisected the kernel and found that the following patch introduced
> > the bug.
> >
> > From 49fb18972581a781658a4637de76e6069ed5964e Mon Sep 17 00:00:00 2001
> > From: Takashi Iwai <tiwai@suse.de>
> > Date: Wed, 27 May 2015 08:37:19 +0200
> > Subject: [PATCH] ALSA: hda - Set stream_pm ops automatically by generic parser
> >
> > This allows user to test power_save_node feature via sysfs or patch
> > firmware even on the codecs that don't specify it. It'll also save a
> > few lines.
> >
> > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> > ---
> > sound/pci/hda/hda_generic.c | 5 ++++-
> > sound/pci/hda/patch_realtek.c | 1 -
> > sound/pci/hda/patch_sigmatel.c | 1 -
> > sound/pci/hda/patch_via.c | 1 -
> > 4 files changed, 4 insertions(+), 4 deletions(-)
>
> I still don't figure out why this breaks.
> Could you give alsa-info.sh output of the affected machine?

I think I found the culprit. Please try the patch below.


Takashi

---
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index ea3af38eee58..464168426465 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -5729,6 +5729,7 @@ static int patch_alc269(struct hda_codec *codec)
set_beep_amp(spec, spec->gen.mixer_nid, 0x04, HDA_INPUT);

codec->patch_ops = alc_patch_ops;
+ codec->patch_ops.stream_pm = snd_hda_gen_stream_pm;
#ifdef CONFIG_PM
codec->patch_ops.suspend = alc269_suspend;
codec->patch_ops.resume = alc269_resume;
diff --git a/sound/pci/hda/patch_via.c b/sound/pci/hda/patch_via.c
index 742087ef378f..31a95cca015d 100644
--- a/sound/pci/hda/patch_via.c
+++ b/sound/pci/hda/patch_via.c
@@ -472,6 +472,7 @@ static const struct hda_codec_ops via_patch_ops = {
.init = via_init,
.free = via_free,
.unsol_event = snd_hda_jack_unsol_event,
+ .stream_pm = snd_hda_gen_stream_pm,
#ifdef CONFIG_PM
.suspend = via_suspend,
.check_power_status = via_check_power_status,

\
 
 \ /
  Last update: 2015-05-29 10:21    [W:0.078 / U:1.540 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site