* name string if quirk flag is set.
*/
if (mach) {
+ const struct sof_intel_dsp_desc *chip = get_chip_info(sdev->pdata);
bool tplg_fixup = false;
bool dmic_fixup = false;
sof_pdata->tplg_filename = tplg_filename;
}
+ if (tplg_fixup && mach->mach_params.bt_link_mask &&
+ chip->hw_ip_version >= SOF_INTEL_ACE_4_0) {
+ int bt_port = fls(mach->mach_params.bt_link_mask) - 1;
+
+ tplg_filename = devm_kasprintf(sdev->dev, GFP_KERNEL, "%s-ssp%d-bt",
+ sof_pdata->tplg_filename, bt_port);
+ if (!tplg_filename)
+ return NULL;
+
+ sof_pdata->tplg_filename = tplg_filename;
+ }
+
if (mach->link_mask) {
mach->mach_params.links = mach->links;
mach->mach_params.link_mask = mach->link_mask;
if (tplg_fixup &&
mach->tplg_quirk_mask & SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER &&
mach->mach_params.i2s_link_mask) {
- const struct sof_intel_dsp_desc *chip = get_chip_info(sdev->pdata);
int ssp_num;
int mclk_mask;