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:47:14 +0000 (07:47 +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 6b5804e..97649c0 100644 (file)
@@ -219,6 +219,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)