summaryrefslogtreecommitdiff
path: root/sound/soc/sof/intel
diff options
context:
space:
mode:
authorNiranjan H Y <niranjan.hy@ti.com>2026-03-24 09:42:59 +0530
committerMark Brown <broonie@kernel.org>2026-03-24 13:17:18 +0000
commitd12dc8c558b955e74bf3dc9c01926c3c109f2d69 (patch)
tree9dd2f75bc46bfc8e0f8aa0cf3bbf2dd792d9ed53 /sound/soc/sof/intel
parent51b0909d0bc479b37db5f26674a7c41676aa8f80 (diff)
downloadlwn-d12dc8c558b955e74bf3dc9c01926c3c109f2d69.tar.gz
lwn-d12dc8c558b955e74bf3dc9c01926c3c109f2d69.zip
ASoC: sdw_utils: add vendor_id to asoc_sdw_codec_info
struct asoc_sdw_codec_info has part_id which is not sufficient to uniquely identify devices. This change adds the vendor_id field and updates the codec_info list with the corresponding vendor id as per the Manufacturer's id in https://mid.mipi.org/ Signed-off-by: Niranjan H Y <niranjan.hy@ti.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://patch.msgid.link/20260324041300.784-1-niranjan.hy@ti.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sof/intel')
-rw-r--r--sound/soc/sof/intel/hda.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sound/soc/sof/intel/hda.c b/sound/soc/sof/intel/hda.c
index c0cc7d3ce526..9ec33147d9af 100644
--- a/sound/soc/sof/intel/hda.c
+++ b/sound/soc/sof/intel/hda.c
@@ -1179,6 +1179,9 @@ static struct snd_soc_acpi_adr_device *find_acpi_adr_device(struct device *dev,
struct snd_soc_acpi_endpoint *endpoints;
int amp_group_id = 1;
+ if (sdw_device->id.mfg_id != codec_info_list[i].vendor_id)
+ continue;
+
if (sdw_device->id.part_id != codec_info_list[i].part_id)
continue;
@@ -1193,8 +1196,8 @@ static struct snd_soc_acpi_adr_device *find_acpi_adr_device(struct device *dev,
* dereference
*/
if (!name_prefix) {
- dev_err(dev, "codec_info_list name_prefix of part id %#x is missing\n",
- codec_info_list[i].part_id);
+ dev_err(dev, "codec_info_list name_prefix of part id %#x-%#x is missing\n",
+ codec_info_list[i].vendor_id, codec_info_list[i].part_id);
return NULL;
}
for (j = 0; j < codec_info_list[i].dai_num; j++) {