ALSA: hda - Set codec to D3 at reboot/shutdown on Thinkpads
authorTakashi Iwai <tiwai@suse.de>
Tue, 15 Dec 2015 13:59:58 +0000 (14:59 +0100)
committerTakashi Iwai <tiwai@suse.de>
Tue, 15 Dec 2015 14:11:58 +0000 (15:11 +0100)
commit70a0976b0c0d90f4246d7e63359d796ec82b87d6
tree922cbe0ed3b0b914fd217b02d0a7d7eb391a3bf9
parent157f0b7f6c0cc0bc88647390006e959e267a0143
ALSA: hda - Set codec to D3 at reboot/shutdown on Thinkpads

Lenovo Thinkpads with Realtek codecs may still have some loud
crackling noises at reboot/shutdown even though a few previous fixes
have been applied.  It's because the previous fix (disabling the
default shutup callback) takes effect only at transition of the codec
power state.  Meanwhile, at reboot or shutdown, we don't take down the
codec power as default, thus it triggers the same problem unless the
codec is powered down casually by runtime PM.

This patch tries to address the issue.  It gives two things:
- implement the separate reboot_notify hook to struct alc_spec, and
  call it optionally if defined.
- turn off the codec to D3 for Thinkpad models via this new callback

Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=958439
Reported-and-tested-by: Benjamin Poirier <bpoirier@suse.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c