Unverified Commit cf8a4ca8 authored by Bard Liao's avatar Bard Liao Committed by Mark Brown
Browse files

ASoC: Intel: soc-acpi-intel-mtl-match: add get_function_tplg_files ops



The audio configs with multi-function SDCA codecs can use the
sof_sdw_get_tplg_files ops to get function topologies dynamically.

Signed-off-by: default avatarBard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: default avatarLiam Girdwood <liam.r.girdwood@intel.com>
Reviewed-by: default avatarRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: default avatarPéter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://patch.msgid.link/20250414063239.85200-10-yung-chuan.liao@linux.intel.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5a0c4a09
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@
#include <sound/soc-acpi.h>
#include <sound/soc-acpi-intel-match.h>
#include <sound/soc-acpi-intel-ssp-common.h>
#include "sof-function-topology-lib.h"
#include "soc-acpi-intel-sdca-quirks.h"
#include "soc-acpi-intel-sdw-mockup-match.h"

@@ -1083,12 +1084,14 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_mtl_sdw_machines[] = {
		.drv_name = "sof_sdw",
		.machine_check = snd_soc_acpi_intel_sdca_is_device_rt712_vb,
		.sof_tplg_filename = "sof-mtl-rt712-vb-l0.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = BIT(0),
		.links = mtl_712_l0,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-rt712-l0.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = GENMASK(2, 0),
@@ -1101,30 +1104,35 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_mtl_sdw_machines[] = {
		.links = cs42l43_link0_cs35l56_link2_link3,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-cs42l43-l0-cs35l56-l23.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = BIT(0) | BIT(1) | BIT(3),
		.links = cs42l43_link3_cs35l56_x4_link0_link1_spkagg,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-cs42l43-l3-cs35l56-l01-spkagg.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = GENMASK(2, 0),
		.links = mtl_cs42l43_cs35l56,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-cs42l43-l0-cs35l56-l12.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = BIT(0) | BIT(1),
		.links = mtl_cs35l56_x8_link0_link1_fb,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-cs35l56-l01-fb8.tplg"
		.sof_tplg_filename = "sof-mtl-cs35l56-l01-fb8.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = BIT(0),
		.links = mtl_cs42l43_l0,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-cs42l43-l0.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = GENMASK(3, 0),
@@ -1143,6 +1151,7 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_mtl_sdw_machines[] = {
		.links = mtl_rt722_only,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-rt722-l0.tplg",
		.get_function_tplg_files = sof_sdw_get_tplg_files,
	},
	{
		.link_mask = BIT(0),