Unverified Commit 02e6f7cb authored by Pierre-Louis Bossart's avatar Pierre-Louis Bossart Committed by Mark Brown
Browse files

ASoC: Intel: soc-acpi: mtl: add Dell SKU 0C64 and 0CC6



SKU 0C64 relies on rt713 (jack codec) on link0, rt1318 (single
amplifier) on link1 and rt1713 (dmic) on link3.

SKU 0CC6 relies on rt713 (jack codec) on link0, rt1318 (two
amplifiers) on link 1-2 and rt1713 (dmic) on link3.

Reviewed-by: default avatarBard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20240426152123.36284-4-pierre-louis.bossart@linux.intel.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 69d0f88b
Loading
Loading
Loading
Loading
+64 −0
Original line number Diff line number Diff line
@@ -312,6 +312,15 @@ static const struct snd_soc_acpi_adr_device rt1316_3_single_adr[] = {
	}
};

static const struct snd_soc_acpi_adr_device rt1318_1_single_adr[] = {
	{
		.adr = 0x000130025D131801,
		.num_endpoints = 1,
		.endpoints = &single_endpoint,
		.name_prefix = "rt1318"
	}
};

static const struct snd_soc_acpi_adr_device rt1318_1_group1_adr[] = {
	{
		.adr = 0x000130025D131801ull,
@@ -559,6 +568,49 @@ static const struct snd_soc_acpi_link_adr mtl_rt713_l0_rt1316_l12_rt1713_l3[] =
	{}
};

static const struct snd_soc_acpi_link_adr mtl_rt713_l0_rt1318_l1_rt1713_l3[] = {
	{
		.mask = BIT(0),
		.num_adr = ARRAY_SIZE(rt713_0_single_adr),
		.adr_d = rt713_0_single_adr,
	},
	{
		.mask = BIT(1),
		.num_adr = ARRAY_SIZE(rt1318_1_single_adr),
		.adr_d = rt1318_1_single_adr,
	},
	{
		.mask = BIT(3),
		.num_adr = ARRAY_SIZE(rt1713_3_single_adr),
		.adr_d = rt1713_3_single_adr,
	},
	{}
};

static const struct snd_soc_acpi_link_adr mtl_rt713_l0_rt1318_l12_rt1713_l3[] = {
	{
		.mask = BIT(0),
		.num_adr = ARRAY_SIZE(rt713_0_single_adr),
		.adr_d = rt713_0_single_adr,
	},
	{
		.mask = BIT(1),
		.num_adr = ARRAY_SIZE(rt1318_1_group1_adr),
		.adr_d = rt1318_1_group1_adr,
	},
	{
		.mask = BIT(2),
		.num_adr = ARRAY_SIZE(rt1318_2_group1_adr),
		.adr_d = rt1318_2_group1_adr,
	},
	{
		.mask = BIT(3),
		.num_adr = ARRAY_SIZE(rt1713_3_single_adr),
		.adr_d = rt1713_3_single_adr,
	},
	{}
};

static const struct snd_soc_acpi_link_adr mtl_rt713_l0_rt1316_l12[] = {
	{
		.mask = BIT(0),
@@ -697,6 +749,18 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_mtl_sdw_machines[] = {
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-rt713-l0-rt1316-l12-rt1713-l3.tplg",
	},
	{
		.link_mask = GENMASK(3, 0),
		.links = mtl_rt713_l0_rt1318_l12_rt1713_l3,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-rt713-l0-rt1318-l12-rt1713-l3.tplg",
	},
	{
		.link_mask = BIT(0) | BIT(1) | BIT(3),
		.links = mtl_rt713_l0_rt1318_l1_rt1713_l3,
		.drv_name = "sof_sdw",
		.sof_tplg_filename = "sof-mtl-rt713-l0-rt1318-l1-rt1713-l3.tplg",
	},
	{
		.link_mask = GENMASK(2, 0),
		.links = mtl_rt713_l0_rt1316_l12,