All of lore.kernel.org
 help / color / mirror / Atom feed
From: hasunpark@gmail.com
To: linux-sound@vger.kernel.org
Cc: Vijendar.Mukunda@amd.com, venkataprasad.potturu@amd.com,
	lgirdwood@gmail.com, broonie@kernel.org, perex@perex.cz,
	tiwai@suse.com, linux-kernel@vger.kernel.org,
	Hasun Park <hasunpark@gmail.com>
Subject: [PATCH 2/3] ASoC: amd: acp: add PX13 SoundWire machine link for rt721+tas2783x2
Date: Mon,  9 Mar 2026 00:16:53 +0900	[thread overview]
Message-ID: <20260308151654.29059-3-hasunpark@gmail.com> (raw)
In-Reply-To: <20260308151654.29059-1-hasunpark@gmail.com>

From: Hasun Park <hasunpark@gmail.com>

Add an ACP70 SoundWire machine entry for ASUS PX13
(HN7306EA/HN7306EAC) with rt721 and two TAS2783 amps on link1.

Describe rt721 with jack/DMIC endpoints on this platform and add
explicit left/right TAS2783 speaker endpoint mapping via name prefixes.

Signed-off-by: Hasun Park <hasunpark@gmail.com>
---
 sound/soc/amd/acp/amd-acp70-acpi-match.c | 61 ++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

diff --git a/sound/soc/amd/acp/amd-acp70-acpi-match.c b/sound/soc/amd/acp/amd-acp70-acpi-match.c
index 7a567ba02292..1ae43df5da6c 100644
--- a/sound/soc/amd/acp/amd-acp70-acpi-match.c
+++ b/sound/soc/amd/acp/amd-acp70-acpi-match.c
@@ -69,6 +69,28 @@ static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints[] = {
 	},
 };
 
+static const struct snd_soc_acpi_endpoint jack_dmic_endpoints[] = {
+	/* Jack Endpoint */
+	{
+		.num = 0,
+		.aggregated = 0,
+		.group_position = 0,
+		.group_id = 0,
+	},
+	/* DMIC Endpoint */
+	{
+		/*
+		 * rt721 endpoint #2 maps to AIF3 (internal DMIC capture).
+		 * Endpoint #1 is AIF2 amp path and is handled by external amps
+		 * on this platform.
+		 */
+		.num = 2,
+		.aggregated = 0,
+		.group_position = 0,
+		.group_id = 0,
+	},
+};
+
 static const struct snd_soc_acpi_adr_device rt712_vb_1_group1_adr[] = {
 	{
 		.adr = 0x000130025D071201ull,
@@ -563,6 +585,40 @@ static const struct snd_soc_acpi_link_adr acp70_rt1320_l0_rt722_l1[] = {
 	{}
 };
 
+static const struct snd_soc_acpi_adr_device rt721_l1u0_tas2783x2_l1u8b_adr[] = {
+	{
+		.adr = 0x000130025D072101ull,
+		/*
+		 * On this platform speakers are provided by two TAS2783 amps.
+		 * Keep rt721 as UAJ + DMIC only.
+		 */
+		.num_endpoints = ARRAY_SIZE(jack_dmic_endpoints),
+		.endpoints = jack_dmic_endpoints,
+		.name_prefix = "rt721",
+	},
+	{
+		.adr = 0x0001380102000001ull,
+		.num_endpoints = 1,
+		.endpoints = &spk_l_endpoint,
+		.name_prefix = "tas2783-1",
+	},
+	{
+		.adr = 0x00013B0102000001ull,
+		.num_endpoints = 1,
+		.endpoints = &spk_r_endpoint,
+		.name_prefix = "tas2783-2",
+	},
+};
+
+static const struct snd_soc_acpi_link_adr acp70_rt721_l1u0_tas2783x2_l1u8b[] = {
+	{
+		.mask = BIT(1),
+		.num_adr = ARRAY_SIZE(rt721_l1u0_tas2783x2_l1u8b_adr),
+		.adr_d = rt721_l1u0_tas2783x2_l1u8b_adr,
+	},
+	{}
+};
+
 struct snd_soc_acpi_mach snd_soc_acpi_amd_acp70_sdw_machines[] = {
 	{
 		.link_mask = BIT(0) | BIT(1),
@@ -650,6 +706,11 @@ struct snd_soc_acpi_mach snd_soc_acpi_amd_acp70_sdw_machines[] = {
 		.machine_check = snd_soc_acpi_amd_sdca_is_device_rt712_vb,
 		.drv_name = "amd_sdw",
 	},
+	{
+		.link_mask = BIT(1),
+		.links = acp70_rt721_l1u0_tas2783x2_l1u8b,
+		.drv_name = "amd_sdw",
+	},
 	{},
 };
 EXPORT_SYMBOL(snd_soc_acpi_amd_acp70_sdw_machines);
-- 
2.53.0


  parent reply	other threads:[~2026-03-08 15:18 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-08 15:16 [PATCH 0/3] ASoC: amd: acp: PX13 ACP70 config and machine quirks hasunpark
2026-03-08 15:16 ` [PATCH 1/3] ASoC: amd: acp: add DMI override for ACP70 flag hasunpark
2026-03-09  5:33   ` Mukunda,Vijendar
2026-03-09 11:34     ` Mark Brown
2026-03-09 15:31       ` Mario Limonciello
2026-03-09 15:48         ` Mark Brown
2026-03-08 15:16 ` hasunpark [this message]
2026-03-08 15:16 ` [PATCH 3/3] ASoC: amd: acp: add ASUS HN7306EA quirk for legacy SDW machine hasunpark
2026-03-09  5:37   ` Mukunda,Vijendar
2026-03-11 17:21     ` Mark Brown
2026-03-11 17:32       ` Mukunda,Vijendar
2026-03-12  6:49         ` Mukunda,Vijendar
2026-03-12 13:06           ` Mark Brown
2026-03-15 20:20             ` Eric Naim
2026-03-15 23:53               ` Mark Brown
2026-03-16  2:30                 ` Mario Limonciello
2026-03-16  3:50                   ` Eric Naim
2026-03-16 15:46           ` Hasun Park
2026-03-17  4:00             ` Mukunda,Vijendar
2026-03-17 17:04               ` Mukunda,Vijendar
2026-03-17 17:22                 ` Hasun Park
2026-03-19 16:33   ` [PATCH v2] " Hasun Park
2026-03-19 16:35     ` Mark Brown
2026-03-20 12:53     ` Mark Brown
2026-03-16  0:14 ` (subset) [PATCH 0/3] ASoC: amd: acp: PX13 ACP70 config and machine quirks Mark Brown
2026-03-16 16:47   ` Hasun Park
2026-03-16 17:45     ` Mark Brown
2026-03-16 17:52 ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260308151654.29059-3-hasunpark@gmail.com \
    --to=hasunpark@gmail.com \
    --cc=Vijendar.Mukunda@amd.com \
    --cc=broonie@kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.com \
    --cc=venkataprasad.potturu@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.