ALSA: hda: Add a power_save blacklist
authorHans de Goede <hdegoede@redhat.com>
Thu, 22 Feb 2018 13:20:35 +0000 (14:20 +0100)
committerTakashi Iwai <tiwai@suse.de>
Sat, 24 Feb 2018 10:27:31 +0000 (11:27 +0100)
commit1ba8f9d308174e647b864c36209b4d7934d99888
tree3993ba03a4243f9679ca618e1bfa9a7519429756
parent7229b12f5da33d5c376ee264f063703844b8092d
ALSA: hda: Add a power_save blacklist

On some boards setting power_save to a non 0 value leads to clicking /
popping sounds when ever we enter/leave powersaving mode. Ideally we would
figure out how to avoid these sounds, but that is not always feasible.

This commit adds a blacklist for devices where powersaving is known to
cause problems and disables it on these devices.

Note I tried to put this blacklist in userspace first:
https://github.com/systemd/systemd/pull/8128

But the systemd maintainers rightfully pointed out that it would be
impossible to then later remove entries once we actually find a way to
make power-saving work on listed boards without issues. Having this list
in the kernel will allow removal of the blacklist entry in the same commit
which fixes the clicks / plops.

The blacklist only applies to the default power_save module-option value,
if a user explicitly sets the module-option then the blacklist is not
used.

[ added an ifdef CONFIG_PM for the build error -- tiwai]

BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1525104
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=198611
Cc: stable@vger.kernel.org
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_intel.c