]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 3 Oct 2022 06:35:40 +0000 (08:35 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 3 Oct 2022 06:35:40 +0000 (08:35 +0200)
added patches:
alsa-hda-hdmi-fix-warning-about-pcm-count-when-used-with-sof.patch

queue-5.10/alsa-hda-hdmi-fix-warning-about-pcm-count-when-used-with-sof.patch [new file with mode: 0644]
queue-5.10/series

diff --git a/queue-5.10/alsa-hda-hdmi-fix-warning-about-pcm-count-when-used-with-sof.patch b/queue-5.10/alsa-hda-hdmi-fix-warning-about-pcm-count-when-used-with-sof.patch
new file mode 100644 (file)
index 0000000..4636837
--- /dev/null
@@ -0,0 +1,63 @@
+From c74193787b2f683751a67603fb5f15c7584f355f Mon Sep 17 00:00:00 2001
+From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
+Date: Thu, 14 Apr 2022 18:05:16 +0300
+Subject: ALSA: hda/hdmi: fix warning about PCM count when used with SOF
+
+From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
+
+commit c74193787b2f683751a67603fb5f15c7584f355f upstream.
+
+With commit 13046370c4d1 ("ALSA: hda/hdmi: let new platforms assign the
+pcm slot dynamically"), old behaviour to consider the HDA pin number,
+when choosing PCM to assign, was dropped.
+
+Build on this change and limit the number of PCMs created to number of
+converters (= maximum number of concurrent display/receivers) when
+"mst_no_extra_pcms" and "dyn_pcm_no_legacy" quirks are both set.
+
+Fix the check in hdmi_find_pcm_slot() to ensure only spec->pcm_used
+entries are considered in the search. Elsewhere in the driver
+spec->pcm_used is already checked properly.
+
+Doing this avoids following warning at SOF driver probe for multiple
+machine drivers:
+
+[  112.425297] sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no
+PCM in topology for HDMI converter 4
+[  112.425298] sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no
+PCM in topology for HDMI converter 5
+[  112.425299] sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no
+PCM in topology for HDMI converter 6
+
+Fixes: 13046370c4d1 ("ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically")
+BugLink: https://github.com/thesofproject/linux/issues/2573
+Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
+Link: https://lore.kernel.org/r/20220414150516.3638283-1-kai.vehmanen@linux.intel.com
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/pci/hda/patch_hdmi.c |    6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+--- a/sound/pci/hda/patch_hdmi.c
++++ b/sound/pci/hda/patch_hdmi.c
+@@ -1397,7 +1397,7 @@ static int hdmi_find_pcm_slot(struct hdm
+  last_try:
+       /* the last try; check the empty slots in pins */
+-      for (i = 0; i < spec->num_nids; i++) {
++      for (i = 0; i < spec->pcm_used; i++) {
+               if (!test_bit(i, &spec->pcm_bitmap))
+                       return i;
+       }
+@@ -2273,7 +2273,9 @@ static int generic_hdmi_build_pcms(struc
+        * dev_num is the device entry number in a pin
+        */
+-      if (codec->mst_no_extra_pcms)
++      if (spec->dyn_pcm_no_legacy && codec->mst_no_extra_pcms)
++              pcm_num = spec->num_cvts;
++      else if (codec->mst_no_extra_pcms)
+               pcm_num = spec->num_nids;
+       else
+               pcm_num = spec->num_nids + spec->dev_num - 1;
index 57a3c37ddf21794324d506c398329ef203846f0d..d47d881da19150c40dec5c4a40b3c5a1fb65ff02 100644 (file)
@@ -49,3 +49,4 @@ clk-imx-imx6sx-remove-the-set_rate_parent-flag-for-q.patch
 clk-iproc-do-not-rely-on-node-name-for-correct-pll-s.patch
 kvm-x86-hide-ia32_platform_dca_cap-31-0-from-the-gue.patch
 x86-alternative-fix-race-in-try_get_desc.patch
+alsa-hda-hdmi-fix-warning-about-pcm-count-when-used-with-sof.patch