kernel bug - sound clicks

Richard Hughes hughsient at gmail.com
Mon Jul 14 12:37:13 UTC 2008


On Mon, 2008-07-14 at 09:51 +0200, Valent Turkovic wrote:
> So as per your blog post this is bug over a year old. Is my bug a
> duplicate of it in bugzilla? If so please post the link.

In fedora bugzilla I've not checked -- but there's a few in the kernel
bugzilla and the alsa bugtracker.

> Is there something that we users who aren't developers can do so that
> this bug gets fixed faster? Is there some log, some debug output that
> would help kernel developers to find how to deal with these sound
> chips?

Well, to be honest, I'm not sure how to go forward. Using WindowsXP, you
don't get the sounds clicks, so either the windows driver has worked out
a way of powering up the soundcard without a DC click, or the windows
driver just doesn't power down the soundcard. You can be sure there's
some vendor whitelist/blacklist trickery going on.

We also think this is probably a per-laptop thing, rather than a
per-chipset thing, so a kernel blacklist would be pretty hard to
populate. The alsa docs explain things a bit better:

"""
With the automatic power-saving, the driver turns off the codec power
appropriately when no operation is required.  When no applications use
the device and/or no analog loopback is set, the power disablement is
done fully or partially.  It'll save a certain power consumption, thus
good for laptops (even for desktops).

The time-out for automatic power-off can be specified via power_save
module option of snd-ac97-codec and snd-hda-intel modules.  Specify
the time-out value in seconds.  0 means to disable the automatic
power-saving.  The default value of timeout is given via
CONFIG_SND_AC97_POWER_SAVE_DEFAULT and
CONFIG_SND_HDA_POWER_SAVE_DEFAULT Kconfig options.  Setting this to 1
(the minimum value) isn't recommended because many applications try to
reopen the device frequently.  10 would be a good choice for normal
operations.

The power_save option is exported as writable.  This means you can
adjust the value via sysfs on the fly.  For example, to turn on the
automatic power-save mode with 10 seconds, write to
/sys/modules/snd_ac97_codec/parameters/power_save (usually as root):

	# echo 10 > /sys/modules/snd_ac97_codec/parameters/power_save

Note that you might hear click noise/pop when changing the power
state.  Also, it often takes certain time to wake up from the
power-down to the active state.  These are often hardly to fix, so
don't report extra bug reports unless you have a fix patch ;-)

For HD-audio interface, there is another module option,
power_save_controller.  This enables/disables the power-save mode of
the controller side.  Setting this on may reduce a bit more power
consumption, but might result in longer wake-up time and click noise.
Try to turn it off when you experience such a thing too often.
"""

Richard.





More information about the devel mailing list