From 823d5b8d27c841eea4616da55648d0d99c79dd5b Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Tue, 13 Jan 2026 20:35:37 +0800 Subject: [PATCH] ASoC: SOF: Intel: use hdev->info.link_mask directly The link_mask variable is not changed after setting to hdev->info.link_mask until it is used for another purpose to get the used SoundWire links and set to mach->mach_params.links. Besides, the link_mask variable should be reset before any link id is added to the link_mask. To fix the issue above and avoid confusing, use the hdev->info.link_mask variable directly to check if the SoundWire link is enabled. Fixes: 5226d19d4cae ("ASoC: SOF: Intel: use sof_sdw as default SDW machine driver") Signed-off-by: Bard Liao --- sound/soc/sof/intel/hda.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sound/soc/sof/intel/hda.c b/sound/soc/sof/intel/hda.c index 762100f7547ff9..12a9a56aeae8d6 100644 --- a/sound/soc/sof/intel/hda.c +++ b/sound/soc/sof/intel/hda.c @@ -1304,9 +1304,8 @@ static struct snd_soc_acpi_mach *hda_sdw_machine_select(struct snd_sof_dev *sdev int i; hdev = pdata->hw_pdata; - link_mask = hdev->info.link_mask; - if (!link_mask) { + if (!hdev->info.link_mask) { dev_info(sdev->dev, "SoundWire links not enabled\n"); return NULL; } @@ -1337,7 +1336,7 @@ static struct snd_soc_acpi_mach *hda_sdw_machine_select(struct snd_sof_dev *sdev * link_mask supported by hw and then go on searching * link_adr */ - if (~link_mask & mach->link_mask) + if (~hdev->info.link_mask & mach->link_mask) continue; /* No need to match adr if there is no links defined */