Bug 76841

Summary: Sound popping on playback start stop Audigy 2 ZS Notebook
Product: Drivers Reporter: rimblin (rimblin)
Component: Sound(ALSA)Assignee: Jaroslav Kysela (perex)
Status: NEW ---    
Severity: normal    
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 3.14.4-1 Subsystem:
Regression: No Bisected commit-id:
Attachments: A photo of the analog 5.1 adapter

Description rimblin 2014-05-24 18:35:02 UTC
Created attachment 137291 [details]
A photo of the analog 5.1 adapter

Each time playback starts or stops a short 'pop!' sound is heard. So if e.g. a short system even sound is played there are two pops. One at the start of the playback and one at the end of the playback.

Reproducible with any kind of sound content - flash videos, various media players.

Reproducible on both the headphone output as well as the 5.1 analog adapter output

I've been observing this behavior since I purchased the sound card ~2 years ago. The issue is not distro nor kernel specific.


What I've tried:
1. disabling power saving
a) using TLP: SOUND_POWER_SAVE=0 SOUND_POWER_SAVE_CONTROLLER=N
b) /etc/pulse/default.pa  :  #load-module module-suspend-on-idle
c) modprobe snd_emu10k1 power_save=0
d) /etc/pulse/default.pa load-module module-udev-detect tsched=0
e) disabling all powersaving options in BIOS

2. enabling Line in alsamixer (no 'automute' option there BTW)

3. modprobe options in accordance with the following matrix:
options snd_emu10k1 power_save=0 power_save_controller=0 high_res_gpr_volume=1 delay_pcm_irq=0

high_res_gpr_volume == a; delay_pcm_irq == b;
 a | b 
-------
 0 | 0
 0 | 1
 1 | 0
 1 | 1
 0 | 24
 1 | 24


System info:
Linux arch3 3.14.4-1-ARCH #1 SMP PREEMPT Tue May 13 16:41:39 CEST 2014 x86_64 GNU/Linux

dmesg:
[    0.000000] DMI: LENOVO 20823HU/20823HU, BIOS 6FET92WW (3.22 ) 12/14/2011


# dmesg | grep -i pcmc
[    3.084260] yenta_cardbus 0000:15:00.0: pcmcia: parent PCI bridge window: [io  0x4000-0x7fff]
[    3.084263] yenta_cardbus 0000:15:00.0: pcmcia: parent PCI bridge window: [mem 0xf4800000-0xf7ffffff]
[    3.084265] pcmcia_socket pcmcia_socket0: cs: memory probe 0xf4800000-0xf7ffffff:
[    3.084279] yenta_cardbus 0000:15:00.0: pcmcia: parent PCI bridge window: [mem 0xf0000000-0xf3ffffff 64bit pref]
[    3.084282] pcmcia_socket pcmcia_socket0: cs: memory probe 0xf0000000-0xf3ffffff:
[    3.970050] pcmcia_socket pcmcia_socket0: pccard: CardBus card inserted into slot 0
[    3.970443] pcmcia_socket pcmcia_socket0: cs: memory probe 0x0c0000-0x0fffff:
[    3.970470] pcmcia_socket pcmcia_socket0: cs: memory probe 0xa0000000-0xa0ffffff:
[    3.970492] pcmcia_socket pcmcia_socket0: cs: memory probe 0x60000000-0x60ffffff:

# dmesg | grep -i emu10
[    3.997145] snd_emu10k1: unknown parameter 'power_save' ignored
[    3.997150] snd_emu10k1: unknown parameter 'power_save_controller' ignored
[    3.997381] snd_emu10k1 0000:16:00.0: enabling device (0000 -> 0001)

# dmesg | grep -i audig
[    4.208258] Audigy2 value: Special config.


# dmesg | grep -i bug
[    0.000000] ACPI BIOS Warning (bug): 32/64X length mismatch in FADT/Pm1aControlBlock: 16/32 (20131218/tbfadt-603)
[    0.000000] ACPI BIOS Warning (bug): Invalid length for FADT/Pm1aControlBlock: 32, using default 16 (20131218/tbfadt-684)
[    0.127639] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query honored via DMI
[    0.193468] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[    0.537648] ehci-pci 0000:00:1a.7: debug port 1
[    0.558317] ehci-pci 0000:00:1d.7: debug port 1
[    2.383211] systemd[1]: Mounting Debug File System...
[    2.929317] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEBUG disabled
[    2.929322] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEBUGFS disabled



lspci -nn | grep -i audio;
00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 03)
16:00.0 Multimedia audio controller [0401]: Creative Labs SB0400 Audigy2 Value [1102:0008]


# lsmod | grep -i snd
snd_emu10k1           141959  5 
snd_util_mem            2403  1 snd_emu10k1
snd_ac97_codec        114256  1 snd_emu10k1
ac97_bus                1270  1 snd_ac97_codec
snd_rawmidi            19190  1 snd_emu10k1
snd_seq_device          5180  2 snd_rawmidi,snd_emu10k1
snd_hda_codec_conexant    38779  1 
snd_hda_codec_generic    53860  2 snd_hda_codec_conexant
snd_hda_intel          38728  6 
snd_hda_codec         101816  3 snd_hda_codec_conexant,snd_hda_codec_generic,snd_hda_intel
snd_hwdep               6396  2 snd_hda_codec,snd_emu10k1
snd_pcm                81607  8 snd_ac97_codec,snd_hda_codec,snd_hda_intel,snd_emu10k1
snd_timer              19038  2 snd_pcm,snd_emu10k1
snd                    60086  30 snd_ac97_codec,snd_hwdep,snd_timer,snd_hda_codec_conexant,snd_pcm,snd_rawmidi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,thinkpad_acpi,snd_emu10k1,snd_seq_device
soundcore               5551  1 snd


/etc/asound.conf

# Use PulseAudio by default
pcm.!default {
  type pulse
  fallback "sysdefault"
  hint {
    show on
    description "Default ALSA Output (currently PulseAudio Sound Server)"
  }
}

ctl.!default {
  type pulse
  fallback "sysdefault"
}

# vim:set ft=alsaconf:


# modinfo snd_emu10k1
filename:       /lib/modules/3.14.4-1-ARCH/kernel/sound/pci/emu10k1/snd-emu10k1.ko.gz
license:        GPL
description:    EMU10K1
author:         Jaroslav Kysela <perex@perex.cz>
firmware:       emu/emu1010_notebook.fw
firmware:       emu/emu0404.fw
firmware:       emu/micro_dock.fw
firmware:       emu/emu1010b.fw
firmware:       emu/audio_dock.fw
firmware:       emu/hana.fw
alias:          pci:v00001102d00000008sv*sd*bc*sc*i*
alias:          pci:v00001102d00000004sv*sd*bc*sc*i*
alias:          pci:v00001102d00000002sv*sd*bc*sc*i*
depends:        snd-pcm,snd-ac97-codec,snd-util-mem,snd,snd-rawmidi,snd-timer,snd-hwdep,snd-seq-device
intree:         Y
vermagic:       3.14.4-1-ARCH SMP preempt mod_unload modversions 
parm:           high_res_gpr_volume:GPR mixer controls use 31-bit range. (bool)
parm:           index:Index value for the EMU10K1 soundcard. (array of int)
parm:           id:ID string for the EMU10K1 soundcard. (array of charp)
parm:           enable:Enable the EMU10K1 soundcard. (array of bool)
parm:           extin:Available external inputs for FX8010. Zero=default. (array of int)
parm:           extout:Available external outputs for FX8010. Zero=default. (array of int)
parm:           seq_ports:Allocated sequencer ports for internal synthesizer. (array of int)
parm:           max_synth_voices:Maximum number of voices for WaveTable. (array of int)
parm:           max_buffer_size:Maximum sample buffer size in MB. (array of int)
parm:           enable_ir:Enable IR. (array of bool)
parm:           subsystem:Force card subsystem model. (array of uint)
parm:           delay_pcm_irq:Delay PCM interrupt by specified number of samples (default 0). (array of uint)


/etc/asound.conf not modified.
/etc/pulse/default.pa not modified.
~/.asoundrc does not exist
Comment 1 rimblin 2014-05-26 19:38:22 UTC
Correction:
The popping noise does not occur while listening on speakers through the aforementioned adapter.