ASoC: amd: acp: update tdm channels for specific DAI

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: 12229b7e50 ("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>
pull/1354/merge
Hemalatha Pinnamreddy 2025-12-03 17:31:34 +05:30 committed by Mark Brown
parent a061deb0b4
commit f34836a8dd
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0
1 changed files with 2 additions and 0 deletions

View 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); spin_lock_irq(&chip->acp_lock);
list_for_each_entry(stream, &chip->stream_list, list) { list_for_each_entry(stream, &chip->stream_list, list) {
if (dai->id != stream->dai_id)
continue;
switch (chip->acp_rev) { switch (chip->acp_rev) {
case ACP_RN_PCI_ID: case ACP_RN_PCI_ID:
case ACP_RMB_PCI_ID: case ACP_RMB_PCI_ID: