From patchwork Wed Mar 5 13:54:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002757 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4B0F624633D for ; Wed, 5 Mar 2025 13:55:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182905; cv=none; b=ihlUYRbEwUNzzuCAiOHi9JW3asaTqad9dP4p+PWUVIOG4MRN1Dj7qOfVDtSlO5TMr8f7ygMxQFEExkxhxIAxo0EKy8HFb967oJM66JcfdYAcj7eKkWIRuDM3yLo3HkiqIDxbf+fTKWSvuEL+edTUyyw2cEqqhN5+kk8fvoeiNdE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182905; c=relaxed/simple; bh=xKZL2JbUX25WSqXUL157VYzfcc9xprOsRSTmXHqCVZc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=sWUolQtQ0KDvXPcbRkKrBZSF5uy8wxGQ62G9iqHlBL4on/PzTlP5reMmmi0uzxqaLTBnpJ2YpBPMAdtSIunMiPrvEzpEG2kb2WMZmvr0ct0gRi1ieaAEQEDBLDbS/nNMw48nSEHWcsyB9O1q+ZW74cgoeeVuzlBjFVARikAjG0k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=FgDOfEtt; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="FgDOfEtt" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182904; x=1772718904; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=xKZL2JbUX25WSqXUL157VYzfcc9xprOsRSTmXHqCVZc=; b=FgDOfEttnuwavY08pU3envsmYOW/fBo5ByB+Ly7FCxiMgqoRHgLRxoze cR9TQyKi46s9qaTV7tYQvVrjx4GcB/rrKZ1i7yg9BaDI96Qj3gAItvFkK SZp95DZq6mMNYyZEDffGPfQDPTTLF5RoghVJrWLYt9WcHPfPDbcifH147 MO1uS00Dg+f5lUTPREieB9BKP0EtOZlTVD8GLUwxmwpVm4VIxjTspoLuG /qRI+F4EjhYGr7rdrY+tfCm4Tpg4zLQsvWIpJosZg7cKbZtCBskLN+Klo Tj3qMvo+QKdL1vljHSa4/bAugeQH6Trkk5C4fBorGVb84kVHGEMirkaTY Q==; X-CSE-ConnectionGUID: iarHYRZTSNi/cPMb5hppBA== X-CSE-MsgGUID: c66RLcaOQq6s1EAo9VRlAg== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558062" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558062" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:04 -0800 X-CSE-ConnectionGUID: IuildJROSzae7eQUQ9j63w== X-CSE-MsgGUID: vxeWAX9WTziNCWsxsv4FHQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847027" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:00 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 1/9] ASoC: Intel: adl: add 2xrt1316 audio configuration Date: Wed, 5 Mar 2025 21:54:35 +0800 Message-ID: <20250305135443.201884-2-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 That is a speaker only configuration and 2 rt1316 are on link 0 and 2. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood Reviewed-by: Péter Ujfalusi --- .../intel/common/soc-acpi-intel-adl-match.c | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/sound/soc/intel/common/soc-acpi-intel-adl-match.c b/sound/soc/intel/common/soc-acpi-intel-adl-match.c index bb1324fb588e..a68efbe98948 100644 --- a/sound/soc/intel/common/soc-acpi-intel-adl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-adl-match.c @@ -214,6 +214,15 @@ static const struct snd_soc_acpi_adr_device rt1316_1_group2_adr[] = { } }; +static const struct snd_soc_acpi_adr_device rt1316_2_group2_adr[] = { + { + .adr = 0x000232025D131601ull, + .num_endpoints = 1, + .endpoints = &spk_r_endpoint, + .name_prefix = "rt1316-2" + } +}; + static const struct snd_soc_acpi_adr_device rt1316_1_single_adr[] = { { .adr = 0x000130025D131601ull, @@ -547,6 +556,20 @@ static const struct snd_soc_acpi_link_adr adl_chromebook_base[] = { {} }; +static const struct snd_soc_acpi_link_adr adl_sdw_rt1316_link02[] = { + { + .mask = BIT(0), + .num_adr = ARRAY_SIZE(rt1316_0_group2_adr), + .adr_d = rt1316_0_group2_adr, + }, + { + .mask = BIT(2), + .num_adr = ARRAY_SIZE(rt1316_2_group2_adr), + .adr_d = rt1316_2_group2_adr, + }, + {} +}; + static const struct snd_soc_acpi_codecs adl_max98357a_amp = { .num_codecs = 1, .codecs = {"MX98357A"} @@ -749,6 +772,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_adl_sdw_machines[] = { .drv_name = "sof_sdw", .sof_tplg_filename = "sof-adl-sdw-max98373-rt5682.tplg", }, + { + .link_mask = BIT(0) | BIT(2), + .links = adl_sdw_rt1316_link02, + .drv_name = "sof_sdw", + .sof_tplg_filename = "sof-adl-rt1316-l02.tplg", + }, {}, }; EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_adl_sdw_machines); From patchwork Wed Mar 5 13:54:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002758 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C9036243955 for ; Wed, 5 Mar 2025 13:55:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182910; cv=none; b=V0NKdT6/rAOFEdADXm0nORis3OKGaJGkiDlYjjou8kfTlaw3bWnODugXubiJis9WYU2N8UM+hk+++K41s27vPUH4QF1EPMaXmBOq7jOLHdK6cPtRbMV7DuQBF1L9QBWcxtr23aH9mPAE9brAIgSV2GwLKPT1Pmmcf973knSgNLA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182910; c=relaxed/simple; bh=+b3H6epFoTv3BlWDbh6+N3IdH3Y/bxCTwIBFJx4pRPQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aH6AGsotoVxHAU5w/wz95uCP40MKydTvzsHucKzGQz9UQrr0K/ty9vKGfnzw/7qO5/pTMeoKYYZ/R1SHrH0cbXI7S2z/59GYTVa3SJyLKG0pyEGLEWM1fQU5cQ5igYa4ksSeIRf5+R9l0C7gG5Bpoc7noCbesIeRTRQZrC3Af8k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=mxRTive9; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="mxRTive9" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182908; x=1772718908; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+b3H6epFoTv3BlWDbh6+N3IdH3Y/bxCTwIBFJx4pRPQ=; b=mxRTive9SVEMryeZrvB0tTz213/UwDz0jLatHfiHbfhMHY3P5xtNx7UA hA8eeweyn1tkIGU5MRNBzb79ZWzpvZCebAt5+cbtIzAH+wEcqwr39FUTP ZMInuoJUdKS0SArY9UOCXl7ZjOXSyeJqfnDGZyNXxEUhnn5loUA/VJpuE YQnyMT3O+Uv85xbs8+wtMN0mz06LtBbVll7gnnbnz0V0vgyC4EINftOiV rNWrGWgNZ1817uMYW2sNAgmegbOQ3w9fQaRUSW9xA15Fy3m9zJx4KpiDC 9rqSJtNnPOcEeDyca23asqh63xvWXSTH040PHPyf73U7hVk+rE64xynIV w==; X-CSE-ConnectionGUID: U6ICKb85R2qDz0zMOvK0dw== X-CSE-MsgGUID: 16MXviqqRI+23eZGaq5b8w== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558069" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558069" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:08 -0800 X-CSE-ConnectionGUID: ez60qBpcSNKAyLy7s2yoZQ== X-CSE-MsgGUID: 80Ka8IoeRmeAG6+i2Yq6mw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847059" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:05 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 2/9] ASoC: Intel: soc-acpi-intel-ptl-match: add rt712_vb_l3_rt1320_l2 support Date: Wed, 5 Mar 2025 21:54:36 +0800 Message-ID: <20250305135443.201884-3-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 From: Peter Ujfalusi Add rt712_vb on SDW link 3 and 1 rt1320 on SDW link 2 configuration support. Signed-off-by: Peter Ujfalusi Reviewed-by: Liam Girdwood Reviewed-by: Ranjani Sridharan Signed-off-by: Bard Liao --- .../intel/common/soc-acpi-intel-ptl-match.c | 39 +++++++++++++++++++ 1 file changed, 39 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 dd7993b76dee..8807acb92ecf 100644 --- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c @@ -134,6 +134,15 @@ static const struct snd_soc_acpi_adr_device rt712_vb_2_group1_adr[] = { } }; +static const struct snd_soc_acpi_adr_device rt712_vb_3_group1_adr[] = { + { + .adr = 0x000330025D071201ull, + .num_endpoints = ARRAY_SIZE(jack_amp_g1_dmic_endpoints_endpoints), + .endpoints = jack_amp_g1_dmic_endpoints_endpoints, + .name_prefix = "rt712" + } +}; + static const struct snd_soc_acpi_adr_device rt713_vb_2_adr[] = { { .adr = 0x000230025d071301ull, @@ -206,6 +215,15 @@ static const struct snd_soc_acpi_adr_device rt1320_1_group2_adr[] = { } }; +static const struct snd_soc_acpi_adr_device rt1320_2_group1_adr[] = { + { + .adr = 0x000230025D132001ull, + .num_endpoints = 1, + .endpoints = &spk_r_endpoint, + .name_prefix = "rt1320-1" + } +}; + static const struct snd_soc_acpi_adr_device rt1320_3_group2_adr[] = { { .adr = 0x000330025D132001ull, @@ -284,6 +302,20 @@ static const struct snd_soc_acpi_link_adr ptl_sdw_rt712_vb_l2_rt1320_l1[] = { {} }; +static const struct snd_soc_acpi_link_adr ptl_sdw_rt712_vb_l3_rt1320_l2[] = { + { + .mask = BIT(3), + .num_adr = ARRAY_SIZE(rt712_vb_3_group1_adr), + .adr_d = rt712_vb_3_group1_adr, + }, + { + .mask = BIT(2), + .num_adr = ARRAY_SIZE(rt1320_2_group1_adr), + .adr_d = rt1320_2_group1_adr, + }, + {} +}; + /* this table is used when there is no I2S codec present */ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = { /* mockup tests need to be first */ @@ -342,6 +374,13 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = { .machine_check = snd_soc_acpi_intel_sdca_is_device_rt712_vb, .sof_tplg_filename = "sof-ptl-rt712-l2-rt1320-l1.tplg" }, + { + .link_mask = BIT(2) | BIT(3), + .links = ptl_sdw_rt712_vb_l3_rt1320_l2, + .drv_name = "sof_sdw", + .machine_check = snd_soc_acpi_intel_sdca_is_device_rt712_vb, + .sof_tplg_filename = "sof-ptl-rt712-l3-rt1320-l2.tplg" + }, { .link_mask = BIT(1) | BIT(2) | BIT(3), .links = ptl_sdw_rt713_vb_l2_rt1320_l13, From patchwork Wed Mar 5 13:54:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002759 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 341ED2475C8 for ; Wed, 5 Mar 2025 13:55:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182914; cv=none; b=DGBN+kT0zXxCcHQ3YRdDQYVmCMRILT1KETLyrwrpf/BGChbPTjV68gvKGvt752ZR9IDUNv4IQ8ufaYUou1L0Dx63IszFoJCx7NIgvOqOt9srl57F9k9G3CGopwUjJF+XgDmumb1/ZfespuOheiisSPsaUeLLXhd/e2pquyLD+8E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182914; c=relaxed/simple; bh=Yi+lpP+jSS92DMEyKQn5/td+ZOpuY/I313Hk1xbk7r4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VrNtrqETUdSDSkgTwkbK/X8219qRj02igK5gyGrUuCZuRw5Ah6jC7F8mJo/Oo3UQNOdRIAbvyVZejvetpgZAOqdkHtawe8l+PUt04ipaBqCW9J3r2up9dtSTF1Ofq0a2xYkBDpbr3STELw2d5Qor2IKRqp4u0o/iuGfUBUEUecE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=DlR6cdCa; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="DlR6cdCa" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182913; x=1772718913; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Yi+lpP+jSS92DMEyKQn5/td+ZOpuY/I313Hk1xbk7r4=; b=DlR6cdCax5Sj/xar1TOsmp2+fYUSQnf7vnssb4Lrsg8k2HwJA26UMu6s D8ELDy7T8NEQmU+KUZV6Fw9Eyxiv00YwoWfYN0HkaRpDTX/pMML+qITiT lIjiOysITjDjSAgK3NLy0hcB2Fm752RROfAOFwE7mc4gzbGQe2DFOASrc zUGSzJCbSBBI57mj4AXLcoeISu+qiOCoopTndiSFgC4lRuPLjcNryYLNt hM0FhotPaqjabToYkNInNYgo6leiaCtv+OZWScbloNVYjx0hDLYpeYelz OKpTtBOs6fjaP8JSq0uCKv2bFjsXsQ2Tmpusnvp40+OZHes9wPvSD4AIf w==; X-CSE-ConnectionGUID: WHu5KXlYSCm5M9TGDabNAQ== X-CSE-MsgGUID: duVxGQ+PQhucPsHqKKIFHw== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558076" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558076" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:12 -0800 X-CSE-ConnectionGUID: sPsp9/goTmychQzqsscK5g== X-CSE-MsgGUID: 1LjsU3C6SkamhSdlYn4hmQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847090" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:09 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 3/9] ASoC: Intel: soc-acpi-intel-ptl-match: add rt713_vb_l3_rt1320_l12 support Date: Wed, 5 Mar 2025 21:54:37 +0800 Message-ID: <20250305135443.201884-4-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 From: Peter Ujfalusi Add rt713_vb on SDW link 3 and 2 rt1320 on SDW link 1 and 2 configuration support. Signed-off-by: Peter Ujfalusi Reviewed-by: Liam Girdwood Reviewed-by: Ranjani Sridharan Signed-off-by: Bard Liao --- .../intel/common/soc-acpi-intel-ptl-match.c | 44 +++++++++++++++++++ 1 file changed, 44 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 8807acb92ecf..5c1ece913a18 100644 --- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c @@ -152,6 +152,15 @@ static const struct snd_soc_acpi_adr_device rt713_vb_2_adr[] = { } }; +static const struct snd_soc_acpi_adr_device rt713_vb_3_adr[] = { + { + .adr = 0x000330025D071301ull, + .num_endpoints = ARRAY_SIZE(jack_dmic_endpoints), + .endpoints = jack_dmic_endpoints, + .name_prefix = "rt713" + } +}; + static const struct snd_soc_acpi_adr_device rt721_3_single_adr[] = { { .adr = 0x000330025d072101ull, @@ -224,6 +233,15 @@ static const struct snd_soc_acpi_adr_device rt1320_2_group1_adr[] = { } }; +static const struct snd_soc_acpi_adr_device rt1320_2_group2_adr[] = { + { + .adr = 0x000230025D132001ull, + .num_endpoints = 1, + .endpoints = &spk_r_endpoint, + .name_prefix = "rt1320-1" + } +}; + static const struct snd_soc_acpi_adr_device rt1320_3_group2_adr[] = { { .adr = 0x000330025D132001ull, @@ -288,6 +306,25 @@ static const struct snd_soc_acpi_link_adr ptl_sdw_rt713_vb_l2_rt1320_l13[] = { {} }; +static const struct snd_soc_acpi_link_adr ptl_sdw_rt713_vb_l3_rt1320_l12[] = { + { + .mask = BIT(3), + .num_adr = ARRAY_SIZE(rt713_vb_3_adr), + .adr_d = rt713_vb_3_adr, + }, + { + .mask = BIT(1), + .num_adr = ARRAY_SIZE(rt1320_1_group2_adr), + .adr_d = rt1320_1_group2_adr, + }, + { + .mask = BIT(2), + .num_adr = ARRAY_SIZE(rt1320_2_group2_adr), + .adr_d = rt1320_2_group2_adr, + }, + {} +}; + static const struct snd_soc_acpi_link_adr ptl_sdw_rt712_vb_l2_rt1320_l1[] = { { .mask = BIT(2), @@ -388,6 +425,13 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = { .machine_check = snd_soc_acpi_intel_sdca_is_device_rt712_vb, .sof_tplg_filename = "sof-ptl-rt713-l2-rt1320-l13.tplg" }, + { + .link_mask = BIT(1) | BIT(2) | BIT(3), + .links = ptl_sdw_rt713_vb_l3_rt1320_l12, + .drv_name = "sof_sdw", + .machine_check = snd_soc_acpi_intel_sdca_is_device_rt712_vb, + .sof_tplg_filename = "sof-ptl-rt713-l3-rt1320-l12.tplg" + }, {}, }; EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_ptl_sdw_machines); From patchwork Wed Mar 5 13:54:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002760 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 437EF24BBE4 for ; Wed, 5 Mar 2025 13:55:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182918; cv=none; b=fUUhXVcZsIbQXTzWiQRldHGlWZ/F6oVgiXU5QmNQf5V4ntiMis1CtKAfeCSCoVPDaBRloqQGnmBfR3Li1nLvRgbSbAM4cD0pNBV3Uq5pQT8Pf1ZD4FRK6FNAwrNSJJxe57QqsvL9iM6zbIquKNF7xqJFhr7J4K8Uma5khuaOKxg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182918; c=relaxed/simple; bh=5u/cPJjliKmlA2VeMIuk2AToCCwzl9ahyunY5vQFWDc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=V+me69fw+JzEoSXWGxC8NPq/8D8eH5uvpxsWsrPPioHFcsp2YgresqGUhy2BPzXWm7W140B3PWzw2OGPW7Uz0sPXyCOB2NMgdqHFw6Td1w5uGkaVk58HDY95wWPkoXnTJAbBBssvSSL+AiC6V0yvJM20Uw4Aydv2kgelHPf1OCw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=U9eA+F82; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="U9eA+F82" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182917; x=1772718917; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=5u/cPJjliKmlA2VeMIuk2AToCCwzl9ahyunY5vQFWDc=; b=U9eA+F82XKJVHNgdls7pqdv36wfE0oPx4IH5dZPe3HGeyegWZg6dRRgg xlg3A3ZXWibV7VjFVUtvypskEpqz00th15/o3TQqUatPx3dVoFFl/RsZv EkBHbPelFhiNCPN+XHa34nOBLZkOp5RQ965sLwloKovap5i6pymzEs6Hr 5vbcDyeqcWW5lkP9x3eXYWcNNrEXY5Q6worny8TGMbGI3B3x+qWeL1Twf FhlaT/l6vjX4f8mSydDfVueFsmwiwz2E1lEr+wlSwylBN4hYoVcHuZriO L/VpjP1QXtEpMk6bQQXtosebrbX7A3RIH/rrc3DsDs9Fa+j15fKI7woiI w==; X-CSE-ConnectionGUID: 3ZZAG5IgSyW+M26tKn08fQ== X-CSE-MsgGUID: Le7mPXqKR/6Nu9bvVqdoXw== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558083" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558083" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:17 -0800 X-CSE-ConnectionGUID: 8p/ZQvgaTyqmZRup5v6jaw== X-CSE-MsgGUID: v/+mfYkhT9WS3RBY9t86Qg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847130" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:13 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 4/9] ASoC: sdw_utils: add mic and amp dais to 0xaaaa codec Date: Wed, 5 Mar 2025 21:54:38 +0800 Message-ID: <20250305135443.201884-5-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 part id 0xaaaa codec is a mockup codec. Make it be a multi function codec. So that we can test multi function with a mockup codec. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood Reviewed-by: Péter Ujfalusi --- sound/soc/sdw_utils/soc_sdw_utils.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/sound/soc/sdw_utils/soc_sdw_utils.c b/sound/soc/sdw_utils/soc_sdw_utils.c index 6ee7d30b8ece..5175818ff2c1 100644 --- a/sound/soc/sdw_utils/soc_sdw_utils.c +++ b/sound/soc/sdw_utils/soc_sdw_utils.c @@ -586,8 +586,20 @@ struct asoc_sdw_codec_info codec_info_list[] = { .dai_type = SOC_SDW_DAI_TYPE_JACK, .dailink = {SOC_SDW_JACK_OUT_DAI_ID, SOC_SDW_JACK_IN_DAI_ID}, }, + { + .direction = {true, false}, + .dai_name = "sdw-mockup-aif1", + .dai_type = SOC_SDW_DAI_TYPE_AMP, + .dailink = {SOC_SDW_AMP_OUT_DAI_ID, SOC_SDW_UNUSED_DAI_ID}, + }, + { + .direction = {false, true}, + .dai_name = "sdw-mockup-aif1", + .dai_type = SOC_SDW_DAI_TYPE_MIC, + .dailink = {SOC_SDW_UNUSED_DAI_ID, SOC_SDW_DMIC_DAI_ID}, + }, }, - .dai_num = 1, + .dai_num = 3, }, { .part_id = 0xaa55, /* headset codec mockup */ From patchwork Wed Mar 5 13:54:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002761 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D8FD24500E for ; Wed, 5 Mar 2025 13:55:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182923; cv=none; b=ZwouYZp9t4wYhcvcDDrL8hyTA3fjAjKkkRzc4PgpfYAVpmzB61ucqDlZcRr7ZC+DAo4sd5PmTva47bd9qkevdpLk1Ue1Er3NJ4Q9IxaeEPLNnMYtXhN16XQPHt7/QkAF2TnJUpKDt8GAzWPXGHevkwZ5GUp3FYI2cTeKSVoQQtM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182923; c=relaxed/simple; bh=jRLSx7zH2NESTbmMhmpHJ5WeKcjge8krXmz/XW8FMPQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=j9fkPQBbOp/D4xyCqNVCt/L+cSm97K4lJDjMDFUldkHwds7bAocZd5dycGM8P7CSkqrYbDBXxOOQzFtQVIVGQzJYsTiwFZ4/TUdla99NsG4VTEobr5QdHfQieFf4PjU9ltMTZlVpmLUuPruEt4cU1IHfx6Tt/yFNb9GnWRwaJAo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=mX6UuobU; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="mX6UuobU" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182921; x=1772718921; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=jRLSx7zH2NESTbmMhmpHJ5WeKcjge8krXmz/XW8FMPQ=; b=mX6UuobUoaOwX3rhxc1EeKslA0GRTSSHJt/IySokOwMIlgW9rCyD85Vs 2tpnRqnkhk5FcG83SkmoU6mLqxxtZ3xphGv3xQX11Jx69RojHiUlS/t7+ YTKvyZnqrkDqiI6v2+dVqvvD4MLSqo50i50+++8vGPA03UOoHgmZywxgO +kNJb0eYmvisGbeJGkqJELoJYCrcY6lCeIH6y1Tm8a1rRl4BlWYtA1RI4 iGa8sN//1BO+z2QszRmRafHrVuuyIYmG/fgiW30CP5eZ2jGMmyH13Im5C LdlHhVH1o4ZMwcTXRzCeQZcHfUWqBCEZrNUvL2TcXUG5+x/NMou7THENt Q==; X-CSE-ConnectionGUID: AZohpdjvSMyRr9TPD1zQTQ== X-CSE-MsgGUID: IqHlU5nBQR62Touh06qv5w== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558090" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558090" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:21 -0800 X-CSE-ConnectionGUID: 2HG6dQ7LQiK1dU2NLjujEg== X-CSE-MsgGUID: 2U7ayUNCTZCE0QyvjL8FvQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847153" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:18 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 5/9] ASoC: Intel: add multi-function SDW mockup codec match Date: Wed, 5 Mar 2025 21:54:39 +0800 Message-ID: <20250305135443.201884-6-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 SoundWire multi function codecs are common used in recent platforms. Add a multi function mockup codec to test without real codec. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood Reviewed-by: Péter Ujfalusi --- .../common/soc-acpi-intel-sdw-mockup-match.c | 42 +++++++++++++++++++ .../common/soc-acpi-intel-sdw-mockup-match.h | 1 + 2 files changed, 43 insertions(+) diff --git a/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.c b/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.c index a3d33997736a..d122ce69fa4f 100644 --- a/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.c @@ -31,6 +31,30 @@ static const struct snd_soc_acpi_endpoint sdw_mockup_r_endpoint = { .group_id = 1, }; +static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints[] = { + /* Jack Endpoint */ + { + .num = 0, + .aggregated = 0, + .group_position = 0, + .group_id = 0, + }, + /* Amp Endpoint, work as spk_l_endpoint */ + { + .num = 1, + .aggregated = 1, + .group_position = 0, + .group_id = 1, + }, + /* DMIC Endpoint */ + { + .num = 2, + .aggregated = 0, + .group_position = 0, + .group_id = 0, + }, +}; + static const struct snd_soc_acpi_adr_device sdw_mockup_headset_0_adr[] = { { .adr = 0x0000000105AA5500ull, @@ -103,6 +127,15 @@ static const struct snd_soc_acpi_adr_device sdw_mockup_amp_2_group1_adr[] = { } }; +static const struct snd_soc_acpi_adr_device sdw_mockup_multi_function_adr[] = { + { + .adr = 0x0000000105AAAA01ull, + .num_endpoints = ARRAY_SIZE(jack_amp_g1_dmic_endpoints), + .endpoints = jack_amp_g1_dmic_endpoints, + .name_prefix = "sdw_mockup_mmulti-function" + } +}; + const struct snd_soc_acpi_link_adr sdw_mockup_headset_1amp_mic[] = { { .mask = BIT(0), @@ -164,3 +197,12 @@ const struct snd_soc_acpi_link_adr sdw_mockup_mic_headset_1amp[] = { }, {} }; + +const struct snd_soc_acpi_link_adr sdw_mockup_multi_func[] = { + { + .mask = BIT(0), + .num_adr = ARRAY_SIZE(sdw_mockup_multi_function_adr), + .adr_d = sdw_mockup_multi_function_adr, + }, + {} +}; diff --git a/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.h b/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.h index c99eecd19e03..f7ed5beaca96 100644 --- a/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.h +++ b/sound/soc/intel/common/soc-acpi-intel-sdw-mockup-match.h @@ -13,5 +13,6 @@ extern const struct snd_soc_acpi_link_adr sdw_mockup_headset_1amp_mic[]; extern const struct snd_soc_acpi_link_adr sdw_mockup_headset_2amps_mic[]; extern const struct snd_soc_acpi_link_adr sdw_mockup_mic_headset_1amp[]; +extern const struct snd_soc_acpi_link_adr sdw_mockup_multi_func[]; #endif From patchwork Wed Mar 5 13:54:40 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002762 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DA03F243955 for ; Wed, 5 Mar 2025 13:55:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182927; cv=none; b=U5O+HKR807U4mEUPe1vQbHDCfEnvL1y+14IcokmZpdDwcf25JpWGY9rF2ulyop+IETUWKvD73NzTJXRrcIjtG5p4OZQKaLTQhhB+uEvA/4peGLu6i47+GSfbbHfRDBjr1sBGdZHyep3Me9b+J+ZPae2juJD3O0eUGlMXdmrBdjQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182927; c=relaxed/simple; bh=638w5IPIpD6OGjSdlIrWyufplbUK16b32sF0NpG4zJY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=tgOAJ7DHlui3W7mwHXQ3CoJEhtjNCGuWYqDxEYUzvr7Nn8pkIcdo1UOxaAgQ1X8mzXnPC4YaHElspqamrv/cUiAnZzIkS6oyxWFE/+iYK+yGzsQVzuJIlcNz1plDe9hmb6hx6rbWiytGICpCgejHriXMTGWOiGJ3cat+hBWGads= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=IMLEkecG; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="IMLEkecG" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182925; x=1772718925; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=638w5IPIpD6OGjSdlIrWyufplbUK16b32sF0NpG4zJY=; b=IMLEkecGZYZisHFjj1jrwOp/5cWQQQArZ+POIRnXd10oMxfnDF7+JxtY WHc/N/RRAG5MEhNZH/q61dp6foiUg5dvluGmqPGGEuPh1XO0nhbOUV93j lom2wI+N5YOcfkRLMq5VWyhC2SPN4VMUgWC4y+pZEazWbS2leF+u1/JIS M8q7Lp5mYgmY+bnJJI4VsNkGONarbqe8UYDs0bbYuXiTJ//Fqm9ARxYUB nBQsqQC4vyOdK+la8gdYFfX+9zaJXruiUTRAlPJnUTWRXb75Hu8SIjQPH Rme0Wnre1uQF+Y9XOhwAc7T7ta4KzSalLhxarCMgKzFHwnyLgUpkUSS6T A==; X-CSE-ConnectionGUID: 0bV4jOF0RA29QTUfMXDCQA== X-CSE-MsgGUID: mxn+zquKQ7u6N+YCMF4pkQ== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558099" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558099" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:25 -0800 X-CSE-ConnectionGUID: Kh6Iga9RRHmofFS3Hiulmw== X-CSE-MsgGUID: kh7AvoOkRdGr5lIRfs8a6Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847169" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:22 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 6/9] ASoC: Intel: soc-acpi-intel-lnl-match: add sdw multi function mockup codec Date: Wed, 5 Mar 2025 21:54:40 +0800 Message-ID: <20250305135443.201884-7-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Add a SoundWire multi function mockup codec support. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood Reviewed-by: Péter Ujfalusi --- sound/soc/intel/common/soc-acpi-intel-lnl-match.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sound/soc/intel/common/soc-acpi-intel-lnl-match.c b/sound/soc/intel/common/soc-acpi-intel-lnl-match.c index 0b4a9c27c47e..1e24e969ad15 100644 --- a/sound/soc/intel/common/soc-acpi-intel-lnl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-lnl-match.c @@ -552,6 +552,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_lnl_sdw_machines[] = { .drv_name = "sof_sdw", .sof_tplg_filename = "sof-lnl-rt715-rt711-rt1308-mono.tplg", }, + { + .link_mask = BIT(0), + .links = sdw_mockup_multi_func, + .drv_name = "sof_sdw", + .sof_tplg_filename = "sof-lnl-rt722-l0.tplg", /* Reuse the existing tplg file */ + }, { .link_mask = GENMASK(3, 0), .links = lnl_3_in_1_sdca, From patchwork Wed Mar 5 13:54:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002763 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3100924886C for ; Wed, 5 Mar 2025 13:55:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182931; cv=none; b=SfowoK9Utgwr0EWGnYkmD2pRj4TzBm0wDosuI8M4ast1LlbMsSWMJnM7iVJxEFUekT322TkwmVR1Sf46rPvoSNK4hzi4Eoc1qcH8DNFk8NkwB2M1rv5BHbu3STVjQlYHogeorjN92oNKtSUCMIdlG1UhlS+MyGXM49BoRs073IQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182931; c=relaxed/simple; bh=KQmk+wAoCCW5j67MpQ94/yhMMBNKCs/QOJyafmxbH6k=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=gFx6cVTpWBedF80iCcZKeivL091KFDw1giUyGj4srMU8jm1RTyE+DdWvrFoq0Fx2RzLMRcEZ3inLUyzghbFZVfIHb9Rx220DB7MpKl7u38yDq3d6RLk8X2lnVoTgxIwYJczGlPGYG+eEaPB6eh5gvFjEuOafN6zxjtjzkp+gmcc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=AfAhB5u9; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="AfAhB5u9" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182930; x=1772718930; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=KQmk+wAoCCW5j67MpQ94/yhMMBNKCs/QOJyafmxbH6k=; b=AfAhB5u9mYPDx0AWIujHtiSwrkG92QGc4wlYSDfeR+7U1LKEH7qB4Z8M kqnda2Ny+4pa3kykzXcRjuy5AUjZI9/LBpmKMjJPihamNxQbP7ykRTTa8 rLPFlVMJf9x5aB9gFXwkujW3aLw48eelBef2jjKN8n2yB39wfrNcye8xE /OWo+pt1kbhaDHLGD5s7+uVayK0JIL5RbMmeSz/kQk5wrNHDfMnaDQjmN zibLku4cYv6aBot92C9b9liUfcAIVasTyniBQCX0+Nu6BWRgALdyvMiYG yle7HqeLBtcTljxXjQtfKkrR5xrSdv82Pdf9OW2lcN3eiJvP2AMZKbm5E Q==; X-CSE-ConnectionGUID: 5i5zPycoRgWW7aJ5CgvXMQ== X-CSE-MsgGUID: Mm+yD9iHRLK7rv4c4wR1wQ== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558107" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558107" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:30 -0800 X-CSE-ConnectionGUID: ygda4UhjQ4iOu66dOWTaUA== X-CSE-MsgGUID: iU4fIg4sS6KdmFSo7B8QFA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847193" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:26 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 7/9] ASoC: Intel: soc-acpi-intel-ptl-match: add sdw multi function mockup codec Date: Wed, 5 Mar 2025 21:54:41 +0800 Message-ID: <20250305135443.201884-8-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Add a SoundWire multi function mockup codec support. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood Reviewed-by: Péter Ujfalusi --- sound/soc/intel/common/soc-acpi-intel-ptl-match.c | 6 ++++++ 1 file changed, 6 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 5c1ece913a18..28ee768efd57 100644 --- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c @@ -374,6 +374,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = { .drv_name = "sof_sdw", .sof_tplg_filename = "sof-ptl-rt715-rt711-rt1308-mono.tplg", }, + { + .link_mask = BIT(0), + .links = sdw_mockup_multi_func, + .drv_name = "sof_sdw", + .sof_tplg_filename = "sof-ptl-rt722.tplg", /* Reuse the existing tplg file */ + }, { .link_mask = BIT(0), .links = ptl_rvp, From patchwork Wed Mar 5 13:54:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002764 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8D6992063FC for ; Wed, 5 Mar 2025 13:55:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182936; cv=none; b=cnDRqOkLj13z78GWbgbdnLivq5eGxrwTidwxEI9GmI58cFOp175kWr4xPCTm338mewAJDlWwWzLjyDLDFdy6u8to/hDnD/7V/d+y/zT6yHBGXCEc0M90IhnTGbs8YcWEkQBXe9fQQUYh8FHpMZHIG0doyOhJkwG5HHz/PjAqj0s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182936; c=relaxed/simple; bh=PgIe0OHMvej1aW9ydf/g1crjITmFEAOjnz6668BopG8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VKNKHZPKAFrPUytKxWf+rCQdz9Z+it2Y/QuhdT2334JfXsDKXgd5Yq7PP9NCob2TxVeQNWym8QyfLSH2uO8GosLrIu4y2dhGkh2HznnRnZRCSMF3xku/wyhvamH/6/j9ZK1ZtxkZhDQi/wtJoRd1HGPSqVOepirtKytkYeKLX+U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=mx53rTJu; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="mx53rTJu" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182934; x=1772718934; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=PgIe0OHMvej1aW9ydf/g1crjITmFEAOjnz6668BopG8=; b=mx53rTJu5e6vxNXmkPxPNkSoZQS4KaXs6j2iuq62xOFvX6F9XeD10uZs AMfa/05U0zI1Sr8xrCu0xUUaxw5akIujmHWA8/LYTwEHL/nKAZj8vGI5S wmvMulJ/obVRvUgYJyChm+/cQ/ZAFhtB8pLAe8eYNkPY5u6FHGoLQyzP0 JFT/DaohdrAJKPx5uSOpoURArcgQJ5RvYlxgMtz8V+Q6x6wtt3YcBBdBK 6qvjOkb8sewUEjRC3bAYumlBJbuDRmeCFpX8tezQFTFB760eynt5p39ZI dAZP6rfdDtaMrzfGmjYnNdG3qiI+2AJ0fSgrRxLiAumC1ewOcaQlCHBXW w==; X-CSE-ConnectionGUID: sDovliX5R1GfvGkCtlbkGQ== X-CSE-MsgGUID: GReW/XXSQ0SY3jHRUiv2rg== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558112" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558112" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:34 -0800 X-CSE-ConnectionGUID: sW0jLC52SJOheLWu0CzdwQ== X-CSE-MsgGUID: jPCouVnGQAygkI2DWUrnlg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847209" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:31 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 8/9] ASoC: Intel: soc-acpi-intel-lnl-match: add cs42l43 6x cs35l56 support Date: Wed, 5 Mar 2025 21:54:42 +0800 Message-ID: <20250305135443.201884-9-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 This add a match for cs42l43 on sdw link 2, 3 cs35l56 on sdw link 1 and 3. All speakers are aggregated. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood --- .../intel/common/soc-acpi-intel-lnl-match.c | 131 ++++++++++++++++++ 1 file changed, 131 insertions(+) diff --git a/sound/soc/intel/common/soc-acpi-intel-lnl-match.c b/sound/soc/intel/common/soc-acpi-intel-lnl-match.c index 1e24e969ad15..e04f6de746eb 100644 --- a/sound/soc/intel/common/soc-acpi-intel-lnl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-lnl-match.c @@ -37,6 +37,13 @@ static const struct snd_soc_acpi_endpoint spk_r_endpoint = { .group_id = 1, }; +static const struct snd_soc_acpi_endpoint spk_1_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 1, + .group_id = 1, +}; + static const struct snd_soc_acpi_endpoint spk_2_endpoint = { .num = 0, .aggregated = 1, @@ -51,6 +58,27 @@ static const struct snd_soc_acpi_endpoint spk_3_endpoint = { .group_id = 1, }; +static const struct snd_soc_acpi_endpoint spk_4_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 4, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_5_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 5, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_6_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 6, + .group_id = 1, +}; + static const struct snd_soc_acpi_endpoint rt712_endpoints[] = { { .num = 0, @@ -159,6 +187,33 @@ static const struct snd_soc_acpi_endpoint cs42l43_endpoints[] = { }, }; +static const struct snd_soc_acpi_endpoint cs42l43_amp_spkagg_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 = 1, + .group_position = 0, + .group_id = 1, + }, +}; + static const struct snd_soc_acpi_adr_device cs35l56_2_l_adr[] = { { .adr = 0x00023001FA355601ull, @@ -204,6 +259,48 @@ static const struct snd_soc_acpi_adr_device cs35l56_3_lr_adr[] = { } }; +static const struct snd_soc_acpi_adr_device cs35l56_1_3amp_adr[] = { + { + .adr = 0x00013001fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_1_endpoint, + .name_prefix = "AMP1" + }, + { + .adr = 0x00013101fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_2_endpoint, + .name_prefix = "AMP2" + }, + { + .adr = 0x00013201fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_3_endpoint, + .name_prefix = "AMP3" + } +}; + +static const struct snd_soc_acpi_adr_device cs35l56_3_3amp_adr[] = { + { + .adr = 0x00033301fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_4_endpoint, + .name_prefix = "AMP4" + }, + { + .adr = 0x00033401fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_5_endpoint, + .name_prefix = "AMP5" + }, + { + .adr = 0x00033501fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_6_endpoint, + .name_prefix = "AMP6" + } +}; + static const struct snd_soc_acpi_adr_device cs42l43_0_adr[] = { { .adr = 0x00003001FA424301ull, @@ -213,6 +310,15 @@ static const struct snd_soc_acpi_adr_device cs42l43_0_adr[] = { } }; +static const struct snd_soc_acpi_adr_device cs42l43_2_adr[] = { + { + .adr = 0x00023001fa424301ull, + .num_endpoints = ARRAY_SIZE(cs42l43_amp_spkagg_endpoints), + .endpoints = cs42l43_amp_spkagg_endpoints, + .name_prefix = "cs42l43" + } +}; + static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = { { .adr = 0x000030025D071101ull, @@ -408,6 +514,25 @@ static const struct snd_soc_acpi_link_adr lnl_cs42l43_l0_cs35l56_l23[] = { {} }; +static const struct snd_soc_acpi_link_adr lnl_cs42l43_l2_cs35l56x6_l13[] = { + { + .mask = BIT(2), + .num_adr = ARRAY_SIZE(cs42l43_2_adr), + .adr_d = cs42l43_2_adr, + }, + { + .mask = BIT(1), + .num_adr = ARRAY_SIZE(cs35l56_1_3amp_adr), + .adr_d = cs35l56_1_3amp_adr, + }, + { + .mask = BIT(3), + .num_adr = ARRAY_SIZE(cs35l56_3_3amp_adr), + .adr_d = cs35l56_3_3amp_adr, + }, + {} +}; + static const struct snd_soc_acpi_link_adr lnl_rvp[] = { { .mask = BIT(0), @@ -570,6 +695,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_lnl_sdw_machines[] = { .drv_name = "sof_sdw", .sof_tplg_filename = "sof-lnl-cs42l43-l0-cs35l56-l23.tplg", }, + { + .link_mask = BIT(1) | BIT(2) | BIT(3), + .links = lnl_cs42l43_l2_cs35l56x6_l13, + .drv_name = "sof_sdw", + .sof_tplg_filename = "sof-lnl-cs42l43-l2-cs35l56x6-l13.tplg", + }, { .link_mask = BIT(0) | BIT(3), .links = lnl_cs42l43_l0_cs35l56_l3, From patchwork Wed Mar 5 13:54:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bard Liao X-Patchwork-Id: 14002765 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5E9A3245025 for ; Wed, 5 Mar 2025 13:55:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182940; cv=none; b=Yw2fcErsqDzrYNpc5HxubZU8x+GFpHKSvNWLF7H6Hf2ZnJQ9KzItarYzqznJI3Z1yXPBleN0KVm11KaDeWMidq9Nhdh+ueIre3qJEFQRfb3+FNACex3KaJNxWE32b4sAQNzU7TcyVV9fe794IIliXz3U/tGeDz6+qdpg8aSiFXA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741182940; c=relaxed/simple; bh=DSoBmLrCDvKgqoTI2PsIYpYsvDv1jASp+t8DIiuprDM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=SnKd2m7Xr6uo8WyaamG2CbDaa+WnmhinWazU0msQTOb7WVGM9ZrlSSld/hCuqAkyk7Pc0DuVVw+jppuRXT27RXFqSCycI/7OnvFWlfFIJg3+RoS4IZZzrdkSMrkfnred8uqjjIDcV9XqgcQ2bhqTc8c28llcmn15A+YB/wJa6os= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=Eh6MiR1e; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="Eh6MiR1e" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741182939; x=1772718939; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=DSoBmLrCDvKgqoTI2PsIYpYsvDv1jASp+t8DIiuprDM=; b=Eh6MiR1e70R6teJ9TgBZmONc+mItTAUrcue4OQFCaw/ZnrXyaFHKWQu8 fYBpFgctXpOtqw+Ny8xd44uDozo8acFzKm7S8luPo4E1XCyshsoqRlsen 4Ap/v1MaeOsc+L9z3l8QpyeQIv73u6jnOMx3ApvZGMJms3iAeT0uOl5b3 enHrl8ZuYriTsONAtbnCnzr9o1NdXauh9KwW8mfL2egkxOHc0U0mp7Z8T XT4P1+J9TgCSFk2sa6dk+Ht1j0puSqjkhKUYwx+fz9P05Gy9eh8oZSphm cwDN6pf26woD0snmFqGpYcKbiIRgRzyJFsTGMD/pPumKAg1gMX4KcthfG g==; X-CSE-ConnectionGUID: MmenaPPISmqOAJcnYPhWmg== X-CSE-MsgGUID: XDWeJA6CQ/ecMX+6Gtz1Eg== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="59558116" X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="59558116" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:38 -0800 X-CSE-ConnectionGUID: Pg6A7ewRR+y7B+RG5DQMsQ== X-CSE-MsgGUID: rlQiJRaoRYaMpCI3oirqjQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,223,1736841600"; d="scan'208";a="118847222" Received: from bvivekan-mobl1.gar.corp.intel.com (HELO yungchua-desk.intel.com) ([10.247.175.91]) by fmviesa008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2025 05:55:35 -0800 From: Bard Liao To: broonie@kernel.org, tiwai@suse.de Cc: linux-sound@vger.kernel.org, pierre-louis.bossart@linux.dev, bard.liao@intel.com Subject: [PATCH 9/9] ASoC: Intel: soc-acpi-intel-ptl-match: add cs42l43 6x cs35l56 support Date: Wed, 5 Mar 2025 21:54:43 +0800 Message-ID: <20250305135443.201884-10-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> References: <20250305135443.201884-1-yung-chuan.liao@linux.intel.com> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 This add a match for cs42l43 on sdw link 2, 3 cs35l56 on sdw link 1 and 3. All speakers are aggregated. Signed-off-by: Bard Liao Reviewed-by: Liam Girdwood --- .../intel/common/soc-acpi-intel-ptl-match.c | 145 ++++++++++++++++++ 1 file changed, 145 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 28ee768efd57..a07526eb802b 100644 --- a/sound/soc/intel/common/soc-acpi-intel-ptl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-ptl-match.c @@ -50,6 +50,48 @@ static const struct snd_soc_acpi_endpoint spk_r_endpoint = { .group_id = 1, }; +static const struct snd_soc_acpi_endpoint spk_1_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 1, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_2_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 2, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_3_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 3, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_4_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 4, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_5_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 5, + .group_id = 1, +}; + +static const struct snd_soc_acpi_endpoint spk_6_endpoint = { + .num = 0, + .aggregated = 1, + .group_position = 6, + .group_id = 1, +}; + /* * Multi-function codecs with three endpoints created for * headset, amp and dmic functions. @@ -116,6 +158,84 @@ static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints_endpoints[] }, }; +static const struct snd_soc_acpi_endpoint cs42l43_amp_spkagg_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 = 1, + .group_position = 0, + .group_id = 1, + }, +}; + +static const struct snd_soc_acpi_adr_device cs42l43_2_adr[] = { + { + .adr = 0x00023001fa424301ull, + .num_endpoints = ARRAY_SIZE(cs42l43_amp_spkagg_endpoints), + .endpoints = cs42l43_amp_spkagg_endpoints, + .name_prefix = "cs42l43" + } +}; + +static const struct snd_soc_acpi_adr_device cs35l56_1_3amp_adr[] = { + { + .adr = 0x00013001fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_1_endpoint, + .name_prefix = "AMP1" + }, + { + .adr = 0x00013101fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_2_endpoint, + .name_prefix = "AMP2" + }, + { + .adr = 0x00013201fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_3_endpoint, + .name_prefix = "AMP3" + } +}; + +static const struct snd_soc_acpi_adr_device cs35l56_3_3amp_adr[] = { + { + .adr = 0x00033301fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_4_endpoint, + .name_prefix = "AMP4" + }, + { + .adr = 0x00033401fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_5_endpoint, + .name_prefix = "AMP5" + }, + { + .adr = 0x00033501fa355601ull, + .num_endpoints = 1, + .endpoints = &spk_6_endpoint, + .name_prefix = "AMP6" + } +}; + static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = { { .adr = 0x000030025D071101ull, @@ -251,6 +371,25 @@ static const struct snd_soc_acpi_adr_device rt1320_3_group2_adr[] = { } }; +static const struct snd_soc_acpi_link_adr ptl_cs42l43_l2_cs35l56x6_l13[] = { + { + .mask = BIT(2), + .num_adr = ARRAY_SIZE(cs42l43_2_adr), + .adr_d = cs42l43_2_adr, + }, + { + .mask = BIT(1), + .num_adr = ARRAY_SIZE(cs35l56_1_3amp_adr), + .adr_d = cs35l56_1_3amp_adr, + }, + { + .mask = BIT(3), + .num_adr = ARRAY_SIZE(cs35l56_3_3amp_adr), + .adr_d = cs35l56_3_3amp_adr, + }, + {} +}; + static const struct snd_soc_acpi_link_adr ptl_rt722_only[] = { { .mask = BIT(0), @@ -374,6 +513,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = { .drv_name = "sof_sdw", .sof_tplg_filename = "sof-ptl-rt715-rt711-rt1308-mono.tplg", }, + { + .link_mask = BIT(1) | BIT(2) | BIT(3), + .links = ptl_cs42l43_l2_cs35l56x6_l13, + .drv_name = "sof_sdw", + .sof_tplg_filename = "sof-ptl-cs42l43-l2-cs35l56x6-l13.tplg", + }, { .link_mask = BIT(0), .links = sdw_mockup_multi_func,