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: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Pierre-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: Mark Brown <broonie@kernel.org>
This commit is contained in:
Pierre-Louis Bossart 2024-04-26 10:21:14 -05:00 committed by Mark Brown
parent 69d0f88b9a
commit 02e6f7cb48
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -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,