* [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support
@ 2026-06-28 12:25 Baojun Xu
2026-06-29 2:03 ` Liao, Bard
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Baojun Xu @ 2026-06-28 12:25 UTC (permalink / raw)
To: broonie
Cc: tiwai, andriy.shevchenko, 13916275206, alsa-devel, shenghao-ding,
baojun.xu, linux-sound, linux-kernel, k-yi, henry.lo, robinchen,
niranjan.hy
Added tas2783 support in some projects.
Signed-off-by: Baojun Xu <baojun.xu@ti.com>
---
sound/soc/amd/acp/amd-acp70-acpi-match.c | 64 ++++++++++++++++
.../intel/common/soc-acpi-intel-ptl-match.c | 74 +++++++++++++++++++
2 files changed, 138 insertions(+)
diff --git a/sound/soc/amd/acp/amd-acp70-acpi-match.c b/sound/soc/amd/acp/amd-acp70-acpi-match.c
index 18f2918d4ada..a04075730f4f 100644
--- a/sound/soc/amd/acp/amd-acp70-acpi-match.c
+++ b/sound/soc/amd/acp/amd-acp70-acpi-match.c
@@ -45,6 +45,21 @@ static const struct snd_soc_acpi_endpoint spk_3_endpoint = {
.group_id = 1
};
+static const struct snd_soc_acpi_endpoint tas2783_endpoints[] = {
+ { /*Playback Endpoint*/
+ .num = 0,
+ .aggregated = 0,
+ .group_position = 0,
+ .group_id = 0,
+ },
+ { /*Mic Capture Endpoint*/
+ .num = 1,
+ .aggregated = 0,
+ .group_position = 0,
+ .group_id = 0,
+ },
+};
+
static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints[] = {
/* Jack Endpoint */
{
@@ -91,6 +106,15 @@ static const struct snd_soc_acpi_endpoint jack_dmic_endpoints[] = {
},
};
+static const struct snd_soc_acpi_adr_device tas2783_0_adr[] = {
+ {
+ .adr = 0x0000300102278301ull,
+ .num_endpoints = ARRAY_SIZE(tas2783_endpoints),
+ .endpoints = tas2783_endpoints,
+ .name_prefix = "tas2783"
+ }
+};
+
static const struct snd_soc_acpi_adr_device rt712_vb_1_group1_adr[] = {
{
.adr = 0x000130025D071201ull,
@@ -406,6 +430,15 @@ static const struct snd_soc_acpi_link_adr acp70_cs35l63x4_l0u0246[] = {
{}
};
+static const struct snd_soc_acpi_link_adr tas2783_l0[] = {
+ {
+ .mask = BIT(0),
+ .num_adr = ARRAY_SIZE(tas2783_0_adr),
+ .adr_d = tas2783_0_adr,
+ },
+ {}
+};
+
static const struct snd_soc_acpi_link_adr acp70_cs42l43_l0u1[] = {
{
.mask = BIT(0),
@@ -553,6 +586,32 @@ static const struct snd_soc_acpi_link_adr acp70_rt722_l0_rt1320_l1[] = {
{}
};
+static const struct snd_soc_acpi_adr_device tas2783_2_adr[] = {
+ {
+ /* left */
+ .adr = 0x0000390102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_r_endpoint,
+ .name_prefix = "tas2783-1"
+ },
+ {
+ /* right */
+ .adr = 0x00003c0102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_r_endpoint,
+ .name_prefix = "tas2783-2"
+ },
+};
+
+static const struct snd_soc_acpi_link_adr acp70_tas2783_2[] = {
+ {
+ .mask = BIT(0),
+ .num_adr = ARRAY_SIZE(tas2783_2_adr),
+ .adr_d = tas2783_2_adr,
+ },
+ {}
+};
+
static const struct snd_soc_acpi_adr_device rt1320_0_single_adr[] = {
{
.adr = 0x000030025D132001ull,
@@ -659,6 +718,11 @@ static const struct snd_soc_acpi_link_adr acp70_rt721_only[] = {
};
struct snd_soc_acpi_mach snd_soc_acpi_amd_acp70_sdw_machines[] = {
+ {
+ .link_mask = BIT(0),
+ .links = acp70_tas2783_2,
+ .drv_name = "amd_sdw",
+ },
{
.link_mask = BIT(0) | BIT(1),
.links = acp70_rt1320_l0_rt722_l1,
diff --git a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
index f7694b2a2b02..6b27b09d9f98 100644
--- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
+++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
@@ -301,6 +301,68 @@ static const struct snd_soc_acpi_adr_device rt1320_3_group2_adr[] = {
}
};
+/* For 0x8EB4103C. */
+static const struct snd_soc_acpi_adr_device tas2783_0_adr[] = {
+ {
+ .adr = 0x00013A0102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_l_endpoint,
+ .name_prefix = "tas2783-1"
+ },
+ {
+ .adr = 0x00013D0102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_r_endpoint,
+ .name_prefix = "tas2783-2"
+ },
+ {
+ .adr = 0x0002390102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_l_endpoint,
+ .name_prefix = "tas2783-3"
+ },
+ {
+ .adr = 0x00023C0102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_r_endpoint,
+ .name_prefix = "tas2783-4"
+ }
+};
+
+/* For 0x8EA4103C, 0x8EA5103C, 0x8EA6103C, 0x8EA8103C. */
+static const struct snd_soc_acpi_adr_device tas2783_1_adr[] = {
+ {
+ .adr = 0x00023C0102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_l_endpoint,
+ .name_prefix = "tas2783-1"
+ },
+ {
+ .adr = 0x0002390102000001ull,
+ .num_endpoints = 1,
+ .endpoints = &spk_r_endpoint,
+ .name_prefix = "tas2783-2"
+ }
+};
+
+static const struct snd_soc_acpi_link_adr tas2783_link0[] = {
+ {
+ .mask = BIT(1),
+ .num_adr = ARRAY_SIZE(tas2783_0_adr),
+ .adr_d = tas2783_0_adr,
+ },
+ {}
+};
+
+static const struct snd_soc_acpi_link_adr tas2783_link1[] = {
+ {
+ .mask = BIT(1),
+ .num_adr = ARRAY_SIZE(tas2783_1_adr),
+ .adr_d = tas2783_1_adr,
+ },
+ {}
+};
+
static const struct snd_soc_acpi_link_adr ptl_cs42l43_agg_l3_cs35l56_l2[] = {
{
.mask = BIT(3),
@@ -464,6 +526,18 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = {
.drv_name = "sof_sdw",
.sof_tplg_filename = "sof-ptl-rt722.tplg", /* Reuse the existing tplg file */
},
+ {
+ .link_mask = BIT(1) | BIT(2),
+ .links = tas2783_link0,
+ .drv_name = "sof_sdw",
+ .sof_tplg_filename = "sof-ptl-tas2783-2ch.tplg",
+ },
+ {
+ .link_mask = BIT(2),
+ .links = tas2783_link1,
+ .drv_name = "sof_sdw",
+ .sof_tplg_filename = "sof-ptl-tas2783-2ch.tplg",
+ },
{
.link_mask = BIT(1) | BIT(2) | BIT(3),
.links = ptl_sdw_rt713_vb_l2_rt1320_l13,
--
2.25.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* RE: [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support
2026-06-28 12:25 [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support Baojun Xu
@ 2026-06-29 2:03 ` Liao, Bard
2026-06-29 6:15 ` Andy Shevchenko
2026-06-29 8:16 ` Cezary Rojewski
2 siblings, 0 replies; 4+ messages in thread
From: Liao, Bard @ 2026-06-29 2:03 UTC (permalink / raw)
To: Baojun Xu, broonie@kernel.org
Cc: tiwai@suse.de, andriy.shevchenko@linux.intel.com,
13916275206@139.com, alsa-devel@alsa-project.org,
shenghao-ding@ti.com, linux-sound@vger.kernel.org,
linux-kernel@vger.kernel.org, Yi, ChEN KAI, Lo, Henry,
robinchen@ti.com, Holalu Yogendra, Niranjan
> -----Original Message-----
> From: Baojun Xu <baojun.xu@ti.com>
> Sent: Sunday, June 28, 2026 8:26 PM
> To: broonie@kernel.org
> Cc: tiwai@suse.de; andriy.shevchenko@linux.intel.com;
> 13916275206@139.com; alsa-devel@alsa-project.org; shenghao-
> ding@ti.com; baojun.xu@ti.com; linux-sound@vger.kernel.org; linux-
> kernel@vger.kernel.org; Yi, ChEN KAI <k-yi@ti.com>; Lo, Henry
> <henry.lo@ti.com>; robinchen@ti.com; Holalu Yogendra, Niranjan
> <niranjan.hy@ti.com>
> Subject: [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support
>
> Added tas2783 support in some projects.
>
> Signed-off-by: Baojun Xu <baojun.xu@ti.com>
> ---
> sound/soc/amd/acp/amd-acp70-acpi-match.c | 64 ++++++++++++++++
"Intel" is added to the title, but the commit changes the AMD file, too
> .../intel/common/soc-acpi-intel-ptl-match.c | 74 +++++++++++++++++++
> 2 files changed, 138 insertions(+)
>
> diff --git a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
> b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
> index f7694b2a2b02..6b27b09d9f98 100644
> --- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
> +++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
> static const struct snd_soc_acpi_link_adr ptl_cs42l43_agg_l3_cs35l56_l2[] = {
> {
> .mask = BIT(3),
> @@ -464,6 +526,18 @@ struct snd_soc_acpi_mach
> snd_soc_acpi_intel_ptl_sdw_machines[] = {
> .drv_name = "sof_sdw",
> .sof_tplg_filename = "sof-ptl-rt722.tplg", /* Reuse the existing
> tplg file */
> },
> + {
> + .link_mask = BIT(1) | BIT(2),
> + .links = tas2783_link0,
> + .drv_name = "sof_sdw",
> + .sof_tplg_filename = "sof-ptl-tas2783-2ch.tplg",
> + },
> + {
> + .link_mask = BIT(2),
> + .links = tas2783_link1,
> + .drv_name = "sof_sdw",
> + .sof_tplg_filename = "sof-ptl-tas2783-2ch.tplg",
> + },
Is there any particular reason that you need to add the mach table for
the audio configurations? For Intel PTL+ platforms, the SOF driver will
generate the acpi mach table based on the reported acpi table and use
function topology. That means we don't need to create new acpi mach
table and topologies for new audio configurations.
> {
> .link_mask = BIT(1) | BIT(2) | BIT(3),
> .links = ptl_sdw_rt713_vb_l2_rt1320_l13,
> --
> 2.25.1
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support
2026-06-28 12:25 [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support Baojun Xu
2026-06-29 2:03 ` Liao, Bard
@ 2026-06-29 6:15 ` Andy Shevchenko
2026-06-29 8:16 ` Cezary Rojewski
2 siblings, 0 replies; 4+ messages in thread
From: Andy Shevchenko @ 2026-06-29 6:15 UTC (permalink / raw)
To: Baojun Xu
Cc: broonie, tiwai, 13916275206, alsa-devel, shenghao-ding,
linux-sound, linux-kernel, k-yi, henry.lo, robinchen, niranjan.hy
On Sun, Jun 28, 2026 at 08:25:43PM +0800, Baojun Xu wrote:
> Added tas2783 support in some projects.
...
> +static const struct snd_soc_acpi_adr_device tas2783_0_adr[] = {
> + {
> + .adr = 0x0000300102278301ull,
> + .num_endpoints = ARRAY_SIZE(tas2783_endpoints),
> + .endpoints = tas2783_endpoints,
> + .name_prefix = "tas2783"
Leave trailing comma for the non-terminator entries.
> + }
> +};
...
> +static const struct snd_soc_acpi_adr_device tas2783_2_adr[] = {
> + {
> + /* left */
> + .adr = 0x0000390102000001ull,
> + .num_endpoints = 1,
> + .endpoints = &spk_r_endpoint,
> + .name_prefix = "tas2783-1"
Ditto.
> + },
> + {
> + /* right */
> + .adr = 0x00003c0102000001ull,
> + .num_endpoints = 1,
> + .endpoints = &spk_r_endpoint,
> + .name_prefix = "tas2783-2"
Ditto.
> + },
> +};
...
...and so on for Intel case.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support
2026-06-28 12:25 [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support Baojun Xu
2026-06-29 2:03 ` Liao, Bard
2026-06-29 6:15 ` Andy Shevchenko
@ 2026-06-29 8:16 ` Cezary Rojewski
2 siblings, 0 replies; 4+ messages in thread
From: Cezary Rojewski @ 2026-06-29 8:16 UTC (permalink / raw)
To: Baojun Xu
Cc: tiwai, andriy.shevchenko, 13916275206, alsa-devel, shenghao-ding,
linux-sound, linux-kernel, k-yi, henry.lo, robinchen, niranjan.hy,
Mark Brown
On 6/28/2026 2:25 PM, Baojun Xu wrote:
> Added tas2783 support in some projects.
No patch "added" anything. The patch is a proposal to _add_. Please
rephrase.
Next, why is Intel's soc-acpi-ptl-match altered when it seems the board
is supported only by the AMD component? Commit's title does not help or
clarify the situation either.
>
> Signed-off-by: Baojun Xu <baojun.xu@ti.com>
> ---
> sound/soc/amd/acp/amd-acp70-acpi-match.c | 64 ++++++++++++++++
> .../intel/common/soc-acpi-intel-ptl-match.c | 74 +++++++++++++++++++
> 2 files changed, 138 insertions(+)
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-06-29 8:16 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-28 12:25 [PATCH v1] ASoC: Intel: soc-acpi-ptl-match: add tas2783 support Baojun Xu
2026-06-29 2:03 ` Liao, Bard
2026-06-29 6:15 ` Andy Shevchenko
2026-06-29 8:16 ` Cezary Rojewski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox