All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: hwang4 <hui.wang@canonical.com>
Cc: "(alsa-devel@alsa-project.org)" <alsa-devel@alsa-project.org>,
	Kailang <kailang@realtek.com>
Subject: Re: Dell AIO speaker pop noise
Date: Tue, 16 Apr 2019 13:57:54 +0200	[thread overview]
Message-ID: <s5himve5fi5.wl-tiwai@suse.de> (raw)
In-Reply-To: <b457c3f6-1fc5-a3da-2904-0da5f3c5a170@canonical.com>

On Tue, 16 Apr 2019 13:26:47 +0200,
hwang4 wrote:
> 
> 
> On 2019/4/16 下午5:43, Takashi Iwai wrote:
> > On Tue, 16 Apr 2019 11:31:22 +0200,
> > hwang4 wrote:
> >>
> >> On 2019/4/16 下午4:59, Kailang wrote:
> >>>> -----Original Message-----
> >>>> From: Takashi Iwai <tiwai@suse.de>
> >>>> Sent: Tuesday, April 16, 2019 4:22 PM
> >>>> To: Jaroslav Kysela <perex@perex.cz>
> >>>> Cc: Kailang <kailang@realtek.com>; hwang4 <hui.wang@canonical.com>;
> >>>> (alsa-devel@alsa-project.org) <alsa-devel@alsa-project.org>
> >>>> Subject: Re: [alsa-devel] Dell AIO speaker pop noise
> >>>>
> >>>> On Tue, 16 Apr 2019 10:01:31 +0200,
> >>>> Jaroslav Kysela wrote:
> >>>>> Dne 16. 04. 19 v 9:30 Kailang napsal(a):
> >>>>>> Hi Takashi,
> >>>>>>
> >>>>>> Issue 1: The noise keeps occurring via speaker when Headset is plugged in.
> >>>>>> Issue 2: The humming noise is occuring when switching to sound of
> >>>> settings.
> >>>>>> 	 The noise will be stopped when switching to other options of settings.
> >>>>>> Issue 3: The popping noise occurred for one second when plugged in and
> >>>> removed the headset.
> >>>>>> This patch will solve this three issues.
> >>>>> Hi,
> >>>>>
> >>>>>     could you explain, why the power-save function causes this
> >>>>> behaviour? Can we do something else than turning off the power-save
> >>>>> codec settings to avoid such noises? I have this question because it's really
> >>>> easy to disable something, but I feel that the culprit of the noises might be just
> >>>> the wrong codec settings. I guess that you have probably full documentation
> >>>> for the codec and probably for the hardware, so it might be nice to find the
> >>>> real culprit.
> >>>>
> >>>> Note that power_save_node=0 doesn't mean that the whole power saving is
> >>>> disabled.  It disables the fine-grained power saving, i.e. powering down the
> >>>> unused widget nodes.
> >>>>
> >>>> If so, I wonder whether this might be about the default pin-shutup behavior.  I
> >>>> improved the click noise problem on my Dell desktop by disabling the pin
> >>>> shutup.  See commit c0ca5eced222.
> >>>> Kailang, Hui, did you try to add the chain to ALC269_FIXUP_NO_SHUTUP?
> >>>>
> >>> This noise was not happen on poweroff.
> >>> AIO use external AMP. So, it will be need to have a reference voltage via codec.
> >>> So, Pin-ctls was not be 0. I apply option spec->gen.suppress_auto_mute = 1 to avoid that.
> >>> Internal SPK PIN also don't enter to D3. But I find it just only happen on ALC274 family codecs.
> >>> ALC274 pin enter to D3. Pin-ctls also be 0. So, power_save_node=0 will let PIN to D0.
> >>>
> >>> power_save = 0 it also could solve issue.
> >>
> >> Yes, avoid setting pinctl is only part fix, the ODM said the main
> >> problem is the EAPD pin is high->low->high->low periodically, it has
> >> sth to do with the widget node power state.
> > FWIW, there is also spec->gen.keep_eapd_on=1 that prevents the EAPD
> > toggle at power saving.
> 
> Got it, but does it prevent Nodes or the whole codec from entering D3?
> 
> Here the EADP is low, it is not because the set_eapd() is called, I
> checked the EAPD of all nodes, they are all 0x2 all the time. And
> patch_realtek already set the own_eapd_ctl=1, and the NID for speaker
> is 0x16, it is not in the:
> 
>     static hda_nid_t pins[] = {
>         0x0f, 0x10, 0x14, 0x15, 0x17, 0
>     };
> 
> So the driver will not set the eapd to 0 for speaker.

OK, right, with own_eapd_ctl, the flag change makes no sense.

> If
> keep_eapd_on=1 can prevent codec/nodes from entering D3, maybe it will
> help.

Actually it's possible to prevent the specific route (path) from the
dynamic power down, too.  You can look for the path and set
path->pin_fixed=1.  But it'd be a bit too tricky and complex.


Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel

  reply	other threads:[~2019-04-16 11:57 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-16  7:30 Dell AIO speaker pop noise Kailang
2019-04-16  7:56 ` hwang4
2019-04-16  8:01 ` Jaroslav Kysela
2019-04-16  8:21   ` Takashi Iwai
2019-04-16  8:59     ` Kailang
2019-04-16  9:31       ` hwang4
2019-04-16  9:43         ` Takashi Iwai
2019-04-16 11:26           ` hwang4
2019-04-16 11:57             ` Takashi Iwai [this message]
2019-04-16 13:52               ` Kailang
2019-04-16 14:18             ` Kailang
2019-04-16 15:04               ` hwang4
2019-04-16 15:16                 ` Takashi Iwai
2019-04-26  8:32                   ` Kailang
2019-04-28  6:20                     ` Takashi Iwai
2019-04-17  7:37                 ` Kailang
2019-04-17  8:09                   ` hwang4
2019-04-16  9:59       ` Takashi Iwai
2019-04-16 10:11         ` Kailang

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=s5himve5fi5.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=hui.wang@canonical.com \
    --cc=kailang@realtek.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.