From nobody Tue Sep 16 10:40:23 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B8BCCC4708D for ; Wed, 4 Jan 2023 02:40:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234355AbjADCke (ORCPT ); Tue, 3 Jan 2023 21:40:34 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54694 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234338AbjADCkY (ORCPT ); Tue, 3 Jan 2023 21:40:24 -0500 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on2078.outbound.protection.outlook.com [40.107.8.78]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3B99160F1; Tue, 3 Jan 2023 18:40:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ADl+Ar+dnG+ZzNNBHi3qiuRIZHaEl/IO1c29D7JHwf19PPhAkJYG1C2GyhehSv+iNxufMFsD/2CEHB1cjAAINpiRE+toQ6bXWywViaSIu8JR+pcjMuU1m+b570xNIqoJY1QXY0wYQXPlqUlWseXTb49IwJ0xddcUFozK+AWgMMnEeJcm6q5xvXd8xPTaYMvhpWSLq5zmcZWuUtWrEmcf2nE3ODjVN9wn1+01bJ/iKdpkfUrJalXrKYjM5fTN6kYAynZbgXLeVGswfdDqqOIT9I0ZZpxI4nNR2IDQIGmbzUnTYAavLt1czcudm0G9eysYH/D/KzbrKfhTLyZZZepnmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PYScTKDIqxEFmzlvyDqyackzUBlK9qg6ncWn2rsEdGg=; b=dn08FpN0SFXp3nuU4EpffjjhX1pnV3UEQ69/3YqfgqUjTqimAuKRCHAlb60CcZ9X5VbtImprnNGSmJvXb+albShn/ZkcNRwszyydIxBz5UJEe2DExhNIr3o5uJxn5E55eZLadOYbKAdOSvJSUpIAYTOKBqU0zLEz6VMlVbxmiFD09PIVS96ABr28uRqytb17DyXYUhurJRTkXpDvL0ziAQf3SE9z2SsKr+Hss04IICauTS3NLrmrscl4NEYBkRiDH3C6YeTpY0g5ybWpKIgp6nQFRFXP1CkQkrhEYHG9AN2faayI3TnSnf9ab2q28WR3m+4HJ4XPENixlcHd9/yhqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PYScTKDIqxEFmzlvyDqyackzUBlK9qg6ncWn2rsEdGg=; b=s8nE2jlY9F/9Dhfdsid1zrUIG5TSaRGRsZgtce3RzWITop+9cbOGWcD+Hl31w1Ut7vS2e3SjBfwn8kCPcj5Z0oXUhodSJVzxa1RNx0/neEdThg0Tna71WO99lIswdEr0T5iLhRh5ADwakc3LA6cU/0Mrmb4klXLjSjoXpbq0rv4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM0PR04MB4211.eurprd04.prod.outlook.com (2603:10a6:208:5b::30) by PAXPR04MB8491.eurprd04.prod.outlook.com (2603:10a6:102:1df::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5944.19; Wed, 4 Jan 2023 02:40:22 +0000 Received: from AM0PR04MB4211.eurprd04.prod.outlook.com ([fe80::c1e7:eafb:408c:6ae5]) by AM0PR04MB4211.eurprd04.prod.outlook.com ([fe80::c1e7:eafb:408c:6ae5%4]) with mapi id 15.20.5944.018; Wed, 4 Jan 2023 02:40:22 +0000 From: Chancel Liu To: lgirdwood@gmail.com, broonie@kernel.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, devicetree@vger.kernel.org, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Cc: Chancel Liu , Krzysztof Kozlowski Subject: [RESEND v2 1/3] ASoC: dt-bindings: fsl,xcvr: Add compatible string for i.MX93 platform Date: Wed, 4 Jan 2023 10:39:51 +0800 Message-Id: <20230104023953.2973362-2-chancel.liu@nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230104023953.2973362-1-chancel.liu@nxp.com> References: <20230104023953.2973362-1-chancel.liu@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0130.apcprd02.prod.outlook.com (2603:1096:4:188::8) To AM0PR04MB4211.eurprd04.prod.outlook.com (2603:10a6:208:5b::30) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR04MB4211:EE_|PAXPR04MB8491:EE_ X-MS-Office365-Filtering-Correlation-Id: e888976c-88cc-4b42-8f95-08daedfd0667 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zO+qvjrupnLv3Ua1rm9c2ZE3VT+cCJeXMJtyebmpE4Cf5MGF1eXY5L8+cp0ZaY6qhVzi+5oNil8qp7MYkJ/fYVAlHUtf86MEwQ8kZca+sLb7GKN+DGH6H3fN3Vh83FV/e7QevOPdiSDY+KqfdMar362ODFrNHXPM+RVq1hsADOhbmG2NNI2cgiKXGZ0qUDYnUy6NurifRDizGS+/Km/zmF/94IIwtQZn2Dv2PRmr9m4xS4jVHSP1vpoFIdBc5kVBXkuz4iChGCwCL8UJX8XCfQSfUBizLOcpyBIQx2ioRpS0N55Gqd+6juTeD/ylWAgaYadL1KTe5UJYpOtvABFsHrfqsHGgXfXk0H20fAB29wrdrSMhrgUvTGtLHmT8JpncBCbQJWNcNoK+uHQ7uwZfO9w/FW+7m1Xvw6Ri9XO7DqAui7fL9hReI1VR4JtLDfXMlh9OuZA+G9aK5VIgC83aSk//PD/GRKirOkVAYIulkgQ7d3bhSoYIq8zDOnAuBSRA4/gX6ySYR7/eRhYDs+GDnnEN8PEVkQOQLO8puwzrcrI65B+msB80rr4mwQiKnvaYKEAejyFxi5G3I7gn4NL/2P+YCEQsHvPYPeQn68C6t+jlW/sA3H5rjWTZQqYlBKFWJgauvCAmGNud7UsUX9ROzk9aQxcWsySPkOkiGw40Fcg7Dl0+JNUFuClyihNIsA6YkQcUkPX1PaTvsDFMpVTUlw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR04MB4211.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(136003)(39860400002)(376002)(346002)(366004)(396003)(451199015)(8936002)(7416002)(41300700001)(8676002)(4326008)(66476007)(5660300002)(66946007)(66556008)(54906003)(44832011)(316002)(2906002)(6506007)(52116002)(6512007)(6486002)(26005)(186003)(478600001)(6666004)(86362001)(1076003)(2616005)(921005)(38350700002)(38100700002)(36756003)(4744005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?MY2XJ0yvkA78ACG19eiswAFaDFmHQh/atddHVtZ5G7e6A1V7KPQ4OD87hyYB?= =?us-ascii?Q?IljQ6p4SNIDWIXpKjgLCQgyaZc91k0Sob88mTof+g93fMetwKLsusSghz7BC?= =?us-ascii?Q?CCEU+IT3hBSl/xkyRgiwzEHAmpfqVv8fSFAShm3fjXn7C9gOs5sWXOp3Cr+k?= =?us-ascii?Q?xX8OiHm0YCx4EMXarHtCt0LxPikpmykJqZAIHed762tgPwQLeyzqnW4k0fMt?= =?us-ascii?Q?Q8CQ74u0mc00ReyMbZ2Gbj/GQ0GS8czmXk0MRZvWALb6sRxx8jlGzd6ZWWCX?= =?us-ascii?Q?FpuVjyi0OmpGOTOlTc0NBQNCwLWl0efxd3kULhvIxvN0Js34byYC0Q054U6S?= =?us-ascii?Q?rojeZT475LlrLV5f2pyw+L3bVBXHEXf1x4Z30Rgyxms+QGFRFT5YZBSpbl3G?= =?us-ascii?Q?n/qGeoEDaaSSf1P+gfckh9TvdUGh+ObQBUDoRmV2l8PY4AVOYlFUV2SY4Kph?= =?us-ascii?Q?fT0e9HgEYN7R+jMUbN4+PO7qDxGckz07opgeLQZnGc/gC1ldW2QTVSPs46CF?= =?us-ascii?Q?ZISZbmVRAA4ZVVAho0sqq/Yv4xPyMwscx5CeLWdJqT5b7WxYvk71doWrI4N6?= =?us-ascii?Q?uHsp5IqZgUpDlOm+cbbIvIkHDpQeBnKlDJYSfGRXEnBiwozP2qaVOU959/zU?= =?us-ascii?Q?Xn4Uyk9yuh2X+KhqU+kcbvv0n7QNMj5EL8/AnafBou5y0sD5wOfe0JZCPn6c?= =?us-ascii?Q?x/5l5PfxeWrYQ3FeJZ1NKiDXgbqCilE5UXPfh2VoUy0stkX1bEezvIDmp7d7?= =?us-ascii?Q?OaTtv6wVojmy9tD7+K5LDTz9l9vIIl40JAI9y7kABcgUdreLoSfwdD/TS5Sv?= =?us-ascii?Q?sAcFFo8nQw1JjL0njiaz03zPTvznIN1ZcrbvPkrTIrEPwDWgW+Lscj1CgBPg?= =?us-ascii?Q?YywswPyfVIJv35lOURBy5JG3X95c6cZY8cDfrJ8+CmxDbAvgpWsAtNgy/7A1?= =?us-ascii?Q?0cO2qiv6w5ste+JLnBsUqHDnwVSBtd05F3rSNKBfpCs082CuSg1H4JgWqXyl?= =?us-ascii?Q?6DzT6MzLaBp8HoYc86KmpWiA7r7wWLAtdN3GcMYFgaZpkkVBCzPpOkBzdx8j?= =?us-ascii?Q?XHJkSrDhEyNh6PeylvtVbZTgzEAXgW6R2eghdIKWuVSCcIk5A63MwWdU1Hfs?= =?us-ascii?Q?M/F0OjIImoM6WB9yUER5gizJfovQHOKzAKeWJLCaBjG90sUxIL36WWg96m7n?= =?us-ascii?Q?u9QfKSjNozoy65lcV4tQpF2mriwlsvoe926T5D4PVt917xkmSoQqQJ4g+cjF?= =?us-ascii?Q?GZNvytUue08MmTXiFhqlmG3cX7lwJnUVuDZPvE61nyYoQHY4Jm0ROYDkYUjR?= =?us-ascii?Q?lgbWThddyiLz+9pJT4dle8nOt2lzUFotINr3mpvPEKkQLiin3SKtE7VBzA1v?= =?us-ascii?Q?z5MONpgXGRiOi2MRA2kR4pzGOTAM91DbJ3Bf8Tk+4wrxjQK7XpJuKykaAhCA?= =?us-ascii?Q?YV6izmp6IOkwLa1yslRaIGqWHLgy3bro/hNxJWv+EiGYlF7+XblQDWiwNxUa?= =?us-ascii?Q?RFc/g57obp1myBCOSDu24nkLTRJ7tA7mtA5KWzKKMAfyQjWqVHWhWo8O8PPb?= =?us-ascii?Q?CK6rdJ188lPSEXToEgSJPESBkzYCvImwRKQLgIJr?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: e888976c-88cc-4b42-8f95-08daedfd0667 X-MS-Exchange-CrossTenant-AuthSource: AM0PR04MB4211.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2023 02:40:22.0524 (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: CLyi8Pbh6e6pNI46Bwg/dgYAj1LxT4d2p+/44cqEXGa5gugpxuLc2yV+NDDGTXd6RtTAKW3lIKflJaIFZbusnQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8491 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add compatible string "fsl,imx93-xcvr" for i.MX93 platform. Acked-by: Krzysztof Kozlowski Signed-off-by: Chancel Liu --- Documentation/devicetree/bindings/sound/fsl,xcvr.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/sound/fsl,xcvr.yaml b/Docume= ntation/devicetree/bindings/sound/fsl,xcvr.yaml index 223b8ea693dc..799b362ba498 100644 --- a/Documentation/devicetree/bindings/sound/fsl,xcvr.yaml +++ b/Documentation/devicetree/bindings/sound/fsl,xcvr.yaml @@ -21,6 +21,7 @@ properties: compatible: enum: - fsl,imx8mp-xcvr + - fsl,imx93-xcvr =20 reg: items: --=20 2.25.1 From nobody Tue Sep 16 10:40:23 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0EB67C3DA7D for ; Wed, 4 Jan 2023 02:40:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234391AbjADCkh (ORCPT ); Tue, 3 Jan 2023 21:40:37 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54762 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234367AbjADCka (ORCPT ); Tue, 3 Jan 2023 21:40:30 -0500 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on2087.outbound.protection.outlook.com [40.107.8.87]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4FA5F101C5; Tue, 3 Jan 2023 18:40:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=djAkmSxf+mUq37aXdFH8tG/6fI/5+5L0DNP2bQDoEvGtM5RcKyuMavy6c9WXFBlx2OesI8iE/d3b49qIPqeCoi2HI7bas0AmK5Y47tdOdn4MDvrGtWCJbRsiAvgQtknEV/J+gud5yemwXjmtj2hj+d+DTsKXL96Q4AMPwFkERjoKSBNSaslm3aaAnrJ8ohaS5ft/iCPcISbMFGWeArVwexpVaLexapVGF6Re4xiDhR+t17WrIpR+3GaScBpFsPYE4Wg6JHHqj+oUYBmT1lmlVJueLubRVfrGIz0NXma0hqXMJYHeFIh2CoqDlOSdpAaS0ODbzh21w5djnrN1NzMq1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=o3y6KMuIVDUyZ64JhbuWhFOA97lWgpV16TqELUOln24=; b=TyxaQkxVV8dr3/sH77GYjvGEEfPTilgvB2ve01efEQXTIU7ugNVvYk0TOqZpxX1U5972QEO84XqhGKK3sQZZouoI4REhW7GIzyUdBRsN2UU0yJ2vnpEO6oUo7D/L7K61OHsDWOF9JbhBlbhbsuMEpSZ0Ba0pTFqy5SgvPOzUFFwZ01eZBL6bYK9q2oCkHei0kjiyUVE6D6yo/givFmu9E04Hj3B+1gxQHOSwWS93MwOIDfscy2NSyVZcBIv1TBhZtcGawx8QQ7QsasLZeWv5VJ8GsUrxMIRxKfRkwujfbAWSvSIqtqo9S0I3t8SvuB8jYPhYIIS3pHet9COR+OQlSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=o3y6KMuIVDUyZ64JhbuWhFOA97lWgpV16TqELUOln24=; b=eHgLRMCJOL2d+ZhL6MahS4XWMu9U14yMxDelkP+hioY2edtxHcc5+ziSdGrGsATflKZqqhH9faK2TehnWEFAhjP+0H9mhV9RXKKyRyqL9FfIauMNDPgURZrIzwEo9qYPyXFkRQtvn7KZooXGkDdNq5fHeLYWwXOmFmk0uST+oL0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM0PR04MB4211.eurprd04.prod.outlook.com (2603:10a6:208:5b::30) by PAXPR04MB8491.eurprd04.prod.outlook.com (2603:10a6:102:1df::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5944.19; Wed, 4 Jan 2023 02:40:26 +0000 Received: from AM0PR04MB4211.eurprd04.prod.outlook.com ([fe80::c1e7:eafb:408c:6ae5]) by AM0PR04MB4211.eurprd04.prod.outlook.com ([fe80::c1e7:eafb:408c:6ae5%4]) with mapi id 15.20.5944.018; Wed, 4 Jan 2023 02:40:26 +0000 From: Chancel Liu To: lgirdwood@gmail.com, broonie@kernel.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, devicetree@vger.kernel.org, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Cc: Chancel Liu Subject: [RESEND v2 2/3] ASoC: fsl_xcvr: Add support for i.MX93 platform Date: Wed, 4 Jan 2023 10:39:52 +0800 Message-Id: <20230104023953.2973362-3-chancel.liu@nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230104023953.2973362-1-chancel.liu@nxp.com> References: <20230104023953.2973362-1-chancel.liu@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0130.apcprd02.prod.outlook.com (2603:1096:4:188::8) To AM0PR04MB4211.eurprd04.prod.outlook.com (2603:10a6:208:5b::30) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR04MB4211:EE_|PAXPR04MB8491:EE_ X-MS-Office365-Filtering-Correlation-Id: a6d0ab61-151a-45e2-daad-08daedfd0907 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EeRYWm6yCnW75Q69CwVfg4Fmx77gJOLbJoIUZuGJNOTvlv5E78B9mDXyy1WeF96k+DdRTR5MzpJ1pO7lCWTHOy7zX+Tn6cpJcrVdpKGXaDyoyaM6otnNfCvqYz07vLGsZ44Bv9CTac4VAVgdko3RoEjvvX1WbOI12EuxX32W/AUhY12tRWpCShH/eoQQ/oR18G+LV2Hva/xFhF14v7KeHn9UFtxH7Oq6xig5R3q5ZXddVVHEfCRRQPQJu3SyVpzzKXGWXmXt2fbeu15497+mNrMU2NyJPwguVtUC2bo4b9gKnCQ/lkBOc3aC0ns69uw1qukNwoQ8qabo+mwRFMgH2sJu0/sWreUN6ZGwgytwhH3dzSIqQis8rYuRoZ+hofssaEmSfmDbh+RO2INiRggIIkRqmNYUuI0GP9mJXvsju+Wrgto7nSzI0ak5JJzu/TXPtysZ/b257VMx/4AJecqBL2konWY/iCDwMpqTOoWzYse74dALFsIh2jqXonilb17AERQ9iOcfCsHWpH78THTIkKtTz02pXAWwgZXPxUBfl7oZPThYOHEU74Bf7HY+pGrosQb+wA+885mIfyCzihRenoohZJXgM9uWGXDEoB86CzbSg6WlA44JPcQoERI24qLSHwO/PiwDjtsn3kD6hhwAuy9GHSrC2ZmmOFDJIbYrRWoEk1XFrOEUTMDwtDorHIb+cGwlqcP0q2HB25irCamkCw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR04MB4211.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(136003)(39860400002)(376002)(346002)(366004)(396003)(451199015)(8936002)(7416002)(41300700001)(8676002)(4326008)(66476007)(5660300002)(66946007)(66556008)(44832011)(316002)(2906002)(6506007)(52116002)(6512007)(6486002)(26005)(186003)(478600001)(6666004)(86362001)(1076003)(2616005)(83380400001)(921005)(38350700002)(38100700002)(36756003)(30864003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?R7W3ur3UOz8EEivsVyeVNrMrAYtovWnP8l5EnXJp2sWIdAx5h1WbnOakYZpp?= =?us-ascii?Q?HPinjV/l5I2WjowW2eXRoTVOhJJQU3iV5sDRJlox29E1GLlYvJyVO0YYB4pD?= =?us-ascii?Q?YkClbecwHZWfSQFt1N+G+K69GXbiOwzmmozf+PkN0HJjcEDTj0zndtaDYkgy?= =?us-ascii?Q?rjax77F1iDWFPYmmo0PI15SmhAxhRp5rUDNzbZwbB5cZrI6PcFAKk4a9YPwi?= =?us-ascii?Q?oje/6A+LHMRUSvPTroy9l95Uvbqit1lwUvPJ9WyUDKanhLVWdkM9vNaGm1O9?= =?us-ascii?Q?xONYTddiNNBMRkICOANpUBUl/zqYHVWL0gJ31hrgW1yPItw3qHEBCLB7OEcl?= =?us-ascii?Q?2lEtZn5PTKGH23fd+8Y0B+Q8XFExF4J/vZLUgc8ItOpIg7BvfthLNqonBmn2?= =?us-ascii?Q?BakNslZujogsBng8thehpE3+D0k/Ku70v1pWgZRJBw0h/JzLMyzC/cgpKMX9?= =?us-ascii?Q?ENSU/Rc/RYOsH81s0/7Fp9KaVc/0Ta2llsqTRSjNqmEWTT6TraxU5oLJBJYn?= =?us-ascii?Q?4WWChM/+auzYJTwIWtP96VkrJaUqtpH9m9BNlMx8zv4iHuYmTIFgLQZUn02A?= =?us-ascii?Q?RlSam0dnIUBP0/AtebWURb3ttD8IMkk3iFAwkzJSlNTZ39CENTeJwPOfy8k8?= =?us-ascii?Q?lfEMUduqhH6WDYpd2DbFlFokv6opi9QdUYrOJwOTAYv6WoYYr21bSAPD/UZx?= =?us-ascii?Q?MGWWJkvBkVcxoO2RNMUHCwq/4JI70LLS7McK9sm8UWwYU2sJF4olgMfpKRA/?= =?us-ascii?Q?Iha3gwLlfKJz65AqsgFjQU9gMEEagJJV8DzvoUwa/0cv/OgNIzrRyoDUuIBQ?= =?us-ascii?Q?tkcqPNFGqzJg6zJXb+YJenUVQ9yxYr1ClZD/u8j4JqlIUfSGCspl5sBKe+r+?= =?us-ascii?Q?xSd8HF8IcG04iKDY2UaSyJI3sorNfZZVi8cYO4dfnfdi51VJRb7VoUVru1nb?= =?us-ascii?Q?iMXLzE81Dk2zrfibSO6jZ+9ZtikK4o3gahEJnbBd89TVSXiL9FCj7S5OVz1v?= =?us-ascii?Q?woqsmQqkyZImpSY/g0FujkMXxFEOyEAcT3laJKmCvD/BYD7BjQlQiNahER4G?= =?us-ascii?Q?hBzRZEaHWZn5G96a3BmoAC4CU4yNdEGpT/nhAkrJh7OQrCl1ERurK3ALXvc0?= =?us-ascii?Q?T/JYFxiui4hfhCdAgsWUV7uMZipAyJDV9kJqL45edRtWYheW4Q5UrQaVuiq+?= =?us-ascii?Q?KSwMPSVULyCjE3+cbqPXqB4q3agprLwdcskVMPm4MA4IZh8QXTR4ryljIfGZ?= =?us-ascii?Q?b5/A6TFu4MBuordCe9IdEgfoHqQThylhh/MHBtndULoGssDa3YbmscTGE7Iz?= =?us-ascii?Q?/0buszhJgtxSxUh6XmljuYqfSRpZBErCyBa3xsGLYQYiIr8VykczAy6hamOn?= =?us-ascii?Q?oTP2n21hzxA/KfdGS4vDmgLfXzUDOpPpsQjqEmwleZ5lKtx4226PCHjfm5dw?= =?us-ascii?Q?RdnNYi/W7bzHW1AWw8OHO0rW0BndjYtl9rCAefL6PLnwvsrhUn1JtjibY43Z?= =?us-ascii?Q?ogmQdkSc3BcQ+IdIAOdCZRDHdvuvZ594e2cO+Pilhlo01B8pmieRScwzJz1m?= =?us-ascii?Q?TUnoakFFGZzmJIUTv2baDiBFKkSAZmsOGqzoJww+?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6d0ab61-151a-45e2-daad-08daedfd0907 X-MS-Exchange-CrossTenant-AuthSource: AM0PR04MB4211.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2023 02:40:26.8333 (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: YVeFtGhNWew4PH+Fc4SF7AGt8c1gloIlNILNtjU6553cxjgTUnye4rv0BJHzAmCsPA9GPtAe99vVK8nRlh67gw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8491 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add compatible string and specific soc data to support XCVR on i.MX93 platform. XCVR IP on i.MX93 is cut to SPDIF only by removing external PHY. Signed-off-by: Chancel Liu --- sound/soc/fsl/fsl_xcvr.c | 143 ++++++++++++++++++++++++++------------- sound/soc/fsl/fsl_xcvr.h | 7 ++ 2 files changed, 102 insertions(+), 48 deletions(-) diff --git a/sound/soc/fsl/fsl_xcvr.c b/sound/soc/fsl/fsl_xcvr.c index 2a6802fb2a8b..b794158a7876 100644 --- a/sound/soc/fsl/fsl_xcvr.c +++ b/sound/soc/fsl/fsl_xcvr.c @@ -21,6 +21,7 @@ =20 struct fsl_xcvr_soc_data { const char *fw_name; + bool spdif_only; }; =20 struct fsl_xcvr { @@ -261,6 +262,9 @@ static int fsl_xcvr_en_phy_pll(struct fsl_xcvr *xcvr, u= 32 freq, bool tx) u32 i, div =3D 0, log2; int ret; =20 + if (xcvr->soc_data->spdif_only) + return 0; + for (i =3D 0; i < ARRAY_SIZE(fsl_xcvr_pll_cfg); i++) { if (fsl_xcvr_pll_cfg[i].fout % freq =3D=3D 0) { div =3D fsl_xcvr_pll_cfg[i].fout / freq; @@ -353,6 +357,7 @@ static int fsl_xcvr_en_aud_pll(struct fsl_xcvr *xcvr, u= 32 freq) struct device *dev =3D &xcvr->pdev->dev; int ret; =20 + freq =3D xcvr->soc_data->spdif_only ? freq / 10 : freq; clk_disable_unprepare(xcvr->phy_clk); ret =3D clk_set_rate(xcvr->phy_clk, freq); if (ret < 0) { @@ -365,6 +370,8 @@ static int fsl_xcvr_en_aud_pll(struct fsl_xcvr *xcvr, u= 32 freq) return ret; } =20 + if (xcvr->soc_data->spdif_only) + return 0; /* Release AI interface from reset */ ret =3D regmap_write(xcvr->regmap, FSL_XCVR_PHY_AI_CTRL_SET, FSL_XCVR_PHY_AI_CTRL_AI_RESETN); @@ -547,10 +554,12 @@ static int fsl_xcvr_startup(struct snd_pcm_substream = *substream, =20 xcvr->streams |=3D BIT(substream->stream); =20 - /* Disable XCVR controls if there is stream started */ - fsl_xcvr_activate_ctl(dai, fsl_xcvr_mode_kctl.name, false); - fsl_xcvr_activate_ctl(dai, fsl_xcvr_arc_mode_kctl.name, false); - fsl_xcvr_activate_ctl(dai, fsl_xcvr_earc_capds_kctl.name, false); + if (!xcvr->soc_data->spdif_only) { + /* Disable XCVR controls if there is stream started */ + fsl_xcvr_activate_ctl(dai, fsl_xcvr_mode_kctl.name, false); + fsl_xcvr_activate_ctl(dai, fsl_xcvr_arc_mode_kctl.name, false); + fsl_xcvr_activate_ctl(dai, fsl_xcvr_earc_capds_kctl.name, false); + } =20 return 0; } @@ -567,12 +576,13 @@ static void fsl_xcvr_shutdown(struct snd_pcm_substrea= m *substream, =20 /* Enable XCVR controls if there is no stream started */ if (!xcvr->streams) { - fsl_xcvr_activate_ctl(dai, fsl_xcvr_mode_kctl.name, true); - fsl_xcvr_activate_ctl(dai, fsl_xcvr_arc_mode_kctl.name, - (xcvr->mode =3D=3D FSL_XCVR_MODE_ARC)); - fsl_xcvr_activate_ctl(dai, fsl_xcvr_earc_capds_kctl.name, - (xcvr->mode =3D=3D FSL_XCVR_MODE_EARC)); - + if (!xcvr->soc_data->spdif_only) { + fsl_xcvr_activate_ctl(dai, fsl_xcvr_mode_kctl.name, true); + fsl_xcvr_activate_ctl(dai, fsl_xcvr_arc_mode_kctl.name, + (xcvr->mode =3D=3D FSL_XCVR_MODE_ARC)); + fsl_xcvr_activate_ctl(dai, fsl_xcvr_earc_capds_kctl.name, + (xcvr->mode =3D=3D FSL_XCVR_MODE_EARC)); + } ret =3D regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_IER0, FSL_XCVR_IRQ_EARC_ALL, 0); if (ret < 0) { @@ -673,7 +683,10 @@ static int fsl_xcvr_trigger(struct snd_pcm_substream *= substream, int cmd, dev_err(dai->dev, "Failed to stop DATA_TX: %d\n", ret); return ret; } - fallthrough; + if (xcvr->soc_data->spdif_only) + break; + else + fallthrough; case FSL_XCVR_MODE_EARC: /* clear ISR_CMDC_TX_EN, W1C */ ret =3D regmap_write(xcvr->regmap, @@ -877,9 +890,13 @@ static int fsl_xcvr_dai_probe(struct snd_soc_dai *dai) =20 snd_soc_dai_init_dma_data(dai, &xcvr->dma_prms_tx, &xcvr->dma_prms_rx); =20 - snd_soc_add_dai_controls(dai, &fsl_xcvr_mode_kctl, 1); - snd_soc_add_dai_controls(dai, &fsl_xcvr_arc_mode_kctl, 1); - snd_soc_add_dai_controls(dai, &fsl_xcvr_earc_capds_kctl, 1); + if (xcvr->soc_data->spdif_only) + xcvr->mode =3D FSL_XCVR_MODE_SPDIF; + else { + snd_soc_add_dai_controls(dai, &fsl_xcvr_mode_kctl, 1); + snd_soc_add_dai_controls(dai, &fsl_xcvr_arc_mode_kctl, 1); + snd_soc_add_dai_controls(dai, &fsl_xcvr_earc_capds_kctl, 1); + } snd_soc_add_dai_controls(dai, fsl_xcvr_tx_ctls, ARRAY_SIZE(fsl_xcvr_tx_ctls)); snd_soc_add_dai_controls(dai, fsl_xcvr_rx_ctls, @@ -930,10 +947,11 @@ static const struct reg_default fsl_xcvr_reg_defaults= [] =3D { { FSL_XCVR_ISR_SET, 0x00000000 }, { FSL_XCVR_ISR_CLR, 0x00000000 }, { FSL_XCVR_ISR_TOG, 0x00000000 }, - { FSL_XCVR_RX_DPTH_CTRL, 0x00002C89 }, - { FSL_XCVR_RX_DPTH_CTRL_SET, 0x00002C89 }, - { FSL_XCVR_RX_DPTH_CTRL_CLR, 0x00002C89 }, - { FSL_XCVR_RX_DPTH_CTRL_TOG, 0x00002C89 }, + { FSL_XCVR_CLK_CTRL, 0x0000018F }, + { FSL_XCVR_RX_DPTH_CTRL, 0x00040CC1 }, + { FSL_XCVR_RX_DPTH_CTRL_SET, 0x00040CC1 }, + { FSL_XCVR_RX_DPTH_CTRL_CLR, 0x00040CC1 }, + { FSL_XCVR_RX_DPTH_CTRL_TOG, 0x00040CC1 }, { FSL_XCVR_RX_DPTH_CNTR_CTRL, 0x00000000 }, { FSL_XCVR_RX_DPTH_CNTR_CTRL_SET, 0x00000000 }, { FSL_XCVR_RX_DPTH_CNTR_CTRL_CLR, 0x00000000 }, @@ -966,6 +984,12 @@ static const struct reg_default fsl_xcvr_reg_defaults[= ] =3D { =20 static bool fsl_xcvr_readable_reg(struct device *dev, unsigned int reg) { + struct fsl_xcvr *xcvr =3D dev_get_drvdata(dev); + + if (xcvr->soc_data->spdif_only) + if ((reg >=3D FSL_XCVR_IER && reg <=3D FSL_XCVR_PHY_AI_RDATA) || + reg > FSL_XCVR_TX_DPTH_BCRR) + return false; switch (reg) { case FSL_XCVR_VERSION: case FSL_XCVR_EXT_CTRL: @@ -991,6 +1015,12 @@ static bool fsl_xcvr_readable_reg(struct device *dev,= unsigned int reg) case FSL_XCVR_RX_DPTH_CTRL_SET: case FSL_XCVR_RX_DPTH_CTRL_CLR: case FSL_XCVR_RX_DPTH_CTRL_TOG: + case FSL_XCVR_RX_CS_DATA_0: + case FSL_XCVR_RX_CS_DATA_1: + case FSL_XCVR_RX_CS_DATA_2: + case FSL_XCVR_RX_CS_DATA_3: + case FSL_XCVR_RX_CS_DATA_4: + case FSL_XCVR_RX_CS_DATA_5: case FSL_XCVR_RX_DPTH_CNTR_CTRL: case FSL_XCVR_RX_DPTH_CNTR_CTRL_SET: case FSL_XCVR_RX_DPTH_CNTR_CTRL_CLR: @@ -1027,6 +1057,11 @@ static bool fsl_xcvr_readable_reg(struct device *dev= , unsigned int reg) =20 static bool fsl_xcvr_writeable_reg(struct device *dev, unsigned int reg) { + struct fsl_xcvr *xcvr =3D dev_get_drvdata(dev); + + if (xcvr->soc_data->spdif_only) + if (reg >=3D FSL_XCVR_IER && reg <=3D FSL_XCVR_PHY_AI_RDATA) + return false; switch (reg) { case FSL_XCVR_EXT_CTRL: case FSL_XCVR_EXT_IER0: @@ -1103,32 +1138,34 @@ static irqreturn_t irq0_isr(int irq, void *devid) if (isr & FSL_XCVR_IRQ_NEW_CS) { dev_dbg(dev, "Received new CS block\n"); isr_clr |=3D FSL_XCVR_IRQ_NEW_CS; - /* Data RAM is 4KiB, last two pages: 8 and 9. Select page 8. */ - regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_CTRL, - FSL_XCVR_EXT_CTRL_PAGE_MASK, - FSL_XCVR_EXT_CTRL_PAGE(8)); - - /* Find updated CS buffer */ - reg_ctrl =3D xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_0; - reg_buff =3D xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_0; - memcpy_fromio(&val, reg_ctrl, sizeof(val)); - if (!val) { - reg_ctrl =3D xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_1; - reg_buff =3D xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_1; + if (!xcvr->soc_data->spdif_only) { + /* Data RAM is 4KiB, last two pages: 8 and 9. Select page 8. */ + regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_CTRL, + FSL_XCVR_EXT_CTRL_PAGE_MASK, + FSL_XCVR_EXT_CTRL_PAGE(8)); + + /* Find updated CS buffer */ + reg_ctrl =3D xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_0; + reg_buff =3D xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_0; memcpy_fromio(&val, reg_ctrl, sizeof(val)); - } + if (!val) { + reg_ctrl =3D xcvr->ram_addr + FSL_XCVR_RX_CS_CTRL_1; + reg_buff =3D xcvr->ram_addr + FSL_XCVR_RX_CS_BUFF_1; + memcpy_fromio(&val, reg_ctrl, sizeof(val)); + } =20 - if (val) { - /* copy CS buffer */ - memcpy_fromio(&xcvr->rx_iec958.status, reg_buff, - sizeof(xcvr->rx_iec958.status)); - for (i =3D 0; i < 6; i++) { - val =3D *(u32 *)(xcvr->rx_iec958.status + i*4); - *(u32 *)(xcvr->rx_iec958.status + i*4) =3D - bitrev32(val); + if (val) { + /* copy CS buffer */ + memcpy_fromio(&xcvr->rx_iec958.status, reg_buff, + sizeof(xcvr->rx_iec958.status)); + for (i =3D 0; i < 6; i++) { + val =3D *(u32 *)(xcvr->rx_iec958.status + i*4); + *(u32 *)(xcvr->rx_iec958.status + i*4) =3D + bitrev32(val); + } + /* clear CS control register */ + memset_io(reg_ctrl, 0, sizeof(val)); } - /* clear CS control register */ - memset_io(reg_ctrl, 0, sizeof(val)); } } if (isr & FSL_XCVR_IRQ_NEW_UD) { @@ -1168,8 +1205,13 @@ static const struct fsl_xcvr_soc_data fsl_xcvr_imx8m= p_data =3D { .fw_name =3D "imx/xcvr/xcvr-imx8mp.bin", }; =20 +static const struct fsl_xcvr_soc_data fsl_xcvr_imx93_data =3D { + .spdif_only =3D true, +}; + static const struct of_device_id fsl_xcvr_dt_ids[] =3D { { .compatible =3D "fsl,imx8mp-xcvr", .data =3D &fsl_xcvr_imx8mp_data }, + { .compatible =3D "fsl,imx93-xcvr", .data =3D &fsl_xcvr_imx93_data}, { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, fsl_xcvr_dt_ids); @@ -1229,7 +1271,7 @@ static int fsl_xcvr_probe(struct platform_device *pde= v) return PTR_ERR(xcvr->regmap); } =20 - xcvr->reset =3D devm_reset_control_get_exclusive(dev, NULL); + xcvr->reset =3D devm_reset_control_get_optional_exclusive(dev, NULL); if (IS_ERR(xcvr->reset)) { dev_err(dev, "failed to get XCVR reset control\n"); return PTR_ERR(xcvr->reset); @@ -1306,12 +1348,14 @@ static __maybe_unused int fsl_xcvr_runtime_suspend(= struct device *dev) if (ret < 0) dev_err(dev, "Failed to clear IER0: %d\n", ret); =20 - /* Assert M0+ reset */ - ret =3D regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_CTRL, - FSL_XCVR_EXT_CTRL_CORE_RESET, - FSL_XCVR_EXT_CTRL_CORE_RESET); - if (ret < 0) - dev_err(dev, "Failed to assert M0+ core: %d\n", ret); + if (!xcvr->soc_data->spdif_only) { + /* Assert M0+ reset */ + ret =3D regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_CTRL, + FSL_XCVR_EXT_CTRL_CORE_RESET, + FSL_XCVR_EXT_CTRL_CORE_RESET); + if (ret < 0) + dev_err(dev, "Failed to assert M0+ core: %d\n", ret); + } =20 regcache_cache_only(xcvr->regmap, true); =20 @@ -1367,6 +1411,9 @@ static __maybe_unused int fsl_xcvr_runtime_resume(str= uct device *dev) goto stop_spba_clk; } =20 + if (xcvr->soc_data->spdif_only) + return 0; + ret =3D reset_control_deassert(xcvr->reset); if (ret) { dev_err(dev, "failed to deassert M0+ reset.\n"); diff --git a/sound/soc/fsl/fsl_xcvr.h b/sound/soc/fsl/fsl_xcvr.h index 4769b0fca21d..044058fc6aa2 100644 --- a/sound/soc/fsl/fsl_xcvr.h +++ b/sound/soc/fsl/fsl_xcvr.h @@ -49,6 +49,13 @@ #define FSL_XCVR_RX_DPTH_CTRL_CLR 0x188 #define FSL_XCVR_RX_DPTH_CTRL_TOG 0x18c =20 +#define FSL_XCVR_RX_CS_DATA_0 0x190 +#define FSL_XCVR_RX_CS_DATA_1 0x194 +#define FSL_XCVR_RX_CS_DATA_2 0x198 +#define FSL_XCVR_RX_CS_DATA_3 0x19C +#define FSL_XCVR_RX_CS_DATA_4 0x1A0 +#define FSL_XCVR_RX_CS_DATA_5 0x1A4 + #define FSL_XCVR_RX_DPTH_CNTR_CTRL 0x1C0 #define FSL_XCVR_RX_DPTH_CNTR_CTRL_SET 0x1C4 #define FSL_XCVR_RX_DPTH_CNTR_CTRL_CLR 0x1C8 --=20 2.25.1 From nobody Tue Sep 16 10:40:23 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7DCC2C54EBC for ; Wed, 4 Jan 2023 02:40:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237900AbjADCkj (ORCPT ); Tue, 3 Jan 2023 21:40:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54750 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234251AbjADCkf (ORCPT ); Tue, 3 Jan 2023 21:40:35 -0500 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on2073.outbound.protection.outlook.com [40.107.8.73]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CF30225D0; Tue, 3 Jan 2023 18:40:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JWrQ1v8i3t/NN2rzP+vRPtodLcUkVkvY9CMQ8MLAuZRMdy3wO7d6teY2zIeDGhd5CdeJ9uZTc/ZT3TlzfsIGQW/TNUE4jzoeUlq1e5VmBQllG2jou4JlmSW42Vzkr1kpPJPm13scQv/K4/0+trppL6If6m/r1oW7h3WJcak2DjpOP+ED3z5fhNDurwavZRfjCJztrU1n+U58UboGn5a3H7BQy5W34D5vM/BsHQqR+/BNgZ42T2VMKsJ1kMD/5g0RfwTXR019wAUVObgs57Ye092IbocqUbwnX14mOdhBYe7PPWd/AkJfTDE1rH1s3yVFkdUTKbM2BIPIGKVy3xe/Ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jfqqfKq+p5L47STbaiUShceGluBUv/TPjceQ6WfftIM=; b=EBxI14q1YL4DazbFnFhDO7iWb0nQ8ZYWaF5NutNqBQXIj3eOWcitSJaiumCZIH1lWn+Xtl2X0q2Ueh6W6SGxA+oMIBLDVKR0sU7QX0ly/EYUSrokI+F9saTjmwZrGD5m4KZVJJEuhAkFumkS6n2nfbfJMSElvou1s0Fx16xyf/vB19nkp9wfGgpbd4w7hppVfqHZOed64jqnMMRwikTpLVxdc/zJsQkDsX49YTvBgW3OmEsGGSwPvugQCn7umfSbIPPfdcFN4KQTWNJRtEjzHOgu8R3cmFqOlS3+eTjlnVLVdEff+gDWF6JB1nIUOtZIW1e2tNt/WN5YzBhj/HoxGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jfqqfKq+p5L47STbaiUShceGluBUv/TPjceQ6WfftIM=; b=lhoeWhxVfwBtJ9Ij2fWglthZe69BPN1bALFBfKoPHlfxtAGe9vzrCrY0GvPnpvRl3Q2YNyS7FPiFa8dqXDfHtmy7JzeK225wFXTOReFs/FIAPZxCzG/E2TAhBtgccV1JvpSIWBYbKwILEaoILyGwhll8lbwsEO6drdnsViWV2Zk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM0PR04MB4211.eurprd04.prod.outlook.com (2603:10a6:208:5b::30) by PAXPR04MB8491.eurprd04.prod.outlook.com (2603:10a6:102:1df::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5944.19; Wed, 4 Jan 2023 02:40:31 +0000 Received: from AM0PR04MB4211.eurprd04.prod.outlook.com ([fe80::c1e7:eafb:408c:6ae5]) by AM0PR04MB4211.eurprd04.prod.outlook.com ([fe80::c1e7:eafb:408c:6ae5%4]) with mapi id 15.20.5944.018; Wed, 4 Jan 2023 02:40:31 +0000 From: Chancel Liu To: lgirdwood@gmail.com, broonie@kernel.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com, perex@perex.cz, tiwai@suse.com, devicetree@vger.kernel.org, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Cc: Chancel Liu Subject: [RESEND v2 3/3] ASoC: fsl_xcvr: Add constraints of period size while using eDMA Date: Wed, 4 Jan 2023 10:39:53 +0800 Message-Id: <20230104023953.2973362-4-chancel.liu@nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230104023953.2973362-1-chancel.liu@nxp.com> References: <20230104023953.2973362-1-chancel.liu@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0130.apcprd02.prod.outlook.com (2603:1096:4:188::8) To AM0PR04MB4211.eurprd04.prod.outlook.com (2603:10a6:208:5b::30) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR04MB4211:EE_|PAXPR04MB8491:EE_ X-MS-Office365-Filtering-Correlation-Id: deb709da-4e7e-457d-f6e6-08daedfd0c1c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2y5t+7/Zfok6umTtS7E7NBqtige4x8338vyycTDikSGMTyDd3vBYuvQAwg20XgFA83dVjrJKvKfJaa9gajxqqIq4dWRNgf7WsCGY+a9cciMAECiz2k+yJox+ZNO5D5fO/BtcfernsO7EDcbnpRfhU702E1L1yytmKLqMZ3b6CC5/xL/F0y8NxC4PRpbUG5aRUK9fgQKECd+NRrsYxez6OLvekBQch7ldnQ7a7afIw28PjJ4hTdIMVDaSUNclgMv2Bn5NpOXTiQzaVZS7EJ7kxOGw75j9INgYiuU8eQLlZ+Z4FbhQCFFS4MbmiBqX6QQ2Wctz2k2acRSnhMvyn4xX77LUy/2m7StwnMFTyHFdPschEfHItXgpmc1zvyCUab0l1ACilT35pGTCGtH2fpwCuaCgdbQJDedewhwAP7lMUf7Y1DbjcHgJOzQHT27YF9JC3EIUwUTvAXX8VjbK8rIs3ssEugyNazQhMvRoxRbtHajLjG+dyhZaAQW44SG2voqjtG8lYIQk5BIiINeiGt9QTO0ynj9uRPBnrYvSdYercNCCC6W9ELGIdavj+OSeibNTkxFiqwV14k8RZKytWrZUvNqD5y7n8QpYXjv897UmQ8jvY6zdJezu2yZOS29xwKjXrpFoehkbbEq9B7+ENkuN+tUwusxG3W/CZ+zR6RoiOedTZA9qi+zHNv6JfoWDxmm6EefPA/zfFsJhbC34MOf89A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR04MB4211.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(136003)(39860400002)(376002)(346002)(366004)(396003)(451199015)(8936002)(7416002)(41300700001)(8676002)(4326008)(66476007)(5660300002)(66946007)(66556008)(44832011)(316002)(2906002)(6506007)(52116002)(6512007)(6486002)(26005)(186003)(478600001)(6666004)(86362001)(1076003)(2616005)(921005)(38350700002)(38100700002)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ZEg6KyT26XnxtLUr5ruWoIxFCwr42QOYmsuE0WV8Y1SnyWljZPpjz3GvoNif?= =?us-ascii?Q?qfTyoRaWhta2cGQG20JmEdpNAD9PP1b2gjv6ZFU9SvzQDJ7szU16cwtN2FpZ?= =?us-ascii?Q?NXBeX2YhpCqiOTxyQupr1nuzajgM0DbeI3kqcpBwvb05HRI/w8gATHbGjU/8?= =?us-ascii?Q?5cknXeSVnAnnzw4F4yGNskF4qSfTVKfF/tFgEtmPSL/9ZWfpp0uqq5B9nEhJ?= =?us-ascii?Q?KqSc4ZyHIkuGaQtbr2o/RiBHI8pf/B441GercUypeQt94B8mHadj+gSNy62S?= =?us-ascii?Q?1WE8TVYDOMqUR6k1dBQx6yw0H9S9tKedEqpEUUxcJXdU7Jr75e1mW8zQ06fn?= =?us-ascii?Q?eoZb17sgXTUmVKQLUVYy2UIJ3334RiImp9XlIGUJYtb5jvroYKnQsLt0hCar?= =?us-ascii?Q?vEQ9IhTNe6OmXh0W6lA1t+P2y2Ghd3sgSNEXs1Mnx8mCquz2ROPevBkUniKb?= =?us-ascii?Q?Vxk0p6lSyPCHAtsJ8lAyWz/2v7XmSs+uDE3gmakqZtht/HnWDhUalvLRUeVk?= =?us-ascii?Q?Ip+nLvcgG6c9lqFInMxPXcnh/p/JsRcEihX9VL548sK8LZM8uWrj4sDJdNpP?= =?us-ascii?Q?0xWy+wPVDFURaKPvI5mmvodha14Cz+3+1M3qiATTaGWjM024OlaY6iVFQfil?= =?us-ascii?Q?nZRcec5oO62mmIZ31EI2+ZjwD6218oCWkbkXUnAzBju5245vFEtr/4v2tYDs?= =?us-ascii?Q?J5EwacyfngEogve4kLgT3+KAPPo33P34tORBoK187tPciXsmfvZtxC9C+CSH?= =?us-ascii?Q?efdOBi0QJfDJels7ZQATf62+xAwM1QQ7MLJF4Klv1z5d9ed6MnVS/mvYDKsM?= =?us-ascii?Q?D7BRC4nD6MjX29E9jjdN9OsmgzAivEXiZiwX/rxMSTxY+nFlSaX93b+QzVQt?= =?us-ascii?Q?SrunAHaPTe2SJeNneu8H4pU5OaApNlHej4rjgeaz6lSpQLs5Ir6x9psg1GW+?= =?us-ascii?Q?teRlDmKmLBvtL0dnmfaa3hdfYZ7gt8lh6VSZXdDc3hB0GrML9YA6DQ+1vrS2?= =?us-ascii?Q?ejwiWMZfKXfepJDpexkIT983eplnC4mbonSPWsOhDZY+a8PfNIgRKcY8O2bR?= =?us-ascii?Q?z5euiw7I7eLnTBKbhkWo9yWI2cmkoGI4twHMloFFa9qCLjqGhI7q8W30KV/Z?= =?us-ascii?Q?I5wWjSMdzr+7l0CQ5wHqjAf4mmxl0pQOUR0IG5QBz9FLMu6bhiaF/HqlvqcF?= =?us-ascii?Q?VtIAK1K5fh+JnZDpZhTGZQB3dXYyMhH7ICrtDjenWZ3zcX8E97bUsJcUWEhu?= =?us-ascii?Q?YTM41CFsJaFDMySho4R0JlaNGyizRJ6zidg/1/ILcB5uKJB32ls/WXyILV+8?= =?us-ascii?Q?LdVCD99kdt6e51C6Z6nyGruDM1YqFTSZIgC0pW2JP8nuGA0kwPD7L+W6jjI1?= =?us-ascii?Q?IKOBz9bTDZqFJk5XqD/ydw66/75hr/6r379JIp5NlswLGIQl67D8Z2pC2Hdz?= =?us-ascii?Q?aYh2fTff+PrZMBwbOhzZP3B9egVPHrYdoCEbofE+yF13EsKNIrXOQheP64pY?= =?us-ascii?Q?aXqV3SPdIWP+/poO6e+ab6p7jCVIRILre2H+I2w1kHOb49PKKv9eUC3o9/RK?= =?us-ascii?Q?TGL3IZmksnuianIjTYy+bXGtzkt6exUT0lx/fu7e?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: deb709da-4e7e-457d-f6e6-08daedfd0c1c X-MS-Exchange-CrossTenant-AuthSource: AM0PR04MB4211.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2023 02:40:31.6298 (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: 1m3vuzFTrsF5hhBP9WhWG4dgbzUxj2jlJ0P/d9mFvHjoTNA3eBOU22diDLhhyrHQ3TtfoVYp5gHJCHqM5ex/Ww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8491 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" eDMA on i.MX93 platform requires the period size to be multiple of maxburst. Signed-off-by: Chancel Liu --- sound/soc/fsl/fsl_xcvr.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sound/soc/fsl/fsl_xcvr.c b/sound/soc/fsl/fsl_xcvr.c index b794158a7876..2a78243df752 100644 --- a/sound/soc/fsl/fsl_xcvr.c +++ b/sound/soc/fsl/fsl_xcvr.c @@ -22,6 +22,7 @@ struct fsl_xcvr_soc_data { const char *fw_name; bool spdif_only; + bool use_edma; }; =20 struct fsl_xcvr { @@ -538,6 +539,16 @@ static int fsl_xcvr_startup(struct snd_pcm_substream *= substream, return -EBUSY; } =20 + /* + * EDMA controller needs period size to be a multiple of + * tx/rx maxburst + */ + if (xcvr->soc_data->use_edma) + snd_pcm_hw_constraint_step(substream->runtime, 0, + SNDRV_PCM_HW_PARAM_PERIOD_SIZE, + tx ? xcvr->dma_prms_tx.maxburst : + xcvr->dma_prms_rx.maxburst); + switch (xcvr->mode) { case FSL_XCVR_MODE_SPDIF: case FSL_XCVR_MODE_ARC: @@ -1207,6 +1218,7 @@ static const struct fsl_xcvr_soc_data fsl_xcvr_imx8mp= _data =3D { =20 static const struct fsl_xcvr_soc_data fsl_xcvr_imx93_data =3D { .spdif_only =3D true, + .use_edma =3D true, }; =20 static const struct of_device_id fsl_xcvr_dt_ids[] =3D { --=20 2.25.1