Lines Matching +full:sound +full:- +full:name +full:- +full:prefix

1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
12 #include <sound/soc.h>
13 #include <sound/soc-acpi.h>
14 #include "sof-function-topology-lib.h"
31 const char *prefix, const char ***tplg_files) in sof_sdw_get_tplg_files() argument
33 struct snd_soc_acpi_mach_params mach_params = mach->mach_params; in sof_sdw_get_tplg_files()
43 ret = sscanf(mach->sof_tplg_filename, "sof-%3s-*.tplg", platform); in sof_sdw_get_tplg_files()
45 dev_err(card->dev, "Invalid platform name %s of tplg %s\n", in sof_sdw_get_tplg_files()
46 platform, mach->sof_tplg_filename); in sof_sdw_get_tplg_files()
47 return -EINVAL; in sof_sdw_get_tplg_files()
53 dev_dbg(card->dev, "dai_link %s id %d\n", dai_link->name, dai_link->id); in sof_sdw_get_tplg_files()
54 if (strstr(dai_link->name, "SimpleJack")) { in sof_sdw_get_tplg_files()
56 tplg_dev_name = "sdca-jack"; in sof_sdw_get_tplg_files()
57 } else if (strstr(dai_link->name, "SmartAmp")) { in sof_sdw_get_tplg_files()
59 tplg_dev_name = devm_kasprintf(card->dev, GFP_KERNEL, in sof_sdw_get_tplg_files()
60 "sdca-%damp", dai_link->num_cpus); in sof_sdw_get_tplg_files()
62 return -ENOMEM; in sof_sdw_get_tplg_files()
63 } else if (strstr(dai_link->name, "SmartMic")) { in sof_sdw_get_tplg_files()
65 tplg_dev_name = "sdca-mic"; in sof_sdw_get_tplg_files()
66 } else if (strstr(dai_link->name, "dmic")) { in sof_sdw_get_tplg_files()
69 tplg_dev_name = "dmic-2ch"; in sof_sdw_get_tplg_files()
72 tplg_dev_name = "dmic-4ch"; in sof_sdw_get_tplg_files()
75 dev_warn(card->dev, in sof_sdw_get_tplg_files()
81 } else if (strstr(dai_link->name, "iDisp")) { in sof_sdw_get_tplg_files()
83 tplg_dev_name = "hdmi-pcm5"; in sof_sdw_get_tplg_files()
87 dev_dbg(card->dev, in sof_sdw_get_tplg_files()
89 dai_link->name); in sof_sdw_get_tplg_files()
98 * The tplg file naming rule is sof-<platform>-<function>-id<BE id number>.tplg in sof_sdw_get_tplg_files()
104 (*tplg_files)[tplg_num] = devm_kasprintf(card->dev, GFP_KERNEL, in sof_sdw_get_tplg_files()
105 "%s/sof-%s-%s-id%d.tplg", in sof_sdw_get_tplg_files()
106 prefix, platform, in sof_sdw_get_tplg_files()
107 tplg_dev_name, dai_link->id); in sof_sdw_get_tplg_files()
110 (*tplg_files)[tplg_num] = devm_kasprintf(card->dev, GFP_KERNEL, in sof_sdw_get_tplg_files()
111 "%s/sof-%s-id%d.tplg", in sof_sdw_get_tplg_files()
112 prefix, tplg_dev_name, in sof_sdw_get_tplg_files()
113 dai_link->id); in sof_sdw_get_tplg_files()
117 return -ENOMEM; in sof_sdw_get_tplg_files()
121 dev_dbg(card->dev, "tplg_mask %#lx tplg_num %d\n", tplg_mask, tplg_num); in sof_sdw_get_tplg_files()
123 /* Check presence of sub-topologies */ in sof_sdw_get_tplg_files()
125 ret = firmware_request_nowarn(&fw, (*tplg_files)[i], card->dev); in sof_sdw_get_tplg_files()
129 dev_dbg(card->dev, "Failed to open topology file: %s\n", (*tplg_files)[i]); in sof_sdw_get_tplg_files()