On Tue, 16 Apr 2019 10:59:37 +0200, 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.
The pin shutup change helped at the resume click noise in my case.
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.
If a specific widget must not enter D3, you can filter out by setting with power filter. An example is found in patch_sigmatel.c stac_vref_led_power_filter() which avoids D3 on AFG node for keeping mute LED working.
Takashi
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.
thanks,
Takashi
------Please consider the environment before printing this e-mail.