linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: "Mihai Donțu" <mihai.dontu@gmail.com>
Cc: Jonathan McDowell <noodles@earth.li>,
	alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org
Subject: Re: Audio crackles with 4.1-rc1
Date: Fri, 12 Jun 2015 09:00:06 +0200	[thread overview]
Message-ID: <s5hy4jp5s3t.wl-tiwai@suse.de> (raw)
In-Reply-To: <20150612012318.6e3482ed@mdontu-l>

At Fri, 12 Jun 2015 01:23:18 +0300,
Mihai Donțu wrote:
> 
> On Thu, 11 Jun 2015 07:01:13 +0200 Takashi Iwai wrote:
> > At Thu, 11 Jun 2015 01:12:36 +0300, Mihai Donțu wrote:
> > > On Wed, 10 Jun 2015 20:23:01 +0200 Takashi Iwai wrote:
> > > > From: Takashi Iwai <tiwai@suse.de>
> > > > Subject: [PATCH] ALSA: hda - Reduce click noise at power up
> > > > 
> > > > Some machines suffer from click noises at power up with the recent
> > > > kernels, and this seems triggered at the power transition and the
> > > > immediate verb executions.  As a workaround, put a short delay (10ms)
> > > > right after the D0 transition.
> > > > 
> > > > There are a few places that have the same kind of delays, especially
> > > > in the resume path.  I guess they can be removed (or reduced) after
> > > > this patch.  But, since the delay is relatively small, let's do it
> > > > later as a cleanup.
> > > > 
> > > > Reported-by: Mihai Donțu <mihai.dontu@gmail.com>
> > > > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> > > > ---
> > > >  sound/pci/hda/hda_codec.c | 3 +++
> > > >  1 file changed, 3 insertions(+)
> > > > 
> > > > diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
> > > > index b7782212dd64..38f5509ee52f 100644
> > > > --- a/sound/pci/hda/hda_codec.c
> > > > +++ b/sound/pci/hda/hda_codec.c
> > > > @@ -3077,6 +3077,9 @@ static unsigned int hda_set_power_state(struct hda_codec *codec,
> > > >  			break;
> > > >  	}
> > > >  
> > > > +	if (power_state == AC_PWRST_D0)
> > > > +		msleep(10);
> > > > +
> > > >  	return state;
> > > >  }
> > > >  
> > > 
> > > I take back my previous observations. I was at work and did not have
> > > access to headphones (one of those days). Now I'm at home, it's 1 AM,
> > > very quiet, and I notice the following:
> > > 
> > >  * on speakers: the click reproduces but with _very_ low amplitude;
> > >    msleep(100) is unnoticeable, but msleep(10) is, barely;
> > >  * on headphones: the moment I plug them I hear a loud static sound
> > >    (like an old, untuned AM radio). If I play something, the static
> > >    disappears. If I pause, the static returns after ~15s.
> > 
> > OK, then the patch is no-go.  We need a bit deeper analysis.
> > 
> > About the headphone problem: don't you get the same issue with 4.0.x?
> > Please take alsa-info.sh outputs on both 4.0.x and 4.1 before and
> > after plugging the headphone, and attach the outputs.
> > (Run the script with --no-upload option.)
> 
> No, 4.0.5 and all previous kernels (>= 3.12) are OK. I have attached a
> small tarball with the two files produced by alsa-info.sh.

Both are taken in different states (one is headphone plugged and
another unplugged?).  At best, take the snapshot in the same situation
for comparison.

In anyway, below is another shot in dark.  The white noise is possibly
the ill side effect of analog loopback.  But it's strange that this
didn't happen on 4.0.x.  And, it combines another black magic that
worked for another Dell model.  Let's see.


Takashi

---
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 9d3e0fcb4326..cf46f6012ba4 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4522,6 +4522,8 @@ enum {
 	ALC288_FIXUP_DELL1_MIC_NO_PRESENCE,
 	ALC288_FIXUP_DELL_XPS_13_GPIO6,
 	ALC298_FIXUP_DELL1_MIC_NO_PRESENCE,
+	ALC292_FIXUP_DELL_E74,
+	ALC292_FIXUP_DISABLE_AAMIX,
 };
 
 static const struct hda_fixup alc269_fixups[] = {
@@ -5054,6 +5056,16 @@ static const struct hda_fixup alc269_fixups[] = {
 		.chained = true,
 		.chain_id = ALC269_FIXUP_HEADSET_MODE
 	},
+	[ALC292_FIXUP_DISABLE_AAMIX] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = alc_fixup_disable_aamix,
+	},
+	[ALC292_FIXUP_DELL_E74] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = alc_fixup_dell_xps13,
+		.chained = true,
+		.chain_id = ALC292_FIXUP_DISABLE_AAMIX
+	},
 };
 
 static const struct snd_pci_quirk alc269_fixup_tbl[] = {
@@ -5066,6 +5078,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
 	SND_PCI_QUIRK(0x1025, 0x0775, "Acer Aspire E1-572", ALC271_FIXUP_HP_GATE_MIC_JACK_E1_572),
 	SND_PCI_QUIRK(0x1025, 0x079b, "Acer Aspire V5-573G", ALC282_FIXUP_ASPIRE_V5_PINS),
 	SND_PCI_QUIRK(0x1028, 0x0470, "Dell M101z", ALC269_FIXUP_DELL_M101Z),
+	SND_PCI_QUIRK(0x1028, 0x05cb, "Dell Latitude E7440", ALC292_FIXUP_DELL_E74),
 	SND_PCI_QUIRK(0x1028, 0x05da, "Dell Vostro 5460", ALC290_FIXUP_SUBWOOFER),
 	SND_PCI_QUIRK(0x1028, 0x05f4, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE),
 	SND_PCI_QUIRK(0x1028, 0x05f5, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE),

  reply	other threads:[~2015-06-12  7:00 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-28 11:21 Audio crackles with 4.1-rc1 Jonathan McDowell
2015-04-28 12:00 ` Takashi Iwai
2015-04-28 12:35   ` Jonathan McDowell
2015-04-28 13:05     ` Takashi Iwai
2015-04-28 14:43       ` Takashi Iwai
2015-04-29 11:28         ` Jonathan McDowell
2015-04-29 11:54           ` Takashi Iwai
2015-04-30 15:01             ` Jonathan McDowell
2015-04-30 17:06               ` Takashi Iwai
2015-05-02 15:05                 ` Jonathan McDowell
2015-05-19  6:15                   ` Takashi Iwai
2015-05-19 16:19                     ` Jonathan McDowell
2015-05-19 17:09                       ` Takashi Iwai
2015-05-19 21:53                         ` Jonathan McDowell
2015-05-20  5:01                           ` Takashi Iwai
2015-05-20 20:02                             ` Jonathan McDowell
2015-06-10 10:17                             ` Mihai Donțu
2015-06-10 10:22                               ` Takashi Iwai
2015-06-10 10:41                                 ` Mihai Donțu
2015-06-10 10:50                                   ` Takashi Iwai
2015-06-10 11:45                                     ` Mihai Donțu
2015-06-10 12:33                                       ` Takashi Iwai
2015-06-10 12:50                                         ` Takashi Iwai
2015-06-10 16:22                                           ` Mihai Donțu
2015-06-10 16:27                                             ` Takashi Iwai
2015-06-10 16:43                                               ` Mihai Donțu
2015-06-10 18:23                                                 ` Takashi Iwai
2015-06-10 22:12                                                   ` Mihai Donțu
2015-06-11  5:01                                                     ` Takashi Iwai
2015-06-11 22:23                                                       ` Mihai Donțu
2015-06-12  7:00                                                         ` Takashi Iwai [this message]
2015-06-12  9:45                                                           ` Mihai Donțu
2015-06-12 10:09                                                             ` Takashi Iwai
2015-06-12 14:13                                                               ` Takashi Iwai
2015-06-12 17:28                                                                 ` Mihai Donțu
2015-06-14 12:24                                                                 ` Jonathan McDowell
2015-06-15 12:04                                                                   ` Takashi Iwai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5hy4jp5s3t.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mihai.dontu@gmail.com \
    --cc=noodles@earth.li \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).