]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: amd: acp: update tdm channels for specific DAI
authorHemalatha Pinnamreddy <hemalatha.pinnamreddy2@amd.com>
Wed, 3 Dec 2025 12:01:34 +0000 (17:31 +0530)
committerMark Brown <broonie@kernel.org>
Wed, 10 Dec 2025 00:17:53 +0000 (09:17 +0900)
TDM channel updates were applied to all DAIs, causing configurations
to overwrite for unrelated streams. The logic is modified to update
channels only for targeted DAI. This prevents corruption of other DAI
settings and resolves audio issues observed during system suspend and
resume cycles.

Fixes: 12229b7e50cf ("ASoC: amd: acp: Add TDM support for acp i2s stream")
Signed-off-by: Hemalatha Pinnamreddy <hemalatha.pinnamreddy2@amd.com>
Signed-off-by: Raghavendra Prasad Mallela <raghavendraprasad.mallela@amd.com>
Link: https://patch.msgid.link/20251203120136.2591395-1-raghavendraprasad.mallela@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/amd/acp/acp-i2s.c

index 4ba0a66981ea9d36c2382ce5a42420af950eff7e..283a674c7e2c32d742f71ff9e9126ddd25358066 100644 (file)
@@ -157,6 +157,8 @@ static int acp_i2s_set_tdm_slot(struct snd_soc_dai *dai, u32 tx_mask, u32 rx_mas
 
        spin_lock_irq(&chip->acp_lock);
        list_for_each_entry(stream, &chip->stream_list, list) {
+               if (dai->id != stream->dai_id)
+                       continue;
                switch (chip->acp_rev) {
                case ACP_RN_PCI_ID:
                case ACP_RMB_PCI_ID: