diff mbox series

ASoC: Intel: soc-acpi-intel-ptl-match: Add cs42l43 support

Message ID 20250310080712.58911-1-yung-chuan.liao@linux.intel.com (mailing list archive)
State Superseded
Headers show
Series ASoC: Intel: soc-acpi-intel-ptl-match: Add cs42l43 support | expand

Commit Message

Bard Liao March 10, 2025, 8:07 a.m. UTC
From: Naveen Manohar <naveen.m@intel.com>

Patch adds driver data & match table for cs42l43
multi-function codec on PTL-RVP at sdw link3.

Signed-off-by: Naveen Manohar <naveen.m@intel.com>
Reviewed-by: Liam Girdwood <liam.r.girdwood@intel.com>
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
---
 .../intel/common/soc-acpi-intel-ptl-match.c   | 51 +++++++++++++++++++
 1 file changed, 51 insertions(+)

Comments

Mark Brown March 10, 2025, 3:17 p.m. UTC | #1
On Mon, Mar 10, 2025 at 04:07:12PM +0800, Bard Liao wrote:
> From: Naveen Manohar <naveen.m@intel.com>
> 
> Patch adds driver data & match table for cs42l43
> multi-function codec on PTL-RVP at sdw link3.

This breaks the build:

build/stage/linux/sound/soc/intel/common/soc-acpi-intel-ptl-match.c:583:18: err
or: ‘struct snd_soc_acpi_mach’ has no member named ‘get_function_tplg_files’
  583 |                 .get_function_tplg_files = sof_sdw_get_tplg_files,
      |                  ^~~~~~~~~~~~~~~~~~~~~~~
/build/stage/linux/sound/soc/intel/common/soc-acpi-intel-ptl-match.c:583:44: err
or: ‘sof_sdw_get_tplg_files’ undeclared here (not in a function)
  583 |                 .get_function_tplg_files = sof_sdw_get_tplg_files,
      |                                            ^~~~~~~~~~~~~~~~~~~~~~
Liao, Bard March 11, 2025, 12:32 a.m. UTC | #2
> -----Original Message-----
> From: Mark Brown <broonie@kernel.org>
> Sent: Monday, March 10, 2025 11:18 PM
> To: Bard Liao <yung-chuan.liao@linux.intel.com>
> Cc: tiwai@suse.de; linux-sound@vger.kernel.org; pierre-louis.bossart@linux.dev;
> Liao, Bard <bard.liao@intel.com>
> Subject: Re: [PATCH] ASoC: Intel: soc-acpi-intel-ptl-match: Add cs42l43 support
> 
> On Mon, Mar 10, 2025 at 04:07:12PM +0800, Bard Liao wrote:
> > From: Naveen Manohar <naveen.m@intel.com>
> >
> > Patch adds driver data & match table for cs42l43
> > multi-function codec on PTL-RVP at sdw link3.
> 
> This breaks the build:

Sorry about that. Fixed in v2.

> 
> build/stage/linux/sound/soc/intel/common/soc-acpi-intel-ptl-match.c:583:18:
> err
> or: ‘struct snd_soc_acpi_mach’ has no member named ‘get_function_tplg_files’
>   583 |                 .get_function_tplg_files = sof_sdw_get_tplg_files,
>       |                  ^~~~~~~~~~~~~~~~~~~~~~~
> /build/stage/linux/sound/soc/intel/common/soc-acpi-intel-ptl-match.c:583:44:
> err
> or: ‘sof_sdw_get_tplg_files’ undeclared here (not in a function)
>   583 |                 .get_function_tplg_files = sof_sdw_get_tplg_files,
>       |                                            ^~~~~~~~~~~~~~~~~~~~~~
Mark Brown March 11, 2025, 4:07 p.m. UTC | #3
On Mon, 10 Mar 2025 16:07:12 +0800, Bard Liao wrote:
> Patch adds driver data & match table for cs42l43
> multi-function codec on PTL-RVP at sdw link3.
> 
> 

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[1/1] ASoC: Intel: soc-acpi-intel-ptl-match: Add cs42l43 support
      commit: ac5b4a24f16f2f56b5cc5092969930b867274edc

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark
diff mbox series

Patch

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 a07526eb802b..eedce68a0424 100644
--- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
+++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c
@@ -185,6 +185,33 @@  static const struct snd_soc_acpi_endpoint cs42l43_amp_spkagg_endpoints[] = {
 	},
 };
 
+static const struct snd_soc_acpi_endpoint cs42l43_endpoints[] = {
+	{ /* Jack Playback Endpoint */
+		.num = 0,
+		.aggregated = 0,
+		.group_position = 0,
+		.group_id = 0,
+	},
+	{ /* DMIC Capture Endpoint */
+		.num = 1,
+		.aggregated = 0,
+		.group_position = 0,
+		.group_id = 0,
+	},
+	{ /* Jack Capture Endpoint */
+		.num = 2,
+		.aggregated = 0,
+		.group_position = 0,
+		.group_id = 0,
+	},
+	{ /* Speaker Playback Endpoint */
+		.num = 3,
+		.aggregated = 0,
+		.group_position = 0,
+		.group_id = 0,
+	},
+};
+
 static const struct snd_soc_acpi_adr_device cs42l43_2_adr[] = {
 	{
 		.adr = 0x00023001fa424301ull,
@@ -236,6 +263,15 @@  static const struct snd_soc_acpi_adr_device cs35l56_3_3amp_adr[] = {
 	}
 };
 
+static const struct snd_soc_acpi_adr_device cs42l43_3_adr[] = {
+	{
+		.adr = 0x00033001FA424301ull,
+		.num_endpoints = ARRAY_SIZE(cs42l43_endpoints),
+		.endpoints = cs42l43_endpoints,
+		.name_prefix = "cs42l43"
+	}
+};
+
 static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = {
 	{
 		.adr = 0x000030025D071101ull,
@@ -390,6 +426,14 @@  static const struct snd_soc_acpi_link_adr ptl_cs42l43_l2_cs35l56x6_l13[] = {
 	{}
 };
 
+static const struct snd_soc_acpi_link_adr ptl_cs42l43_l3[] = {
+	{
+		.mask = BIT(3),
+		.num_adr = ARRAY_SIZE(cs42l43_3_adr),
+		.adr_d = cs42l43_3_adr,
+	}
+};
+
 static const struct snd_soc_acpi_link_adr ptl_rt722_only[] = {
 	{
 		.mask = BIT(0),
@@ -531,6 +575,13 @@  struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = {
 		.drv_name = "sof_sdw",
 		.sof_tplg_filename = "sof-ptl-rt711.tplg",
 	},
+	{
+		.link_mask = BIT(3),
+		.links = ptl_cs42l43_l3,
+		.drv_name = "sof_sdw",
+		.sof_tplg_filename = "sof-ptl-cs42l43-l3.tplg",
+		.get_function_tplg_files = sof_sdw_get_tplg_files,
+	},
 	{
 		.link_mask = BIT(3),
 		.links = ptl_rt721_l3,