]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: amd: acp: amd-acp70-acpi-match: Add RT1320 & RT722 combination soundwire machine
authorVijendar Mukunda <Vijendar.Mukunda@amd.com>
Fri, 7 Feb 2025 06:28:18 +0000 (11:58 +0530)
committerMark Brown <broonie@kernel.org>
Fri, 7 Feb 2025 13:33:59 +0000 (13:33 +0000)
This patch adds below machine configuration for the ACP7.0 & ACP7.1
platforms.

Link 0: RT722 codec with three endpoints: Headset, Speaker, and DMIC.
Link 1: RT1320 amplifier.

Note:
The Speaker endpoint on the RT722 codec is not used.

Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://patch.msgid.link/20250207062819.1527184-25-Vijendar.Mukunda@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/amd/acp/Kconfig
sound/soc/amd/acp/amd-acp70-acpi-match.c

index 03f3fcbba5af15930acb55ee73b07722f1ee78a8..53793ec7c7b49e41b5c2dde311b114867b5e8a48 100644 (file)
@@ -156,6 +156,7 @@ config SND_SOC_AMD_LEGACY_SDW_MACH
        select SND_SOC_RT712_SDCA_SDW
        select SND_SOC_RT712_SDCA_DMIC_SDW
        select SND_SOC_RT1316_SDW
+       select SND_SOC_RT1320_SDW
        select SND_SOC_RT715_SDW
        select SND_SOC_RT715_SDCA_SDW
        select SND_SOC_RT722_SDCA_SDW
index fe166015dc29d3dc889e1dc52a6152749769f480..e87ccfeee5bdf49e86e8386ee7f39fc3a5d4be34 100644 (file)
@@ -103,6 +103,15 @@ static const struct snd_soc_acpi_adr_device rt722_0_single_adr[] = {
        }
 };
 
+static const struct snd_soc_acpi_adr_device rt1320_1_single_adr[] = {
+       {
+               .adr = 0x000130025D132001ull,
+               .num_endpoints = 1,
+               .endpoints = &single_endpoint,
+               .name_prefix = "rt1320-1"
+       }
+};
+
 static const struct snd_soc_acpi_link_adr acp70_rt722_only[] = {
        {
                .mask = BIT(0),
@@ -112,7 +121,26 @@ static const struct snd_soc_acpi_link_adr acp70_rt722_only[] = {
        {}
 };
 
+static const struct snd_soc_acpi_link_adr acp70_rt722_l0_rt1320_l1[] = {
+       {
+               .mask = BIT(0),
+               .num_adr = ARRAY_SIZE(rt722_0_single_adr),
+               .adr_d = rt722_0_single_adr,
+       },
+       {
+               .mask = BIT(1),
+               .num_adr = ARRAY_SIZE(rt1320_1_single_adr),
+               .adr_d = rt1320_1_single_adr,
+       },
+       {}
+};
+
 struct snd_soc_acpi_mach snd_soc_acpi_amd_acp70_sdw_machines[] = {
+       {
+               .link_mask = BIT(0) | BIT(1),
+               .links = acp70_rt722_l0_rt1320_l1,
+               .drv_name = "amd_sdw",
+       },
        {
                .link_mask = BIT(0),
                .links = acp70_rt722_only,