Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ASoC: SOF: Intel: add -bt tplg suffix if BT is present

We need to distinguish the topologies with and without BT PCM.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://patch.msgid.link/20251219034937.3630569-1-yung-chuan.liao@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Bard Liao and committed by
Mark Brown
a0c8ee09 e4ca5ecc

+13 -1
+13 -1
sound/soc/sof/intel/hda.c
··· 1549 1549 * name string if quirk flag is set. 1550 1550 */ 1551 1551 if (mach) { 1552 + const struct sof_intel_dsp_desc *chip = get_chip_info(sdev->pdata); 1552 1553 bool tplg_fixup = false; 1553 1554 bool dmic_fixup = false; 1554 1555 ··· 1599 1598 sof_pdata->tplg_filename = tplg_filename; 1600 1599 } 1601 1600 1601 + if (tplg_fixup && mach->mach_params.bt_link_mask && 1602 + chip->hw_ip_version >= SOF_INTEL_ACE_4_0) { 1603 + int bt_port = fls(mach->mach_params.bt_link_mask) - 1; 1604 + 1605 + tplg_filename = devm_kasprintf(sdev->dev, GFP_KERNEL, "%s-ssp%d-bt", 1606 + sof_pdata->tplg_filename, bt_port); 1607 + if (!tplg_filename) 1608 + return NULL; 1609 + 1610 + sof_pdata->tplg_filename = tplg_filename; 1611 + } 1612 + 1602 1613 if (mach->link_mask) { 1603 1614 mach->mach_params.links = mach->links; 1604 1615 mach->mach_params.link_mask = mach->link_mask; ··· 1622 1609 if (tplg_fixup && 1623 1610 mach->tplg_quirk_mask & SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER && 1624 1611 mach->mach_params.i2s_link_mask) { 1625 - const struct sof_intel_dsp_desc *chip = get_chip_info(sdev->pdata); 1626 1612 int ssp_num; 1627 1613 int mclk_mask; 1628 1614