]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.15-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 20:35:51 +0000 (21:35 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 20:35:51 +0000 (21:35 +0100)
added patches:
soundwire-intel-initialize-clock-stop-timeout.patch

queue-5.15/series
queue-5.15/soundwire-intel-initialize-clock-stop-timeout.patch [new file with mode: 0644]

index 15011f638847012d09b5ed13830917be8220c38a..0cde57459d8ba7900d168acd92a02521a6bae989 100644 (file)
@@ -37,3 +37,4 @@ xen-netback-ensure-protocol-headers-don-t-fall-in-th.patch
 xen-netback-do-some-code-cleanup.patch
 xen-netback-don-t-call-kfree_skb-with-interrupts-dis.patch
 media-videobuf2-core-take-mmap_lock-in-vb2_get_unmap.patch
+soundwire-intel-initialize-clock-stop-timeout.patch
diff --git a/queue-5.15/soundwire-intel-initialize-clock-stop-timeout.patch b/queue-5.15/soundwire-intel-initialize-clock-stop-timeout.patch
new file mode 100644 (file)
index 0000000..477f9a1
--- /dev/null
@@ -0,0 +1,45 @@
+From 13c30a755847c7e804e1bf755e66e3ff7b7f9367 Mon Sep 17 00:00:00 2001
+From: Sjoerd Simons <sjoerd@collabora.com>
+Date: Thu, 20 Oct 2022 09:56:24 +0800
+Subject: soundwire: intel: Initialize clock stop timeout
+
+From: Sjoerd Simons <sjoerd@collabora.com>
+
+commit 13c30a755847c7e804e1bf755e66e3ff7b7f9367 upstream.
+
+The bus->clk_stop_timeout member is only initialized to a non-zero value
+during the codec driver probe. This can lead to corner cases where this
+value remains pegged at zero when the bus suspends, which results in an
+endless loop in sdw_bus_wait_for_clk_prep_deprep().
+
+Corner cases include configurations with no codecs described in the
+firmware, or delays in probing codec drivers.
+
+Initializing the default timeout to the smallest non-zero value avoid this
+problem and allows for the existing logic to be preserved: the
+bus->clk_stop_timeout is set as the maximum required by all codecs
+connected on the bus.
+
+Fixes: 1f2dcf3a154ac ("soundwire: intel: set dev_num_ida_min")
+Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
+Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
+Reviewed-by: Chao Song <chao.song@intel.com>
+Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
+Link: https://lore.kernel.org/r/20221020015624.1703950-1-yung-chuan.liao@linux.intel.com
+Signed-off-by: Vinod Koul <vkoul@kernel.org>
+Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/soundwire/intel.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/soundwire/intel.c
++++ b/drivers/soundwire/intel.c
+@@ -1285,6 +1285,7 @@ static int intel_link_probe(struct auxil
+       cdns->msg_count = 0;
+       bus->link_id = auxdev->id;
++      bus->clk_stop_timeout = 1;
+       sdw_cdns_probe(cdns);