From nobody Sat Jul 25 02:45:20 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012019.outbound.protection.outlook.com [52.101.66.19]) (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 37B433B993A; Mon, 20 Jul 2026 09:51:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.19 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541080; cv=fail; b=hXeZ4NPTNNCrLSYg8C1My9iRsNkptWNa8TEbstk4jqu38GFI6ljsE0KhvIAam+5QVDo81SBEkv83KIcK8Mwiq2rRtM/lH4Vdn3yS3t9CvQm9HseVMMnsCc+/dSjgLsFwNT2YxTnmgzkkKeLULQLbYuh0MUE5U2AgwjveZp+3mv8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541080; c=relaxed/simple; bh=9+AuQcSYqT0ysDgfgMmYplnc+pB/4ID1+tWlQb4BX50=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=bDmwFrY/ykdVt5NiefMR73+IaE+3DXbEcmJo6s33SAnADXjMIxa8oj1lqRrZXq8v0GJw//RLoMQeGtFupwXOR+o80lz4/pCzdZ8athnKWv7tcUvu/0tVPA3WPwY1BDeUwkrFFzJYAtPWb1rPW4IjQWEbPxIxReBmZG/iNDvXscc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=Y7fOqbM7; arc=fail smtp.client-ip=52.101.66.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="Y7fOqbM7" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HwSkXvRWzVoKuAMtZbZ5LrQmN9yqPrvGiLA5X0pIBDfOKbboSRYjMn4RS1GGgNCRQtUU5/xSVHJyhVNzCUAta+dZUd0spNJ53uDTZPaYZioyuwPnr5sryM9piDJFt2nXOrFpF4T9axRZedxhQsv5DhVCHkRYgIKb7kdNfG9+rJ0Yw3EfZJlDq+TgUcevuBbJx9lJ80/2rfBgDjFFr2TrYBAiYptujYTkaWepdAFDvo3u1tt5bIUUIW5JMLUeBrzWC4rG6QU6tADZXj3LwSjzOGmOdqMD8036drObLZ1aajrIbuKJNMh44+uxZRWajpVngaZBRiq89qTqUzmGQInKug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=rQiAL4CKbg2qgArn8GZ7Bgk6wQR89Ng2b1TISu00dsQ=; b=h456nUW2lxnxkvyOnyX9tZb+awNRHkdoM4uyFBUUQ5JT7tmwMQoZIfNgcQkCm6N79A5z2MN67nA1pWLSpc65RvSOlLDm7kd3lVTR5xmQJoNt3+LSPj4sAoc/EyV/auSVPjigC8gT5bUMr1F9nIB8ja4mjrDH0bxMLyyHjtseeDp0b1noCn7hYJzl9tnB5EnchnnmogckNSYfDeDpE342fIOt38owrNfDxMmkyLnYbhdp2mikOaEzPlYao+pkKW6Z7/T7ZrnW3O19Z1UG9OnuosF7f4xCMPlzasCjYHwod2cjQo55GRZQVsB25l/oz9ZITyFMMWzawf4eUBA5lei65A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rQiAL4CKbg2qgArn8GZ7Bgk6wQR89Ng2b1TISu00dsQ=; b=Y7fOqbM7zBP0/g9pioVdCMaadloXM+0/KbAk/5zjW3hmW7R6rE+u6G375w2sKiGZDqswdrlPmjavqJdWsO6KU4kJkoFo0bX6UQ79rKGU7PTBCUvaZaf7FD2WY5+lAdg7YbVsIfa/ZqaVGblj0yxaSJ50vo6smQCUPgjcqJaY3uZx7Ad5Mg87bgsClZVc+1XOe8mV2ce/YB89gCCfBilXAnthSelaVjbaQ+KxldsteQYhxy8+F47Bv16ra7T5NbCyPRiXNZjrcf4sSvWMmHpqU2rDIzzalLZAmpgI4RgiQ4apPY+R+3YYXpt17ReVh6GUIsJSUVXWua19gqr3akxf/Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) by AS5PR04MB9800.eurprd04.prod.outlook.com (2603:10a6:20b:677::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.223.16; Mon, 20 Jul 2026 09:51:14 +0000 Received: from PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa]) by PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa%6]) with mapi id 15.21.0202.023; Mon, 20 Jul 2026 09:51:14 +0000 From: shengjiu.wang@oss.nxp.com To: lgirdwood@gmail.com, broonie@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, Frank.Li@nxp.com, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, shawnguo@kernel.org, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, linuxppc-dev@lists.ozlabs.org Cc: Shengjiu Wang Subject: [PATCH 1/4] dt-bindings: sound: fsl,imx-asrc: update port binding to support multiple pairs Date: Mon, 20 Jul 2026 17:54:47 +0800 Message-Id: <20260720095450.1618747-2-shengjiu.wang@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> References: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MA0PR01CA0035.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a01:81::6) To PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB9351:EE_|AS5PR04MB9800:EE_ X-MS-Office365-Filtering-Correlation-Id: f16bbb97-c666-42e9-a69d-08dee6446ec6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|366016|1800799024|19092799006|7416014|376014|10067099003|6133799003|3023799007|56012099006|11063799006|921020|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: YlOSOE7I2uPuCc4nkr70w9sTxAIoG/N5I8huSpUQynvLkxK5G0EmznrQWuZwp1mVacZ/Fyttdpoa80meSGkpABuuPO9IJPIYjJ7y8sVePnT+PJmaQ2LKGvi0aZ0JRAINyygXo65MjaxTdcK1/K0vnd9kr55RtBX1eqKEaTAdMgKKc+TVnRZhVmhSbWx5RLc76RjBckctknGba+jhP+3XRdWZ/3gKsrTVhi19AM9bWk5QD9Rko8DgNVcpacr9JYEZJKNi2UKbeC71AdNAofmqxTOX64JWtt87b6qQWqxSNiWCMwDQHXkb+mV5nUgTtix2z0NPlu6R5aVd1w5r49cvNPniv2XH++y3ByU10IC+egpBA1+g5zmyt3emGOmJNBEO6AK/KEcOQvcEx8ZQr9AqNRbklfo8ls+vjJQgpuQEPa2Z0BQvwJ8YF2d6ljptzYWp7MOES69u6CMVUHn8Gkuhl6bjJlciO+L8KoUVEkkrBx2EVAcGQhCb5XkLk8vUptZtGz1mQ5T7csGFeJxLUC1b/EHKpq4C/LmfuE9Obcs244vzmvKjMq8n2r0iz7lU9f8nmWa2Rs95THmZV3k4gTAI5dVH/gBshWii5cNHEUOgebfWdYzjoUW9XU1mMeSY665122MUkiri1rJ+jfbmA7YAhdf4q4BLRYqh5zK6Cburb7S+6YgLHqRBjaTykZKOfkIjzbP6O+VtzTTR322ItCe/gg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB9351.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(366016)(1800799024)(19092799006)(7416014)(376014)(10067099003)(6133799003)(3023799007)(56012099006)(11063799006)(921020)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?J6i+1BpbghnHUZLDG2wmKLuwIpUJw7+q5PO/Rf4z6WVCoMoIv3wHEK2JYRue?= =?us-ascii?Q?SyVHd2DdRL6YSU387fnL/HKqBPcUr0rJrQgQN7KQw7Mvt5QLELy1vMqmwLaW?= =?us-ascii?Q?7Ki4y7rk/5cwh4/OGgwiQnWyznGAG4GdZv5L26Z6aqNKb/J0p5fXkIOid0pA?= =?us-ascii?Q?b5v3UoSh8PzCRsQssARmtS4gkgkC016OaRp22NJqzTpz7o4nUsZbeO3Mt5vT?= =?us-ascii?Q?fHOiN03HIGbgPehJYlRx+ud4QLUnUx0YkGKzSwkvPKoz2iYVGoEfGwkJ3RRG?= =?us-ascii?Q?s/geSTSg6QoaLX+iGZbzdjcftDTjbs+BUJ5ByItzliYP5z0y72Sjq2ji66ku?= =?us-ascii?Q?GhXSLtQ0J8XDLatq36MGg25jIUctJXGK1PLkGwz17afC1xkm6WpcKNTZ2cDc?= =?us-ascii?Q?gxac+lVDZp8XU17kyRjpXckh2DDDqYuBNyDFl1KfdChOoE6Tqb/xnmZaoT/7?= =?us-ascii?Q?HLWQlp5bnAejMCe8LUatzV4FkQxb8voHyx3DFIX11fWtmBDELf4HLXoWqWSM?= =?us-ascii?Q?Xf46lV/b2mlGCLJHaO6v0TP7Ls6Gt5lXPer674Pu7j2eRUFgqietf8OY7tGY?= =?us-ascii?Q?ch0inzsn5V0zXSZhXN5sgleSFlMuvwdaTvOjKQ9m5mY3g2Lr7ho3ArFdGWgp?= =?us-ascii?Q?0POxx+ifOeooLArijPgcjZaQQQkQuQAHHux1lWdCFk+EqBxe4X/G5ky2u3i7?= =?us-ascii?Q?w21KrfbcCAtJA+GgZkAm8xL11ZTxgEag7BRW6ueBoa2ydPQFprvf0rCN7RQ/?= =?us-ascii?Q?/zX4WbZJspN7FCvSs/wqOtUHtrXQjSqQj2ORL2MWK2YsaEK9NnrXcdzIYbwe?= =?us-ascii?Q?YNO8fRu9vnrGGGMBM9DwWULbaaC3zkmMYLe27fkJctOamiRTlE4GNlglwj5s?= =?us-ascii?Q?YxNY4IjSNc1ddIExNQIIPH212hIJ7mPx7Gtug58R4iSMsAI2rU0riX3bFXsk?= =?us-ascii?Q?hcciPhuMnIvqvthjpVhVsR9KKmIRTBJC38SW1ldJpHlEJJpyCmpMQa2SR/ft?= =?us-ascii?Q?Qa+aymmy/NFOroicLtceIgmuZG9ixJrfEX0JjDdIHvZMsbNw0pXRQTefUZzJ?= =?us-ascii?Q?Otta7a4CPQqLERpwVCO2R6szZl4RyRILbjFrj9FbueHlguXpBe7IT+P5yQPp?= =?us-ascii?Q?/aOw3Ya19e/mdk4ZqKU4MLh7qMFeR1ZdQhZjAZ22TaE9itEbJfovlI6eJFLh?= =?us-ascii?Q?hOdYrEIt462ECx3Ix1RRbRwd310YTiwjzkcVlOcg2oSWOI5rEcOiBOhktuPf?= =?us-ascii?Q?Li8X1c1JhSQJs/Rb05HPT/uFXGMKMhWVA+M1bKm+ukacfrYURoCgVGoOzjgN?= =?us-ascii?Q?0L3SOOLCAnO0Fm3U0X4jYHDy5KqsBFeIW0dYu44MqVqSMJnXLcalDORfbb5E?= =?us-ascii?Q?Kn8ybJvaUmrF2ZWO4VHUAOjjYuxzx2poLulsRF9CfXi0nzzVY9/uEQs/DL/I?= =?us-ascii?Q?7jwC+EgStXftrgtvBHps9EhHXHXAkRf53MXZJnOUPCuC90iedkn2kdfnp0v6?= =?us-ascii?Q?B6DSdueYIl3JQsbPfM8n/0K4KUfRwOILobY0dJvPhANEucjcb2mL8cnGqrk3?= =?us-ascii?Q?lTE6b1Jp+FizoAZPs2+5f3QJdvPv8XgDy45cdh10nMu4lf0VBtX5IL47tDf/?= =?us-ascii?Q?X0yp/OMaYmSN5kjsOH3YvOfKm8f9lNt+MWQFqbHW2CRVpd4tV1VC6Wpcd49w?= =?us-ascii?Q?kf7kdmqyiwGQlky5RzCziSh/KJaIewbvugzO5TB8I2rj8dGVothRR9D6c+Mg?= =?us-ascii?Q?j3gjZFlTdXHIjPV5VTWu8mZreM/9KGgwaWKXF1r005yEaSH+d2cZ?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: f16bbb97-c666-42e9-a69d-08dee6446ec6 X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9351.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jul 2026 09:51:13.8100 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KNJGBs6nChkFcWBe7c+ORs+43PCK4dBwAg7wPmI0cORdnSHng875waQk9H3cGt5kpC2Th7ZSMpLd4ttA2JhZDc1atu6upIq32RA3Ew3yGyCqzpy6rzTfplhRwC0BpI6k X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9800 Content-Type: text/plain; charset="utf-8" From: Shengjiu Wang The i.MX ASRC hardware supports up to three conversion pairs (A, B, C). The existing binding exposed only a single generic audio-graph port, which cannot represent the individual pair endpoints. Add a ports container that enumerates three named sub-ports: port@0 -- pair A port@1 -- pair B port@2 -- pair C Each sub-port references audio-graph-port.yaml as before. For backwards compatibility, keep the old single port property but mark it deprecated. A schema constraint (not: required: [port, ports]) ensures that both forms cannot be used at the same time. Update the examples to show both the new ports form and the deprecated port form. No existing upstream DTS file for fsl,imx-asrc uses the previously documented single 'port' node, so this change does not break any in-tree device tree. Signed-off-by: Shengjiu Wang --- .../bindings/sound/fsl,imx-asrc.yaml | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml b/Do= cumentation/devicetree/bindings/sound/fsl,imx-asrc.yaml index 608defc93c1e..18d252722aa8 100644 --- a/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml +++ b/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml @@ -78,9 +78,29 @@ properties: power-domains: maxItems: 1 =20 + ports: + $ref: /schemas/graph.yaml#/properties/ports + properties: + port@0: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for pair A + + port@1: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for pair B + + port@2: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for pair C + port: $ref: audio-graph-port.yaml# unevaluatedProperties: false + deprecated: true + description: deprecated, use ports instead =20 fsl,asrc-rate: $ref: /schemas/types.yaml#/definitions/uint32 @@ -125,6 +145,10 @@ required: - fsl,asrc-width =20 allOf: + - not: + required: + - port + - ports - $ref: dai-common.yaml# - if: properties: @@ -188,3 +212,57 @@ examples: }; }; }; + + - | + #include + #include + asrc1: asrc@2034000 { + compatible =3D "fsl,imx53-asrc"; + reg =3D <0x02034000 0x4000>; + interrupts =3D <0 50 IRQ_TYPE_LEVEL_HIGH>; + clocks =3D <&clks IMX6QDL_CLK_ASRC_IPG>, + <&clks IMX6QDL_CLK_ASRC_MEM>, <&clks 0>, + <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, + <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, + <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, + <&clks IMX6QDL_CLK_ASRC>, <&clks 0>, <&clks 0>, + <&clks IMX6QDL_CLK_SPBA>; + clock-names =3D "mem", "ipg", "asrck_0", + "asrck_1", "asrck_2", "asrck_3", "asrck_4", + "asrck_5", "asrck_6", "asrck_7", "asrck_8", + "asrck_9", "asrck_a", "asrck_b", "asrck_c", + "asrck_d", "asrck_e", "asrck_f", "spba"; + dmas =3D <&sdma 17 23 1>, <&sdma 18 23 1>, <&sdma 19 23 1>, + <&sdma 20 23 1>, <&sdma 21 23 1>, <&sdma 22 23 1>; + dma-names =3D "rxa", "rxb", "rxc", + "txa", "txb", "txc"; + fsl,asrc-rate =3D <48000>; + fsl,asrc-width =3D <16>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + playback-only; + asrc1_endpoint0: endpoint { + remote-endpoint =3D <&fe00_ep>; + }; + }; + + port@1 { + reg =3D <1>; + capture-only; + asrc1_endpoint1: endpoint { + }; + }; + + port@2 { + reg =3D <2>; + capture-only; + asrc1_endpoint2: endpoint { + }; + }; + }; + }; --=20 2.34.1 From nobody Sat Jul 25 02:45:20 2026 Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11010012.outbound.protection.outlook.com [52.101.69.12]) (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 142F03D891A; Mon, 20 Jul 2026 09:51:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.69.12 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541088; cv=fail; b=g8eT5bJNJlChbk7Q692bJkiOL0+uxKDfpRHHjyJRoIqevVsLsoGxcJMqYsS4QDp9mUERstNcIWNkC+RNz6gD1qMIo8NtsJ/InwWuLPrq/yrFfGwSlHNXMuumJgwL1byLW4AC/07YYmVyB9JVAaG0ea1sZGmdOBfkGBn5nu3cGv4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541088; c=relaxed/simple; bh=1NsBCQAqGwFV5Gf+tIgYGuWx5UPDMOlCNsldA20m30k=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=ZvDiQPk+2uDan9O8iu+wew9XIOdpvNmoWArM4+2s08tfEQlUzwh19PAOR57L/sDsHKv1BtZNRQdypVJz2eM61KcHXsFAjfWoZVWGWv/EFVwH1W0U2anhbvsdoAt/B3O2FwE6PXz6NhkRkjJ0KaV15/eEqMS8YE1eKbNhlCi28Gg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=n4MicVnj; arc=fail smtp.client-ip=52.101.69.12 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="n4MicVnj" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Kg19FMNsidyXrhHlzwWaRRJN8SUiYgwYEYpyYETFaqSM+FNlfG8rMfyfHPPdLNaCaICtyNrtptL0clr0zWWq5YXXeSvnKfQkvfcN699JaUrJ5tC+SVUCfc8NWUWwxPExSqzgo3p0YQRIZRBzI/LTzVJlgLeoE/7eKUTG5Mtil4ZmC4y3VLCAplYffC91jopf/joCQg+vkDbA7inerVOaxw4Ea2PlBJGhfHsBNUxOUzGbwYAiKYbBnUiKd+edLr+eC/kJcWHa+Tv/cJlZMoKxHwvq9oCuhVqDNpgS+mzTGmpBuSQDOszZdbJ6wt6YYhC5ndkeOD9Wn3Abi2G9TjDwVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Nq4F3MaGRn/DaeU3jIZAhTgBKUzqqKJpm4+TJ0TT8Vc=; b=rPc0RuE5qq3Z4l1mtBiSCcIJig5f6+IVuIys5l+0KHCF/8jCd7lG18xI7CU852GwGv+Xte5CFvb+FI59klD5jsvVn+KgCBhXZ7JOQVuJw4kVgzRNNhLkUhABwquLaUJIHQ8aZnYzClN7pRuIejQvJLssQkeqkX4Jgo0f88oFBTl/xLLpSGTBlAU/kceqLFlC8sIiD13v8h1D5d5kyacLrNrWowBhnrxY9DxMTe5FpJ2dry5A+I+dPpZ3qsCPAlhjh2cYmexgn0zkA3m7DAa9TFz6HlKGsiesLSg+Qrvbbv+bgFklyiq2XxxS57FKh0LoTUHaEBsAqhgMe/ALSpeCGw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Nq4F3MaGRn/DaeU3jIZAhTgBKUzqqKJpm4+TJ0TT8Vc=; b=n4MicVnjJ9rQVhD0MbEaFHDVgWm6Vu7CK56SNcuhOm33A2E5Q9BrIthml3BgCcjCNDyHP/XOZCbWkNB4qaId7Ok3fbCvWmfs1NDUpd3Q7qt62Fhj+o/W0ekbQRWXFvIrNxErrU4KpDwovfgrYzxG132A4QBvJLtefQ1F0FSWRrB4Y5lxVK1r5lXLM6fzQTKW6wtHXFAQ7nZsF/65eaBnUJ0scuy1NPJekzC624opN4DRoJvOShQ3oyn68xMj7Llsrg54Nv2vHgt7OJlRVH7V30jq+3yJ84xeoHmX531gNswhYGdPmdfcpWkoQnJydRWwF4J4CG6BjCBNMfu3keEiCg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) by AM8PR04MB7284.eurprd04.prod.outlook.com (2603:10a6:20b:1dc::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.223.16; Mon, 20 Jul 2026 09:51:23 +0000 Received: from PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa]) by PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa%6]) with mapi id 15.21.0202.023; Mon, 20 Jul 2026 09:51:23 +0000 From: shengjiu.wang@oss.nxp.com To: lgirdwood@gmail.com, broonie@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, Frank.Li@nxp.com, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, shawnguo@kernel.org, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, linuxppc-dev@lists.ozlabs.org Cc: Shengjiu Wang Subject: [PATCH 2/4] dt-bindings: sound: fsl,easrc: add ports binding for multiple contexts Date: Mon, 20 Jul 2026 17:54:48 +0800 Message-Id: <20260720095450.1618747-3-shengjiu.wang@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> References: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MA5P287CA0253.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:1f1::7) To PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB9351:EE_|AM8PR04MB7284:EE_ X-MS-Office365-Filtering-Correlation-Id: 41ab9293-50e1-4c60-b7dd-08dee64474c0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|19092799006|366016|7416014|376014|1800799024|3023799007|56012099006|11063799006|10067099003|921020|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: cCY8wF48QjCX9ag14kiPxr1EguL6rxb6ghPJwBrMihyvXHJEmY+T1jE4Xl7TCdAxo6//6tCDjUF5kRr6iDufI0UZ2Rqg9Wf3O37aJ7niHMqfxPELY5U62M3VTZl3D3VDqv4x0NBot942ssKig36nPrxfewGLHLUaasJaZKnhvsLjyqobtwNN1gJk/E9tk0fbMdPjylYtWEvmYyrbROcK5NnJZN3/vpLs4v7yavgUW15YUsointq7FB0l00IiqytQgzSYHAhgQnkKBUHZ60tTWUeLrhr4cVcvRnfw+wBQvFdVGA5S+e1JviH2op3pDzxbS9PzuuhQAp2Eii55RSFaRTLsetrmG8j/phaBaBJ8U9MuzyeuhY2Zzf1DAkd+yktzOmy4zK1lBaNKF/DA1A1U/oqHb6OkVZX/dg0/SvF4PPX4Lv0mQtZAeMywcNREY9h+VFkNQQRFW4zWSPqSnbI7LqcSBKQkMt5Bf5Znp1Q4fALxDRRN/HlZFmaS9wbz5iILmPFE37+nlrTKXMFOxql6+GF26dgO7wKE/TNRWEfXNKmIhHLw+RAx2sWCiGncbdprwOLHVEdDbvivNy/VrX2MpZHqRZX86lXaPNMEMafPl9Hkv+kbt/OCATsVrFphgrbBxXXGrcI0oAyqDxCt/j08gvLY89KLBglnnhbA8wXnAn2dL6l+Zeytau0GjEul0ps4OSLh09EpGdLSmFXaz3Chdw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB9351.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(19092799006)(366016)(7416014)(376014)(1800799024)(3023799007)(56012099006)(11063799006)(10067099003)(921020)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?N32dgHqOjhz6eXP3hISexpXzTuWgn2zPQ68/aa2IuaKaH2EyPI1rBfJJ7Djh?= =?us-ascii?Q?8M4d5YnZgVy0HULrQOmVEHCBb86TFXeDssbR/inCd5vUKi9wPR92q8RaeGAb?= =?us-ascii?Q?+S0t70GryBJSZEBPuo4SGhltabnM4sU37IrP5ay+fXzlKUGnPcPi/1TcG5pJ?= =?us-ascii?Q?CszBlhy1KiqTT+EM6uxNg0hQ5r2dCcg6F1Oye+0ndSW/5E3zXviK3f6n7qtS?= =?us-ascii?Q?6MSYTzIODkD4mKrxtpvPiicJG/SZL4SCA2Fr8CbRPv0PzhL6ilIWayBlQ1jG?= =?us-ascii?Q?GU7ZBf+j3EaGRvwWSBZjRhNMxf7+1pfbQWc2bViWpFqAUDUyStyqkKPVtPoR?= =?us-ascii?Q?1FBRMxQqc9gLSYslvDbkGCCe2qCJDJH/MZK/n2UXDuX5CvrEPNAl9cckblxt?= =?us-ascii?Q?Bjw3UFBtQHfzqW+1H5QWuNvlBrHikvHikwyDvsOuMjdldho6zDh9Y8bPG+ts?= =?us-ascii?Q?7ZEd7ZUzk1H/Wk4ZUpNGyE6nADyQh4en2WZS8sGtiQuI1ySex7m3mZnCyp4r?= =?us-ascii?Q?LyWZi9/xFa+KV3YEDw0aAA6mjxgK7U4gUAnoF8b9GwOOsPlS1it8wzIWMjNv?= =?us-ascii?Q?V3jS8T8h/0cXdffCqapkBj1lfLFJFubOFjw4xp0iBm/rxEtHs5kLLC0RMiX5?= =?us-ascii?Q?7dTRaWUIK7b1IpDT5Xcv8nfAn+6458UVabE+6Srv16AEOoBgTKrnL5sjExYO?= =?us-ascii?Q?SkvSCROrita9rqtxRd5PiIiy9QxHmVcD1xQxEjaUQsyxfsUzl/6y5bAMkCEW?= =?us-ascii?Q?OeLTDssYtmf0L96j3fRpnEL1bNFG9FmWEsuAMs44c4Tbw2WCpjbAvWMBXw/H?= =?us-ascii?Q?aAIOoR9Okh/5R9VJPyTJdg0qKiZiqD8D4qdZLl04DNkrCfCyGP1coZvuYdqO?= =?us-ascii?Q?2keo6Caj430aFylMgZywz5rJaXHuicLPMzCvjaCTOMXAqmoFl9dhwbzv4Ptb?= =?us-ascii?Q?6/dKI095syOLlMFOGk78j+mblTXlpLhL2E5VKLJ1ys9gOxltQvNNqDBV8uwT?= =?us-ascii?Q?N0hsbXcSVfsh7bZJVLFINvm+pifnf6f1BTaId2CxjV7EBEzkcrw7f+BVCW5U?= =?us-ascii?Q?/iXN7mznzvXqo3qEo9S3l8ohEDtZ9FowGGHWFo/yJTXpVwwMNAsVCFmIw/4l?= =?us-ascii?Q?TLNJT0Cl+k69YMiOBibc6hIYHwFS6Zi/UNu28gl3mm3+c/iNOEMksbhpAACL?= =?us-ascii?Q?PIE+vSmPbSZQvrfcnBTpwWtogcnGIGVFeQBTYdu5hSnBWplnDsseqYla1m37?= =?us-ascii?Q?NzqgHuNdeFowxLWDFs+ZV59X4JYFEAnBb5lZMQcKMr3cABhFX4FsM4TpxvoA?= =?us-ascii?Q?oIZ5t4vxEhhH43VopTBRnov3DBFOApIrqGjSCo8srnjCEuBJ3wYmZi7cLoN4?= =?us-ascii?Q?OjQLGsXh9gI5X73hVEkXthlGU6MBlmbNzvBTg2zDP4OG9azpjE7G5i2QqTdI?= =?us-ascii?Q?bqGNlhpgVZBx6h+/s2x85+40/T700+fWfavzIRXD7Z82GDgytZvfk49rHAW4?= =?us-ascii?Q?YUyd7qcUpLQr5n+ueTKxv1ZySCO18T/+FHVqtADZIoewJIcOgJijeMrkX8+4?= =?us-ascii?Q?GAzxdAcCmej3uUnbvdI0UiLxlNPk6s8/2GNMXxV2+Vl7T42ibcCg96DyLuli?= =?us-ascii?Q?YlH4p4+C4ozPX2RAEi7D9iazPym2vkUqm2wAYVOUcVZ8yIX0Miu/vItcPXZ6?= =?us-ascii?Q?Dj6AwWAEX7wcdLLQUQjwWgDPzt6ri/BPSlZouN/+SBQH69iHgkOmdD5wTjWK?= =?us-ascii?Q?xKRzGnOczy1ERzvLxbifXQJXKgvPHJRkbeaWrhNai5EDrQNgFILN?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 41ab9293-50e1-4c60-b7dd-08dee64474c0 X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9351.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jul 2026 09:51:23.0039 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: A3lcmCvT5fi7CtpSo/i6Xhz1lvVaPk7v5EMcU8RSHwst0HI+/uWcdgFNdY/yUvQI1UR0aapp+yKywxCCjCdcPWkpJ1ThtgQe1Tzzxaa/CaCvhceZd7nKpW5QZ0pZLKnz X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7284 Content-Type: text/plain; charset="utf-8" From: Shengjiu Wang The i.MX EASRC hardware supports up to four conversion contexts (A, B, C, D). Add a ports container property to the binding to allow each context to be represented as an individual audio-graph port: port@0 -- context A port@1 -- context B port@2 -- context C port@3 -- context D Each sub-port references audio-graph-port.yaml and follows the standard audio-graph binding conventions. Signed-off-by: Shengjiu Wang --- .../devicetree/bindings/sound/fsl,easrc.yaml | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/Documentation/devicetree/bindings/sound/fsl,easrc.yaml b/Docum= entation/devicetree/bindings/sound/fsl,easrc.yaml index d5727f8bfb0b..0f579870110d 100644 --- a/Documentation/devicetree/bindings/sound/fsl,easrc.yaml +++ b/Documentation/devicetree/bindings/sound/fsl,easrc.yaml @@ -55,6 +55,29 @@ properties: - const: imx/easrc/easrc-imx8mn.bin description: The coefficient table for the filters =20 + ports: + $ref: /schemas/graph.yaml#/properties/ports + properties: + port@0: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for context A + + port@1: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for context B + + port@2: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for context C + + port@3: + $ref: audio-graph-port.yaml# + unevaluatedProperties: false + description: port for context D + fsl,asrc-rate: $ref: /schemas/types.yaml#/definitions/uint32 minimum: 8000 @@ -107,3 +130,59 @@ examples: fsl,asrc-rate =3D <8000>; fsl,asrc-format =3D <2>; }; + + - | + #include + + easrc1: easrc@300c0000 { + compatible =3D "fsl,imx8mn-easrc"; + reg =3D <0x300c0000 0x10000>; + interrupts =3D <0x0 122 0x4>; + clocks =3D <&clk IMX8MN_CLK_ASRC_ROOT>; + clock-names =3D "mem"; + dmas =3D <&sdma2 16 23 0> , <&sdma2 17 23 0>, + <&sdma2 18 23 0> , <&sdma2 19 23 0>, + <&sdma2 20 23 0> , <&sdma2 21 23 0>, + <&sdma2 22 23 0> , <&sdma2 23 23 0>; + dma-names =3D "ctx0_rx", "ctx0_tx", + "ctx1_rx", "ctx1_tx", + "ctx2_rx", "ctx2_tx", + "ctx3_rx", "ctx3_tx"; + firmware-name =3D "imx/easrc/easrc-imx8mn.bin"; + fsl,asrc-rate =3D <8000>; + fsl,asrc-format =3D <2>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + playback-only; + easrc1_endpoint0: endpoint { + remote-endpoint =3D <&fe00_ep>; + }; + }; + + port@1 { + reg =3D <1>; + capture-only; + easrc1_endpoint1: endpoint { + }; + }; + + port@2 { + reg =3D <2>; + capture-only; + easrc1_endpoint2: endpoint { + }; + }; + + port@3 { + reg =3D <3>; + capture-only; + easrc1_endpoint3: endpoint { + }; + }; + }; + }; --=20 2.34.1 From nobody Sat Jul 25 02:45:20 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011000.outbound.protection.outlook.com [52.101.65.0]) (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 AECA53D16E6; Mon, 20 Jul 2026 09:51:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541096; cv=fail; b=fTAfU7DgOQ+e0k8Ajabo3HY05sOHY7y8mTKTPu4Tq8cvKElxjVIXYo7EZmqauqaeGpO+gYC8j/kmBn+P/6tq7SlS0ta0Kbxq+y+xUbpUdJWuOMtGTqNEGssmSAPrERVydADg6NRe6T2xNZS4+YE82oiFdS/kSStKo747/L6B4so= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541096; c=relaxed/simple; bh=90LGEN3CAGUNYJkvd8I6vcCtj69VMB2uCIjmHu5vQkk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=jcChM/NEZHF2XU5JZv99V2K4+kF6pMy42RAGhMMJkWzowN3hmWhpKvTsGEgDnqyQR3TvL2F5mJ0vapFZ6FyQj19SL9x733hG83unXo/5FdqgwlOxwM/KYpcMSt5pwrRgbTMMwpAdSE3bedwKy596gXNS3D9bzQ4rmpSTEhAj8Yc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=MeJSaJl7; arc=fail smtp.client-ip=52.101.65.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="MeJSaJl7" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=IbDp0ELx8ImYVhqwuQVt8+fRfmo50g/KkI5UkfH8+OdvdZuBnZd57e3u2MM4S79cLwHUeCRVOfWcdDmiD4EsSgWH6YT62wft0xylV0pHtF5LYobytejTBZCWswjxEus9CndO6ZRjIvDjf/mMjU11VcVMpPQwVRxqwWWASv4EI+Yp21y5ZifXmacqF4qjlp3Ty3hI/kSDt7raKn+jYUD5Ho+6CYIRDwGyibRsO48OzuOaXO4wx000/a7SC3e3cEaFoxEl/TwsykHuWOZLHqF4K9XC/fRf9Wzq7N95U5R0YMlIMdszL5o1P98tXqE/+FJyK2mbWRYQhcO8kzbSMBAjCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=2r+6GpbjumT9uE2LhcDV9orVsbg/htI/o39IKMlaJus=; b=yFn+hy1xsNm7am6SX3gBOE0/By5DMZOXLN5iDt3xKL/HbCLIbOof1YCKVIUOJlsG4wMDa1h1HtTrQie9ywIwib7pMBjB7pVyiMeOMENgedaEAgOh6mH30ElULyHJPPPjWfR4iheXh/1C9GLUkOHdlk+0LzwjHfADMGu/ysFn08Vlbmkl6EcXMPT9kKgATjXoy2U/k5yRIrr2qb7Gddzw6DieZLlFOfrddVb/Bo1E7lzQfmXq3DuD+XvjwVde8PgXDTyUofHwU1drbhVH8B6O0Ht59U9tBgb/xuYYzCt62vcPpgCJ/Rv5DCFCBRDkl+Lh/EpI+CjWMMBOGP8T0Mlqtw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2r+6GpbjumT9uE2LhcDV9orVsbg/htI/o39IKMlaJus=; b=MeJSaJl7qzUbOBKGTnmjcbLvxb5S9t1USUvU382PTDS4PSS+hr56xHvYW9tQrXui7bQGuHo3WcpfTsdbXjRCpiaI1IzIl0jpzoVk0DZ9Tg8vwmLs3fJlpf3GfQ03bB4LZWIQcnRExIs+F+IvxrSBpfYy5ZHoh0w0hVLUrsQjI6Zp3fHjYndJtsrAbE6N53I7/+DoB8SewI18kUzjVc4/cSUxZuHrJQ+LjDB8hMDKaZLh60tZu2NepW3HPdJFPvthrQeKbI/LobxsQoju3BIenm+CninyD+iReFn3GI1jfBgTn0EX1PdYPMEwkEYbOMfui9J802X5iXODAWhk6kKczg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) by AS5PR04MB9800.eurprd04.prod.outlook.com (2603:10a6:20b:677::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.223.16; Mon, 20 Jul 2026 09:51:31 +0000 Received: from PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa]) by PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa%6]) with mapi id 15.21.0202.023; Mon, 20 Jul 2026 09:51:31 +0000 From: shengjiu.wang@oss.nxp.com To: lgirdwood@gmail.com, broonie@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, Frank.Li@nxp.com, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, shawnguo@kernel.org, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, linuxppc-dev@lists.ozlabs.org Cc: Shengjiu Wang Subject: [PATCH 3/4] ASoC: fsl_asrc: expose individual DAIs per conversion pair Date: Mon, 20 Jul 2026 17:54:49 +0800 Message-Id: <20260720095450.1618747-4-shengjiu.wang@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> References: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MA5P287CA0235.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:1b1::13) To PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB9351:EE_|AS5PR04MB9800:EE_ X-MS-Office365-Filtering-Correlation-Id: 5d99441c-1ece-42a6-8cc7-08dee6447994 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|366016|1800799024|19092799006|7416014|376014|10067099003|6133799003|56012099006|11063799006|921020|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: 71e52QeGzh9JrbW+n81EdhjgDnQChtFFKUZdsfhReNLgFJORL3Bul7DgXUmUCdtJgz71W57hdTQaetLRZx8T3GEo83l1orK1CFPEjoaDQN6h+/qknrk8kkYGMJn28PGdaatAo70pmJzWy8QxmIYNae3gSaS7kTP+J/TEaXnR8SHqIU0KGGaRTFuzcjlV/tpP1OZLcni9TkAWd2mvk71HeMp6RIu7Xs3EhGOjSqxyTDoFIg9+d0v53CeDTwoNKhDO6+AVDaO7hJ1UCGCrxE+cnQE/PhrpwQrPh4dhHQklDONB2i+jNuZYZWW80xj9pLY+Z/gjgMCAH37cvNcgfs153ViLLjUF3CB4Ltox5SE2ghmPYVzqoCDg7LQ0US0uICXgExyS5FIXa4KhIoa+S6yvBodka11fnOJszJKA/VpOq/0BKE4dC8il1zVzJF+KtHjc4NGWRKrKnKYhcdlJ7Je3eKzQqQ27xkOeJ6N9RmMqtXcOmJ15VHJIsl0e1DbF7mbKO//g1IBPlc1kN1p1qRxg4KlfWeHt+4v1EIR/T9t6SGKiKkj1vQRhOlZ/g68Rr4+WEmvaA6N9LF7XuW+hBH03ZUgSBYSa1fnEyKMl0zBMhvF7Wov1Q/88BDjZy+AxzPcOf8ykAmD//ilPlaF+FsICl5tW0keRrEh7GRcVT+8Sk9f8KMBSomy68Q4X/LGoUUQi2K1swfbMS0NEGOVwryHMWw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB9351.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(366016)(1800799024)(19092799006)(7416014)(376014)(10067099003)(6133799003)(56012099006)(11063799006)(921020)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?IomSKyS5lAxh/qk8TKpPfUkaQhJAQJALWK9GJ/zX2iKeCXtF8/pt1Lpet/05?= =?us-ascii?Q?KtWB39KF098MTj+Mt5BSc0d+BiPaQ2+Oo43Dqg2cuL36S6MQaC5+v9tego4z?= =?us-ascii?Q?h7vo3pIbwMEMu0K/9COPwIaV7JEzpvOYzBMPs0JJoL5eC4CpigYigPdA+ak+?= =?us-ascii?Q?JnpAVwXfa0beU3VNvfUV9Be49c2nvteD3dUYkbF1lp72HrBxIxrWVkIoorhb?= =?us-ascii?Q?ZzOMlt78jmlhJpN9UmdS21UJ+B1V2wAOgOy2HluurhwhHgdxGJGDirC4QNL6?= =?us-ascii?Q?14qI5NbozubuRK4VRrmRVZOq5OVTnXxj2SzA2NM4VkSORV9hMhCwyAKz/3gF?= =?us-ascii?Q?vrDcFmvm/BY9LnnYh2+a6e1w0ZqDDkQFvzUWtlZ0FwVqQoRy479oa3+A4wEm?= =?us-ascii?Q?EG7AGIMdy1PZB94VVil5QqsUFtXQ4YwmlJ606MnmyDDN7HbSNjjzGcF2kGz2?= =?us-ascii?Q?YYN+dXm590hJ/QcCx1Vuy3twwGhef+rkdpNzEoewPhoegLSNgkl6LJWa6WQV?= =?us-ascii?Q?5NEYJpPA5rLjdU6r3vzvtCA9xJ4Tnc79+7dFG26vpCQWuceFj9gL9HZ4aYPr?= =?us-ascii?Q?ZAMhc+HQSpISEABlqNkV6Lqgv0C3cW6TF6f90AB9wmRrNFBKBjopLjgInn0K?= =?us-ascii?Q?OjoHt1g0da+ipefMAK2QMI0kg1JQz+aYH9FkmPvLelcLFUyiBDYJMowELsft?= =?us-ascii?Q?LbshH4h6jWNz0xqC+V8L1zHRDCD96c2B1vbpME/eEHD2pvQVI3JqXBe1j8ZX?= =?us-ascii?Q?nfBS+Ipwi4upC5Gcz7FHKJbPCtXBFDLy8CAMG/dpPWOH4cEpG62XqSYziHUM?= =?us-ascii?Q?+RNPImxZ4uW7k/CYL8ruZCCVhV9n26Kx4MvzxJFDcg60zclnN+L1SRlyu/ez?= =?us-ascii?Q?J9HvM/TE7UX3jBzlQ7Z8DcOfTUY9tpjKtSIbvme+zAzTHfLn3e3D9/ntpNiy?= =?us-ascii?Q?y4HheidJeFy/Yxfe90diRw3zb0GL/UvZtmbRZX5i/GUiU7tMwu5Wp+gkq4Vh?= =?us-ascii?Q?h1GeBzVvsnFNqikYkAuNqERyRRu2I5xqi1f1n8dHB2Xx12mxlwHZW13pjPV9?= =?us-ascii?Q?BisNFAXbdDHLSud5GqJobOMwc+0QaMKuGehYVz/wx2X8NZx5XlYeDPq5m50U?= =?us-ascii?Q?5TVKMQ8YZ4rUFAebiGq+Wj3xgF462L5akz0OWKckRpMqIvfYjFa9Clav7TVf?= =?us-ascii?Q?3RhxZfNs16cKdAKpOjcWSzk2Q+PdcF9pgk7Dd2ZNyc+HdYs+ECXWHP+Iz3xU?= =?us-ascii?Q?vko53V7bPNzLqssHwzJGf+/q8jtMO/jm0elCol/zp3ZOc7JOuMnkVCzAPoWz?= =?us-ascii?Q?7O8QZwW145gVYX5hNo7Hq9KRagALpok7u3WtjGvx2pGqV4KsLmfma0E0Anhc?= =?us-ascii?Q?ekdVoAVU45pH/oeSTQYbLzHNW1Nso23ps39ilvg6hzqCgLk2iqrlo7QoufY5?= =?us-ascii?Q?m0S0dDRdu6nzP+dGExcT6H2+lt9yBlsFTvQD/4IN411ksTPVv3x7OB0OskKL?= =?us-ascii?Q?vqqr5kCF4MnogZ55K2Kch9yl+BUUizgz+tJp5OlPp3Uuof5T+yySqhLQew4k?= =?us-ascii?Q?W0NIWma3YzZr14SPJXxY18kNhOMfR/sWD8PWwkPaa9y9e+X4jDoDUMehUE5d?= =?us-ascii?Q?O62rq4tp9hIJBM5Op0EKv3xjIm4IsS3fN2rkrG6Y/5cwLJTaSPIXoq5/++NM?= =?us-ascii?Q?ChNXtlPQPkCNNW9GN+hYg7cTvo0Mc/Hg7LNAoOsanLViga1PywfVI9QkFPbU?= =?us-ascii?Q?6ps1gxSSux8bPaVPr6P4YKzdb0rmb9h2Q+14WyJzQteTvC2ciK/G?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5d99441c-1ece-42a6-8cc7-08dee6447994 X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9351.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jul 2026 09:51:31.0506 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BEsHwWVn8hlKb/1mS3jW7jtHvL+F9JFvWBO0Ki++AGXtxPANQ1XVJs2PJI9Cs24rgjyaZ/ZfSQqdWxMhBAqd6klXdHM5s2JdVBQmmSkJItNdc+JuJ/BhNriqM7y0DCi6 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9800 Content-Type: text/plain; charset="utf-8" From: Shengjiu Wang The i.MX ASRC hardware supports three independent conversion pairs (A, B, C). The driver previously registered a single DAI with generic stream names "ASRC-Playback" and "ASRC-Capture", which prevents individual pairs from being routed to separate audio paths simultaneously. Replace the single fsl_asrc_dai instance with an array of three DAI drivers, one per pair: paira -- ASRC-Playback / ASRC-Capture (backward compatible) pairb -- ASRCB-Playback / ASRCB-Capture pairc -- ASRCC-Playback / ASRCC-Capture Pair A retains the original generic stream names to preserve backward compatibility with existing machine drivers and board configurations. Each DAI retains the same channel, rate and format capabilities as the original. Update the devm_snd_soc_register_component() call to register all three DAIs. Signed-off-by: Shengjiu Wang --- sound/soc/fsl/fsl_asrc.c | 89 +++++++++++++++++++++++++++++++--------- 1 file changed, 69 insertions(+), 20 deletions(-) diff --git a/sound/soc/fsl/fsl_asrc.c b/sound/soc/fsl/fsl_asrc.c index 0b28bcfa47fe..f83d6cdc6412 100644 --- a/sound/soc/fsl/fsl_asrc.c +++ b/sound/soc/fsl/fsl_asrc.c @@ -803,27 +803,76 @@ static const struct snd_soc_dai_ops fsl_asrc_dai_ops = =3D { SNDRV_PCM_FMTBIT_S16_LE | \ SNDRV_PCM_FMTBIT_S24_3LE) =20 -static struct snd_soc_dai_driver fsl_asrc_dai =3D { - .playback =3D { - .stream_name =3D "ASRC-Playback", - .channels_min =3D 1, - .channels_max =3D 10, - .rate_min =3D 5512, - .rate_max =3D 192000, - .rates =3D SNDRV_PCM_RATE_KNOT, - .formats =3D FSL_ASRC_FORMATS | - SNDRV_PCM_FMTBIT_S8, +static struct snd_soc_dai_driver fsl_asrc_dai[] =3D { + { + .name =3D "paira", + .playback =3D { + .stream_name =3D "ASRC-Playback", + .channels_min =3D 1, + .channels_max =3D 10, + .rate_min =3D 5512, + .rate_max =3D 192000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_ASRC_FORMATS | + SNDRV_PCM_FMTBIT_S8, + }, + .capture =3D { + .stream_name =3D "ASRC-Capture", + .channels_min =3D 1, + .channels_max =3D 10, + .rate_min =3D 5512, + .rate_max =3D 192000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_ASRC_FORMATS, + }, + .ops =3D &fsl_asrc_dai_ops, + }, + { + .name =3D "pairb", + .playback =3D { + .stream_name =3D "ASRCB-Playback", + .channels_min =3D 1, + .channels_max =3D 10, + .rate_min =3D 5512, + .rate_max =3D 192000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_ASRC_FORMATS | + SNDRV_PCM_FMTBIT_S8, + }, + .capture =3D { + .stream_name =3D "ASRCB-Capture", + .channels_min =3D 1, + .channels_max =3D 10, + .rate_min =3D 5512, + .rate_max =3D 192000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_ASRC_FORMATS, + }, + .ops =3D &fsl_asrc_dai_ops, }, - .capture =3D { - .stream_name =3D "ASRC-Capture", - .channels_min =3D 1, - .channels_max =3D 10, - .rate_min =3D 5512, - .rate_max =3D 192000, - .rates =3D SNDRV_PCM_RATE_KNOT, - .formats =3D FSL_ASRC_FORMATS, + { + .name =3D "pairc", + .playback =3D { + .stream_name =3D "ASRCC-Playback", + .channels_min =3D 1, + .channels_max =3D 10, + .rate_min =3D 5512, + .rate_max =3D 192000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_ASRC_FORMATS | + SNDRV_PCM_FMTBIT_S8, + }, + .capture =3D { + .stream_name =3D "ASRCC-Capture", + .channels_min =3D 1, + .channels_max =3D 10, + .rate_min =3D 5512, + .rate_max =3D 192000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_ASRC_FORMATS, + }, + .ops =3D &fsl_asrc_dai_ops, }, - .ops =3D &fsl_asrc_dai_ops, }; =20 static bool fsl_asrc_readable_reg(struct device *dev, unsigned int reg) @@ -1404,7 +1453,7 @@ static int fsl_asrc_probe(struct platform_device *pde= v) goto err_pm_get_sync; =20 ret =3D devm_snd_soc_register_component(&pdev->dev, &fsl_asrc_component, - &fsl_asrc_dai, 1); + fsl_asrc_dai, ARRAY_SIZE(fsl_asrc_dai)); if (ret) { dev_err(&pdev->dev, "failed to register ASoC DAI\n"); goto err_pm_get_sync; --=20 2.34.1 From nobody Sat Jul 25 02:45:20 2026 Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11010023.outbound.protection.outlook.com [52.101.69.23]) (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 005F63C873B; Mon, 20 Jul 2026 09:51:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.69.23 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541104; cv=fail; b=PwpkqzXVa23ugIGYclCBTRMiiUVFLgwgli8ctL9tiSPCNtuup5JW2wYB7EInqTuixCj50kjjGsOjrVOIiCoGv4hPbezpwKwDicREcsRjGw9KAakRgseUXnu/Jpukvy52rylksK6RH/Xr+IcwwXWnM2M8jUuLzZdxCMZERSyLI9s= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784541104; c=relaxed/simple; bh=q8VqYNzLOJeD/FJRSYbsG0QiW7YfIviprUvXcAEEzDQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=Dc4k3na6y7EyiBM+trPcpVYAj1QuokDVv1jP03KeAm1IEbCIOf3UPuOMEntBZKaa5LuGpWtDe2bxcyC6mu7xnetSPZM/R426kgNOgJRbXmxcpn1o2E9FluxIDUmS/hRz5M/lgHDF5MxOkDMYiRDO76Nocqk4xNUFV7nPr1QRv0Y= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=P6iMheR8; arc=fail smtp.client-ip=52.101.69.23 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="P6iMheR8" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nJ3JVOGFa6+RB3FZmE633WjVHpcFHjKGh0PCXrRG/Hh/dA32FdMhq9NaXwEpkdAJvZFsTpyHb2AXQurfXlRxtejC0ZNyM7FMlMgLJldyzzx9l38s9PD25dNcMke/XFB1PYCG21iRA+ZFV2uP7LZCmRAQKowxNZ4QhtB8x2I+o2jwt/YAKr7fHHh63FXV/Kmjr0K8OcDo/+2G5sAOEb7+27rcyA1i4lw51xhRHNn/8F+ZKeCGFBlbNVjMGFoMoCOj1/Ar5AEuEtiwBiWYt2ZPNGEInwOsN6kXdmEO306DZH6niFOjfHxPcTraCT7XEscNlH5RiN30qOMdDXs+0rh2kg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=TPPGQwc3PfT+C4VBhWiy0S/G7+Xy+TuZZ7wv5vN1sqA=; b=gtQjJVTefqZ3368963oafp6zCoGKdGuOmTKdpd8gKya8vzjpzVSeeDvkJcHdg4nw90EkXcOSoOykoTv49LCDW6AbDPP3LfWOxRfHc3LGt+O8RzLrVsOjPQl7muy9bxNJZ9+1Mul8xRZWwr6xExrdL8KWbps8mhiVXMfqSE1+QeilwONvloygKCckAxtw/3xwRQMqd/5+BogHtqfQyCusL3zokEYS9DZOCEmv3akEht53nLUmqrZwlfW7SmLcdYeZbraPe78S377ifSgwkEjl2isHJscnMKhSyFfsvVwClB9+EnsS5G6y2IvS47rzy5ZvY4vEWRcouQTUUxEI5UkKoA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TPPGQwc3PfT+C4VBhWiy0S/G7+Xy+TuZZ7wv5vN1sqA=; b=P6iMheR8TIgyiFRrjT1jyBDa2/knAmVv0c+dwruZf/2uRjXEDIOQGMWQBjnLA0faRF5jsc9YzKQN4jf60b6gFldF/wthZPDt79jX4QCweTS4YQ2VO3vjJpB4zLjXpj1VQC9GxMD+oaQlHrHpCes2m6x6jK+htlHR8ZMSnajigNLBuzRAvVOp43p+dh7f5sLvg8ZHPN1qm2y6ZW6w03cycioolVS2X3afy+GsSMX/NrtaGeYEI1e867FXGHJRovEacyr5ElIgTDfHnMIhij0dm0eLnI6V8wb4WtCqvWd/ftTHS6htfKbQA4exCVshOph2Q53VDKJmFnyfPNv8cIXKrw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) by AS5PR04MB9800.eurprd04.prod.outlook.com (2603:10a6:20b:677::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.223.16; Mon, 20 Jul 2026 09:51:39 +0000 Received: from PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa]) by PAXPR04MB9351.eurprd04.prod.outlook.com ([fe80::1058:a430:52c1:5aa%6]) with mapi id 15.21.0202.023; Mon, 20 Jul 2026 09:51:39 +0000 From: shengjiu.wang@oss.nxp.com To: lgirdwood@gmail.com, broonie@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, Frank.Li@nxp.com, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, shawnguo@kernel.org, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, linuxppc-dev@lists.ozlabs.org Cc: Shengjiu Wang Subject: [PATCH 4/4] ASoC: fsl_easrc: expose individual DAIs per conversion context Date: Mon, 20 Jul 2026 17:54:50 +0800 Message-Id: <20260720095450.1618747-5-shengjiu.wang@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> References: <20260720095450.1618747-1-shengjiu.wang@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MA5PR01CA0266.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a01:21c::13) To PAXPR04MB9351.eurprd04.prod.outlook.com (2603:10a6:102:2b6::17) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB9351:EE_|AS5PR04MB9800:EE_ X-MS-Office365-Filtering-Correlation-Id: 506eadd6-98c5-41f9-3a2d-08dee6447e8c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|366016|1800799024|19092799006|7416014|376014|10067099003|6133799003|56012099006|11063799006|921020|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: /og1Ky46OeAYVgh+J4a/o5oktCC0sK6cKUx2xdym8ZovdVgp6qMVMCaOh0MPhnnu42d1ecRxJnxD2eFCyanjcIpjEAunTvc3INpgqCoisL+xFMlQPjyAgwwqSlqycKDcnuZBxJPJO3+ktmiNThMyiTxYhNWb9d8BKvuR0+TVzC/DdQgS34zRrLHBIyM6i2hkh4jk9IKyhkiv6Zstrmu1Taz7DyMZ3+FzbJbg9Q0iltWpy0ziTOazap9uT27B51j6DKXF/GligI5O3fKd0y+zbZdAZQuMq1bXO+Jyr/U7XHd5vQpSZzxk77LyLA7VYtZOo1iRb1H49REivH2+mxnf3zx9pFDAxS0euJXAzVp5+AooxyKTajYjx45bTM2zPXovAVQhnlhl7e7DIraa//VBfDLzwPVANuBynmd7+n7QuiZ45Q5yki1rHSQAIbyCEsgdn7VBrqMBeZvISDnTvkzAVSKDTFjPyp6RT+RuSxzotd/VOmEEEe0BkXVSB+gjyMCtqrfcdAVy4l3l+tNclChLJBfpfQqUrW92W0tZAfiyeRoxd7eaKbd+2xRKNKQNELNvMBHEIrfGDSHVFDml6O4DVjvYnU9Dk29JMQLVzgwZUb2CsTS3wdljYUD+SJzfwM91/BCOtipsIYIv9t398W8cn0C5+IlSVBSMn+nZs5wwg2SNms150FFeR0jhDoCKxOOqCC5aMdXENgqgtB95pIPWJg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB9351.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(366016)(1800799024)(19092799006)(7416014)(376014)(10067099003)(6133799003)(56012099006)(11063799006)(921020)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?L3whorcaQf9lOTRY8V9rt5b12FxQ58JUjc0SZ/3WHWPZJu+hiD6ur5erN0/o?= =?us-ascii?Q?8hgFhdl/2wkAbuSMbwr4mpOvxwWgxCo5iX7R5/K6kzFfhi554o30x3AlYp37?= =?us-ascii?Q?WnvwXlf1CVf5ok06SU+ebV73kZ6ANq6VrgJOt7Kh485ipklw52I4j4SkxxqE?= =?us-ascii?Q?BOcJpm9P33oyPLq1izO+cggET4advWun9HcfwdF2I3uA2zc8c7ltE8Jf0IMm?= =?us-ascii?Q?9ksiWzVdD0NS8FpKMrz1lPSP4H/BfwKMFH2ZuR9CyPXn89sZlPKhFiex37iV?= =?us-ascii?Q?Dvc+aRbYUkd+SzFeXHgsUx/cxf9kbUmedH2zBG2+rViIv3Se2PLvSWDbFcOu?= =?us-ascii?Q?fBNFLBEzOCFC/P3SkJ9vU7kMvadQ24ALICGbjYR2D23PgmxooymG9bpJbjeP?= =?us-ascii?Q?r3u4kLX+Oe93ivaG338qG1VaSxkDyzI1AIjhpF+AZ0njRnWRZe3NhvZpv50z?= =?us-ascii?Q?SNROis2WyvnVUhN08K65SQo6UPpTZOKV1kN0gJgk5E9jdP6sS8ReHuKi1EqH?= =?us-ascii?Q?8tYWW26Grs90Fy0nJSVnm4AmcaSvWen7a1cwzROneY0lRTTT8Uh4uPe54//T?= =?us-ascii?Q?/83Qm/kvLUOlbn3aeVJLMDqckkxuJQe/hjjHL+J6OJuks9vxOgsucRZEmOqD?= =?us-ascii?Q?8PFpqtZWfXCvcnPMTrO/GdzgafLmDdNOHb4Cdwnd4PtaTfihQi/KDWXiHMGl?= =?us-ascii?Q?M+wi2pAcfgdoLiAWgbATw+2SXUF8RSFzY2OsiAAeUmEL9Zdem6A7R6jRxZDB?= =?us-ascii?Q?K0XkXGmCYMkysMEjVq/uVw2RBbSamubw7OJJGXacqsFCpmbwsERj1jA63EoO?= =?us-ascii?Q?1V0RbB4fZ29sHqjF1Z0ndDPCs1m2crvwbBq/3xB27fgmx7jfsBY+er070Oq0?= =?us-ascii?Q?RHLGP5jRyBrOrYeuFtaSHu6/FtHIPG8GeI+THAtyozJDG6twb0p+z46GlZgl?= =?us-ascii?Q?qgQS5KtlhMaE9EShNn6A3yljwqC9mPRdRIhx3ICE+iZlguqJNWt5ylQ/1Pye?= =?us-ascii?Q?Ujc9QrWwbZK1je0dwFEeZPWeFidCq9gPUOMDhI8mECFOFIVLw0gP5vxZ2jTz?= =?us-ascii?Q?vBG8Tsfw89E2yUMg+NZqYDGVGqWmUlWpzH4t92pHXDxo//xvnH7eVWigQwXq?= =?us-ascii?Q?5N97qjhvaF0STaeyLLgs3QY1fRcbfKfTwlZ6FogXLbzX15bbkQvwQMF0P3vY?= =?us-ascii?Q?MyjljggN4JTa9utgprkpC1fUb6ABJxz9SBatAGuRuJYD64ycMP78lgI+I6QN?= =?us-ascii?Q?OwerPFAG8BNUETKZqATCNPmtSqvhw6vKxOJmYLHFa03fL7nt9gZPdd4oebmK?= =?us-ascii?Q?9O4adNJhJrbzQD6FJlUIbVKvd4GHg/EjntQWB82i/auhAJwDn+lj9wOA5iIE?= =?us-ascii?Q?PIFbkYbSbnpmN/ZaGb5E/5Hb4KsP6hFto99H6EyHu3XAterdS9399v/NHy3A?= =?us-ascii?Q?4CWh2qYsbLPnDOiB0jo+gS5O9z8miZ/bnkQUIZMABohnrOG/YdO6M79Oc40X?= =?us-ascii?Q?qqYQi6bCdLJcgrm8v7hcjht490is6pbwcJqppt8PDaQV3PwyZXVNZB5DQNTP?= =?us-ascii?Q?Xjwk9Fjft43nAfhYU5swFcCHkW6Yp2Z8vPFqE9BalUKfLXuXUqSS2vMdTINt?= =?us-ascii?Q?6eRnTVLcO1GnKUp0itzHhhUrYQjbZlq5XwcKG9aQ2pQSNLljSEdVdgLGuCJq?= =?us-ascii?Q?5q8dovrM4QayNRRyBp8oZsp+uLBTDTGhrjzLxO8yfVpo1UnGYZ14hD1AFzct?= =?us-ascii?Q?L8/to4sWsvZ0a84xtPsz1pq9c2tXI7zLtNnCpRnF45As+fD++VWI?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 506eadd6-98c5-41f9-3a2d-08dee6447e8c X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9351.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jul 2026 09:51:39.2118 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JZYhzmz5MyW9O5cTSoTviKxoa9rls271pxlOOII0rndck87U8oJOrRnoOO+6GoTfZMWN0IancVbFAyKVlu6QBsZ/kxiCFypfawZhqYig/huhXAlvbBmxVzUMROvh2M9k X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9800 Content-Type: text/plain; charset="utf-8" From: Shengjiu Wang The i.MX EASRC hardware supports four independent conversion contexts (A, B, C, D). The driver previously registered a single DAI with generic stream names "ASRC-Playback" and "ASRC-Capture", which prevents individual contexts from being routed to separate audio paths simultaneously. Replace the single fsl_easrc_dai instance with an array of four DAI drivers, one per context: ctxa -- ASRC-Playback / ASRC-Capture (backward compatible) ctxb -- ASRCB-Playback / ASRCB-Capture ctxc -- ASRCC-Playback / ASRCC-Capture ctxd -- ASRCD-Playback / ASRCD-Capture Context A retains the original generic stream names to preserve backward compatibility with existing machine drivers and board configurations. Each DAI retains the same channel, rate and format capabilities as the original, including IEC958 subframe support on the capture side. Update the devm_snd_soc_register_component() call to register all four DAIs. Signed-off-by: Shengjiu Wang --- sound/soc/fsl/fsl_easrc.c | 112 +++++++++++++++++++++++++++++++------- 1 file changed, 92 insertions(+), 20 deletions(-) diff --git a/sound/soc/fsl/fsl_easrc.c b/sound/soc/fsl/fsl_easrc.c index edfd943197a0..3c5303d9b9cf 100644 --- a/sound/soc/fsl/fsl_easrc.c +++ b/sound/soc/fsl/fsl_easrc.c @@ -1600,27 +1600,99 @@ static const struct snd_soc_dai_ops fsl_easrc_dai_o= ps =3D { .hw_free =3D fsl_easrc_hw_free, }; =20 -static struct snd_soc_dai_driver fsl_easrc_dai =3D { - .playback =3D { - .stream_name =3D "ASRC-Playback", - .channels_min =3D 1, - .channels_max =3D 32, - .rate_min =3D 8000, - .rate_max =3D 768000, - .rates =3D SNDRV_PCM_RATE_KNOT, - .formats =3D FSL_EASRC_FORMATS, +static struct snd_soc_dai_driver fsl_easrc_dai[] =3D { + { + .name =3D "ctxa", + .playback =3D { + .stream_name =3D "ASRC-Playback", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS, + }, + .capture =3D { + .stream_name =3D "ASRC-Capture", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS | + SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, + }, + .ops =3D &fsl_easrc_dai_ops, }, - .capture =3D { - .stream_name =3D "ASRC-Capture", - .channels_min =3D 1, - .channels_max =3D 32, - .rate_min =3D 8000, - .rate_max =3D 768000, - .rates =3D SNDRV_PCM_RATE_KNOT, - .formats =3D FSL_EASRC_FORMATS | - SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, + { + .name =3D "ctxb", + .playback =3D { + .stream_name =3D "ASRCB-Playback", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS, + }, + .capture =3D { + .stream_name =3D "ASRCB-Capture", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS | + SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, + }, + .ops =3D &fsl_easrc_dai_ops, + }, + { + .name =3D "ctxc", + .playback =3D { + .stream_name =3D "ASRCC-Playback", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS, + }, + .capture =3D { + .stream_name =3D "ASRCC-Capture", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS | + SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, + }, + .ops =3D &fsl_easrc_dai_ops, + }, + { + .name =3D "ctxd", + .playback =3D { + .stream_name =3D "ASRCD-Playback", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS, + }, + .capture =3D { + .stream_name =3D "ASRCD-Capture", + .channels_min =3D 1, + .channels_max =3D 32, + .rate_min =3D 8000, + .rate_max =3D 768000, + .rates =3D SNDRV_PCM_RATE_KNOT, + .formats =3D FSL_EASRC_FORMATS | + SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, + }, + .ops =3D &fsl_easrc_dai_ops, }, - .ops =3D &fsl_easrc_dai_ops, }; =20 static const struct snd_soc_component_driver fsl_easrc_component =3D { @@ -2245,7 +2317,7 @@ static int fsl_easrc_probe(struct platform_device *pd= ev) regcache_cache_only(easrc->regmap, true); =20 ret =3D devm_snd_soc_register_component(dev, &fsl_easrc_component, - &fsl_easrc_dai, 1); + fsl_easrc_dai, ARRAY_SIZE(fsl_easrc_dai)); if (ret) { dev_err(dev, "failed to register ASoC DAI\n"); goto err_pm_disable; --=20 2.34.1