ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs
authorPark Ju Hyung <qkrwngud825@gmail.com>
Fri, 27 Jul 2018 18:16:42 +0000 (03:16 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Aug 2018 05:46:09 +0000 (07:46 +0200)
commit f59cf9a0551dd954ad8b752461cf19d9789f4b1d upstream.

On rare occasions, we are still noticing that the internal speaker
spitting out spurious noises even after adding the problematic codec
to the list.

Adding a 10ms artificial delay before rebooting fixes the issue entirely.

Patch for Realtek codecs also adds the same amount of delay after
entering D3.

Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/hda/patch_conexant.c

index 88ce2f1022e1a5d5d8d551e17ee6e44b87545b03..2a140172a972df9dbf41fe7da2045de7c97577c8 100644 (file)
@@ -225,6 +225,7 @@ static void cx_auto_reboot_notify(struct hda_codec *codec)
        snd_hda_codec_set_power_to_all(codec, codec->core.afg, AC_PWRST_D3);
        snd_hda_codec_write(codec, codec->core.afg, 0,
                            AC_VERB_SET_POWER_STATE, AC_PWRST_D3);
+       msleep(10);
 }
 
 static void cx_auto_free(struct hda_codec *codec)