ALSA: hda: Modify stream stripe mask only when needed
authorTakashi Iwai <tiwai@suse.de>
Mon, 2 Dec 2019 07:49:47 +0000 (08:49 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 13 Dec 2019 07:42:39 +0000 (08:42 +0100)
commitd050d2807328a5fbd721759266a9b6ee5691be12
treeac331ace7d2026f3edc8d587a0cae0a1b094ce11
parentfeebcef2fdbf1e416a5b5a9e6f4a1009c0e05794
ALSA: hda: Modify stream stripe mask only when needed

commit e38e486d66e2a3b902768fd71c32dbf10f77e1cb upstream.

The recent commit in HD-audio stream management for changing the
stripe control seems causing a regression on some platforms.  The
stripe control is currently used only by HDMI codec, and applying the
stripe mask unconditionally may lead to scratchy and static noises as
seen on some MacBooks.

For addressing the regression, this patch changes the stream
management code to apply the stripe mask conditionally only when the
codec driver requested.

Fixes: 9b6f7e7a296e ("ALSA: hda: program stripe bits for controller")
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=204477
Tested-by: Michael Pobega <mpobega@neverware.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20191202074947.1617-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/sound/hdaudio.h
sound/hda/hdac_stream.c
sound/pci/hda/patch_hdmi.c