From patchwork Mon Feb 28 01:01:02 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan \(OSS\)" X-Patchwork-Id: 546863 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 27307C433EF for ; Mon, 28 Feb 2022 00:59:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230394AbiB1A76 (ORCPT ); Sun, 27 Feb 2022 19:59:58 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56158 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229926AbiB1A76 (ORCPT ); Sun, 27 Feb 2022 19:59:58 -0500 Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00070.outbound.protection.outlook.com [40.107.0.70]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1D37251E4B; Sun, 27 Feb 2022 16:59:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GQfTwvuZErPrIR1Pk3jRqqjUpFEcgrjREtOzrpyPSeka+VBX039I2Mn1bjo0G6qzxqINzwPxO0QNQqgH4owcJ6n3n6jwtwwkKpa543PeDTQ043dujLjXnFVHow24mTnqf02KYNVaprJXY6XFYUpZT4sbWaB4cqrQ3SWRY3wiYz29FtBwKDlpdiAWc+NgR6n9u9cOwExlUw7e8/O5SM3Lu2CWgElvyXBOpOiBcP8CSllceSn+K/m2QNZayQ2yReJBE1F4Myc9xWnPLoxQFb6pkvDRZO5rPYFaPh1Ztd3gv1oVmq88e1lrUPTejJ8ofmD+VXlPAouwWWQOxGm9cyg7ZQ== 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=zGKavjKbIW6qbswC6VvNHvY0FT440kRE5Yir5/ONX7M=; b=K3A78wE4BqRwSSP7dVrjtD9lAazt0UstyuL7pHIotdkDo+KsQcfOAKEZVDxhFwzDoYY7bXNza85WNO4XmcYPOeFPjlZRc1JFi2zNfXiKgNQSjA5FZPiNCuIf8i9ikrJ7xOxDJ3gvQtzte1AQN90nmYYCIj9lxDV6TR+uJZQfu7SMa239gnAzXlPAm7k8mEfMlVr1hOaUh2vNcDrSI1bY+gFYniz/JRLMGn79/eOtz7DNWATkPhySgAhL/bh9oPXIFBeSKUj1X14zDzO3SyikwPr1pAJCD894GrA4ybxRxnix+N/Ig+YuY79vUn12ubICz6fb0GzCWTthqM14YTWoHA== 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=selector2-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zGKavjKbIW6qbswC6VvNHvY0FT440kRE5Yir5/ONX7M=; b=iD40oLfVponNDl2rmM6W447HhQcYnHIhFi8nwGVNlQs1i4rXdILIXZE5b1bTXqzLU2o7D9YF7Dv15QUpCYkG0okeE4YVaV4JooGPPN8eTCNz8LQUO0ZhN+sOPZfM7Rlu19I1dTRJmg0Zlu34QdWkEbdimyuKGbKYY/QvX3kvtik= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) by AM0PR04MB5412.eurprd04.prod.outlook.com (2603:10a6:208:10f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5017.25; Mon, 28 Feb 2022 00:59:14 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::552c:ed46:26dc:77cc]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::552c:ed46:26dc:77cc%4]) with mapi id 15.20.4995.018; Mon, 28 Feb 2022 00:59:14 +0000 From: "Peng Fan (OSS)" To: aisheng.dong@nxp.com, festevam@gmail.com, shawnguo@kernel.org, stefan@agner.ch, robh+dt@kernel.org Cc: kernel@pengutronix.de, linus.walleij@linaro.org, linux-imx@nxp.com, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Peng Fan Subject: [PATCH V2 1/2] dt-bindings: pinctrl: imx93: Add pinctrl binding Date: Mon, 28 Feb 2022 09:01:02 +0800 Message-Id: <20220228010103.2725893-1-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 X-ClientProxiedBy: SGXP274CA0013.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::25) To DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 613378bd-bd06-4ee2-3a70-08d9fa5589bf X-MS-TrafficTypeDiagnostic: AM0PR04MB5412:EE_ X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IIXAvBItk9nhcQpr31zQCGYE+Bav3nnykaHIDNPPBD6dR3e6sE0NWScg8r96cbYeLHYMaqJIKFJJIl/hHwiRTiKryAnBYc7e5EGxTGio9M/hA8zAxbTZT8x5/dJlf4+FN0PbwvRPWaXCLWr0qD6cU3peJXrIIxK+OPkMyZ/ChKFpEoZkyMZ5vI0Lq+tkxotBjGFUuZhsqqFmRAXnsKYavwl74QIuTLTl0xVihkA2jnU7ySujG0PoQ60y0G/lafGsyI+A3pLo75in0afOcc4ImSYtpdBJf/EtFY8kDd6GP9qidjuKZ3hF5vpW37CK+zfY89ZE4N9qFaikS7KYCi8dNZ3s1GWcqqOs6bUdL47hMd6TgPMAbWQGSLlIQ3Gf9iIqt5C9qa65R93HtBbLCAZItyX2qtsP6AAJgRSRGVx2a+GJCKXck5c1nsnvLReJ9W+ugHy5rU8Necvoo/Cubrg4kcMU/yNsdsxuzBnbl0yBadTelBMSYaUoaQE7/zsC2xFbfB1Wfn30Vz3mmNl7MLiNY9fZDvAApAkFoupTT7bdaggZRDOevDo+xa36udMBxgTi+JAkgWJI7kyvx1HA9kVH8FhEWzZiw4t4TME398meDAkIif2xSlCKS3sPK3o8nBPiNTUt3/i/J7KC8qKxTBCw2ttUROpxogXXfSMyt5eHMleQTmxKOJGSTTk67eebQbz0Bul7mUl8aEpPzZbVlwlznUtODNw7vy7xqsjXSIxxQK955zAoKPxV+LbDuHtYH7+UFA6J2SJUL1NvKnadq8b3vrAb2jiQ95LN3L0X3Cbu6Mw0SoxieCZTu1ScfKF6i4ihMivr+6chCYxS87mGOv8jhg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR04MB9417.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(38100700002)(66946007)(66556008)(66476007)(8676002)(4326008)(86362001)(6506007)(966005)(6486002)(52116002)(38350700002)(6666004)(2616005)(316002)(2906002)(83380400001)(6512007)(8936002)(7416002)(26005)(186003)(5660300002)(508600001)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ipZuDPIy5sw2+hPy+ISk5tCTfoadziScZwdhJp10P6UDSGf9Bcd0jXl4JHadMHec9UU3ROErttxkqSLkfw5vzLYB5PPPBZj5HUo/ZUqMKttscCIVUuMLl+jDB85s27ayBQHM02DL1Cs6sBw4eapW6AXVVQVLSW22nsJAQ/x2feCPQEXJHrkQ+ASmd6z0bUX9tUW/bWprcVqU3LvrkheBuW1uZgSwbFl+IJ4YlCayxCXodCnmPJqAGOXyx1KknAWHTjMecfIAQmsmstYc1N90g6DqOgQscEfdrH2JoVxAZ6YkrdX+MeCsdR0E6i8+vJRz1EiPwo50nnfZ4trGW8G73hrU0f6TN2cP3UipZBc4aOdHZGCHPnPPB4R9FzwOIVMZ1lHoD9U8e4+iDZwr+erTN4sVWPAD4YTOGjyedU+XaH/xA/nJChIXLVJ8mxStw7EIHwXUN6ao3qnN5mKxgOuFUBS1Ef72kLYTZBt9KIrkvz4J1akDdhsbyMaCqu+s2QIkI6BPrGQF5jTjmwqEqcezOl8oASGqm1wMiVbInvCoeIYZlYLfz+oYVAqau2lLHyS1V75VsdFrX4FQQ9t+/vD7/6JJatP91FuqFteHcin6SbO2nKYfFqH5OH2DkHO/eN281w+B/70/LmwcHbRCZw/Grq8v1wQLC67FzH6/eNLRo50XLsGh/oJqmSZS1OHs+iJ+z0+Jla5VpQ9iKC/ouTpnCyH4DSkft+CEXbMjlB46iN07wrEDrp3Enb+bzlHiea2GXBCT0gkXaGcu3+01QilFA9iO/gfmMbjr37G1kTpRUjJsfRGzkFTIfi9Uf9j6NAdjAWLbrcVTbgg+koZWfimDrIWSpNbrQwTNMdEBAnXOGuF7aUhUH5TPes0O+NeJAWFYHyrznIaR/2qHBRwx4vs9uVughtMinXQ5+xYTGEZ6fta2ygMe+aBcavm+YBWxbIjZjNLJ/sVFk8LQsSlsQrvIeyktHyevYeKqotW4sbZ7hAFS0t9N+0eqmV3SxJhR2C/buFKBgp+7UzPCdKWNRbVfCkY+wNj1xDrOzdqaMkV8mJRTkm7qE0Wx5F9COgdtlwPTRFWxNoFJsrlX4oKybm0sWlIUaCIVvIplp50cgs4P4u2tzbWakEyM6mYIBX9fjp0d6xwC53b95CLEqqCYAkmoXNDjUTBmKae87mtdqkVcschVnMKVpdNSh6CopqAVOZ9EVRmyMW5HRjulddXjO1di/FHVXxKPMNSe5o5Atm+R5C2wPg6mNAoj1mOoyaXefsOHuKRjgMD+haz0Z1IQZLShLeudizeMDkU+kh4IoNLqKvEx7nLGtBjeExIFnh8kXtLGh+eVZ1YGhxXYQLAzpO51SLDPTITBpEb6hRZbk/7a4RvQZ5UinLhUuHfFw4mEgapy2xr8tRk3f0znMvEjkm63rxsQ2KpehosE+A8TjiuK2JgvFIRMQ0PnKG/zmm6ihxRjYBpgFiCg5xv9W+yXsXG2whWA3EhorzeFKyUGZRZ9MRmc1r9r/jt1vWqcI2By8Hq3Tl/I2fAjP0pZITNgfNYWr8F5ofR4iPQa3lxL2H92mTaHFCbwLaKS8blzDKbv6hYHFv7EGP+eJpBW6pGGaznMVnwbB2bhJypRzSVHogRzTRE= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 613378bd-bd06-4ee2-3a70-08d9fa5589bf X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2022 00:59:14.2779 (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: 2tTGiur6+6XcoOHNeoUsVnU7q6z5hGN39kQ9gZ3j7ydjcEc4t+5UFeV1nMv7GerdkUjkPpDd2oGy5KYp+qFPKA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB5412 Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org From: Peng Fan Add pinctrl binding doc for i.MX93 Signed-off-by: Peng Fan Reviewed-by: Rob Herring --- V2: Licence update Move allOf above properties .../bindings/pinctrl/fsl,imx93-pinctrl.yaml | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx93-pinctrl.yaml diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx93-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/fsl,imx93-pinctrl.yaml new file mode 100644 index 000000000000..66baa6082a4f --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/fsl,imx93-pinctrl.yaml @@ -0,0 +1,85 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/pinctrl/fsl,imx93-pinctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Freescale IMX93 IOMUX Controller + +maintainers: + - Peng Fan + +description: + Please refer to fsl,imx-pinctrl.txt and pinctrl-bindings.txt in this directory + for common binding part and usage. + +allOf: + - $ref: "pinctrl.yaml#" + +properties: + compatible: + const: fsl,imx93-iomuxc + + reg: + maxItems: 1 + +# Client device subnode's properties +patternProperties: + 'grp$': + type: object + description: + Pinctrl node's client devices use subnodes for desired pin configuration. + Client device subnodes use below standard properties. + + properties: + fsl,pins: + description: + each entry consists of 6 integers and represents the mux and config + setting for one pin. The first 5 integers are specified using a PIN_FUNC_ID macro, which can + be found in . The last + integer CONFIG is the pad setting value like pull-up on this pin. Please + refer to i.MX8M Plus Reference Manual for detailed CONFIG settings. + $ref: /schemas/types.yaml#/definitions/uint32-matrix + items: + items: + - description: | + "mux_reg" indicates the offset of mux register. + - description: | + "conf_reg" indicates the offset of pad configuration register. + - description: | + "input_reg" indicates the offset of select input register. + - description: | + "mux_val" indicates the mux value to be applied. + - description: | + "input_val" indicates the select input value to be applied. + - description: | + "pad_setting" indicates the pad configuration value to be applied. + + + required: + - fsl,pins + + additionalProperties: false + +required: + - compatible + - reg + +additionalProperties: false + +examples: + # Pinmux controller node + - | + iomuxc: pinctrl@443c0000 { + compatible = "fsl,imx93-iomuxc"; + reg = <0x30330000 0x10000>; + + pinctrl_uart3: uart3grp { + fsl,pins = + <0x48 0x1f8 0x41c 0x1 0x0 0x49>, + <0x4c 0x1fc 0x418 0x1 0x0 0x49>; + }; + }; + +... From patchwork Mon Feb 28 01:01:03 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan \(OSS\)" X-Patchwork-Id: 547407 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 8458FC43219 for ; Mon, 28 Feb 2022 00:59:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232037AbiB1BAA (ORCPT ); Sun, 27 Feb 2022 20:00:00 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56262 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231250AbiB1A77 (ORCPT ); Sun, 27 Feb 2022 19:59:59 -0500 Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00070.outbound.protection.outlook.com [40.107.0.70]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 83530522E9; Sun, 27 Feb 2022 16:59:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fzOV6YFxeXEFY1Y//aBiJekvxQjpOY87DbyIcQOdpUp0MmXDt5eYe68VRtUoIyi7judt6YXWfUd3khGiaUQwCWlM+8Skb49GjspPaYcdWOM1d1E2ZWxvQg56+P6MbyfdVPwV4uQOEfIzItr0eZN2eVSbKwiFOdEQvlSxeifQf8mmWGfNb0y4KLe22XEAvP2dksfi2em+Aw+jlYqedKQzAkurR6r/A11I6qzQhyBHXD+wEm3GOteKLA2mrTbtGjyGYBbcD9mp+tp092zHJbiSBg4CRa+s4BzkD+WnmL0F5A9wo3uGFKqTpsbzcM0ogM7JlgA0GvHdPrKdbdmIvJHKGw== 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=fBGgrEECbAqInweHGgVtWlxWdzj2F5lKmjC+sCzsdtY=; b=Cll7PuFR+yx5TJOg2bWKAO1V/BuFGTi5SnERSRXEp+sg+ufMxbCBBi2xoE/Go682zwvP+jvaS3GPFbMA8fI0bUbJFNPuH+VXJmxKCA9aLG5dzbSjQ0k/RWb3KlkgtnfUFi5xGATE7LeIEPh78343e/UP1wAmqjyEEtcRcmaeO8BkibTXRp3RwJ7Vx/QyvdSUmgRDYg/rDsAZiIBa1YsN4k0h0ABFdTTo4+Rg0ZQtWJ3gY+o9xx0hmgKGoy87ayEPW4Fz3+DzZVHBgHpD5VzIF77ZdYJONSQotEo8iknGRRf//5tng4AtH5NFOYq5TlhNWRVNd2bQPyVbV7aT9k1iMg== 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=selector2-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fBGgrEECbAqInweHGgVtWlxWdzj2F5lKmjC+sCzsdtY=; b=G04Qg3kM3MNWs+HWuvBJLtW5BSgjDMF1TBtWZqCs7dxuAk+3n5HTFkcURjvBIVPcpsEUX3ybV0M0865ZM1Gmxj2VSVnAFdmtwlVSSn0Qzkcr+4YEFbnN/kQCNEVg3KfQGYJyrXxxheTCHdOUR/TvZ9HjBJuPixZ2xS//PYUBKhM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) by AM0PR04MB5412.eurprd04.prod.outlook.com (2603:10a6:208:10f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5017.25; Mon, 28 Feb 2022 00:59:19 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::552c:ed46:26dc:77cc]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::552c:ed46:26dc:77cc%4]) with mapi id 15.20.4995.018; Mon, 28 Feb 2022 00:59:19 +0000 From: "Peng Fan (OSS)" To: aisheng.dong@nxp.com, festevam@gmail.com, shawnguo@kernel.org, stefan@agner.ch, robh+dt@kernel.org Cc: kernel@pengutronix.de, linus.walleij@linaro.org, linux-imx@nxp.com, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Jacky Bai , Peng Fan Subject: [PATCH V2 2/2] pinctrl: imx93: Add pinctrl driver support Date: Mon, 28 Feb 2022 09:01:03 +0800 Message-Id: <20220228010103.2725893-2-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220228010103.2725893-1-peng.fan@oss.nxp.com> References: <20220228010103.2725893-1-peng.fan@oss.nxp.com> X-ClientProxiedBy: SGXP274CA0013.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::25) To DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 44d01706-ecd5-402a-2c18-08d9fa558cbf X-MS-TrafficTypeDiagnostic: AM0PR04MB5412:EE_ X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PZGmRlHsineY6D2+HUL9C2g+Pg32Gihe051DQvFqg0dXFn4n26U93T8Bm9qbTdiwPuEQRTW7UHHh1QUhOLAoDqtftLgQ8RYxi72cYWH+Lbuu+wfZYpOr5qAfK1M2pFDRP+cSDBcv5F+sV/nqVwAmzKotToHHw5ZD1ypOs0W7eg3lm+icXXGvJoyDt4fnTEFtx3pUa8KgezcWHQRDUCafWEX5fHF/bk47Zr+SFshMwQVlNCXHV7RLQasi28wM0QwvChD+ggvQLsnMzSQXCHybKPBvUA59TAoK57mf32BlpwpxCUBuwQkM+jkyGf9cOScRkPBzO9ZTJqpTNDl3uUuEMet+4XI2XtuPstvkzTKhBeboTPU7cedXgkxLnoGqT2SpRQDjjSiL6LwWDvGsqyTyAtBNTgX27Efum4VE36AxzekXnOca0EHOYR0aVolcQaNgoj1biHAr8MCssC5L1DzXK4kGzoqBRluwEQ39I1ztTGe7w2c9qdSclzk/6gSTe0LcuJ5GMiZ14RO9iTXwWRof7Q/jdM96NsbCVrgGzgZkU2j6g91SWQdpC6YMiiPPdEiQfswupLBASZXSZKB8Nsq0G6Xfwjcwxtjsfaz6OzT21FMw4GmQQnzHxScZ8PP2c8zq+FawNAZp61OkZAguk6WmSJdHAWTgOosik7tWoB7nbq50yDk1gAlG20SFkMf7ikkFHSnZ+LNna01mVX/IlgwnXw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR04MB9417.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(38100700002)(66946007)(66556008)(66476007)(8676002)(4326008)(86362001)(6506007)(6486002)(52116002)(38350700002)(30864003)(6666004)(2616005)(316002)(2906002)(6512007)(8936002)(7416002)(26005)(186003)(5660300002)(508600001)(54906003)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: hCuq/Udkh3QbiPNYgdXi4lJQJfGu+sEuPC1WYQLXAiIvlCQFYl+TJ/CaknuND74fF2v4L+b42k8ji21j5k4PgL5lb5hgQ25+YEQDm6hNksBJOcyNoJgt3qgMWtQ6sMl+j5YJ8ZSAEJ9H1l38eGb+bWsRSooFg+vHHPraNW6FSOH2YBlD7tYNQ18LXkRCKyGFnuqeaLvVX93kgA/7PA4F1Su53KgP3croMk1Xu/vsq9+37MVSGFWFs2NAqueftGUY83O4fnNfz1YiYLxyHXdE1HJOWhdlLiE0P55m/BS9I78EWSqpbvqhhx1fMrHZndl47lOC1d5TyvAdUngzd66RkMytW3JaIwxD903GLqZwHX4p/fXOXc7lhxALhDnTdHUecERdjaCKl+RKL25SL0F3KqK8nMLg9IG0ptywIF1XcrNH8LhkFMtO5bkHgosdpfsK7uJTVlkRmk77MaT2mZVky84EcG3xCdpEiN8Hz/S0sqDT9hNRzfKc2HcaaBkwbVHbha/HdBUX/uvJFKQ053yz1x8z5TcG0mxFnKyI97dE9IWb96QZ/q5/QT0In5rnc4bBydOUq6K3rbqkw7WO3uClPC2dh3VnUE968jF9L9Cg2Wyeig5kzmNwdHkN2kCYq0FL2Pnch2SuQf/7pIBAuhizFGxYr1yoq0UaJOrB+QUu1bOFofKiOs5p4QUjZeNfDv7A1WY2k6egk516fR7OyJwqmoJZFEU0Dwt3uOqEYdHctx/1PMz//yxnyB7/lFTrLtOUrS0DUm3q2FamthKewPsh3VQ/VUyrAPfQ+nPv7W1/R6YCEBtk2YQxXlBoc4DKKdUGoMsziJwRGIr8aC0QgE3ZprgAbNJqUE6ETlHcUESFhQRxlWsjp1fy95JqWDtmnbUFS6GuyyYfmEtIYOug63FW48XWML8hTWieND3Yg8eV07IFNulUfhKTiGkG5HXXtxGsM3kImZMtDA43MLnCzQJtBHIDVfzw0rjj8jtkE+eLd4vVZuHAWaNz4LNFmmmvfU0YwspcvLmM5k80ISFy8C5ti0Ix/5NztpaK2pEegYZDiFhZyVzxUbqXqFI4duR6cIz+EnvmNQzZsRQ2eHOPBzS9xpH8X15nYUdIvMvKABVqscUabVD9boVLD1zkOuIqiBzpZCDYMYtZJ3dYAuidsVmFnLaoIQs/LaPK1GLrCDdzVJLg5kg2xM4j4FFcXBBvRpL7Fc8sWcQ6fQRcNg3rw7PPsfKasb2O62cE8oY824sAt8iWyTJ96YO1eQjJdWTumw41TtX4G2F1khSkrHZFtYhF6O9yxm/iFxPBYxDSq1whMbjxB2Vgbw4fmIzzxLCeE5tKt+x3fVLPgPJnLMkTNbrPhSwY0PfZLJV3cdJyjftfgoahkpX2WJIqIASD3LQqeDeMQ5r8uU7dyngqxZXDjAPAONqQ3oP6CpSpzSeqFPb5LsINphjiB387sQ65fXqjLBTLNPEN4m2UC6G8eQ9kC2pTMRldqYhd2ykYlRtW9Frzi4S/CJpv/ZYwde5HD3R9DylCf53hcY8KVp2v+lgxRPimUGFx8GdpqhVvQ5dR/uAD6OpnlKeThdzWI6+bkUcMfv/UNSvCJKaxl9ZFZq2Up/+6slNWtTOZrLOwlsYa0Kd6FcU= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 44d01706-ecd5-402a-2c18-08d9fa558cbf X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2022 00:59:19.3420 (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: TIeuDwb8c8z7RAeWGc/uQgDNzHaJ+FHZiJDus5clvHK/S7KWBKK8vVYafful5u2EjNnFFdhUfIqFDVRy/INkUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB5412 Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org From: Jacky Bai Add i.MX93 pinctrl driver Signed-off-by: Jacky Bai Signed-off-by: Peng Fan --- V2: None drivers/pinctrl/freescale/Kconfig | 7 + drivers/pinctrl/freescale/Makefile | 1 + drivers/pinctrl/freescale/pinctrl-imx93.c | 272 ++++++++++++++++++++++ 3 files changed, 280 insertions(+) create mode 100644 drivers/pinctrl/freescale/pinctrl-imx93.c diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig index 8bdafaf40b29..453dc47f4fa4 100644 --- a/drivers/pinctrl/freescale/Kconfig +++ b/drivers/pinctrl/freescale/Kconfig @@ -180,6 +180,13 @@ config PINCTRL_IMXRT1050 help Say Y here to enable the imxrt1050 pinctrl driver +config PINCTRL_IMX93 + tristate "IMX93 pinctrl driver" + depends on ARCH_MXC + select PINCTRL_IMX + help + Say Y here to enable the imx93 pinctrl driver + config PINCTRL_VF610 bool "Freescale Vybrid VF610 pinctrl driver" depends on SOC_VF610 diff --git a/drivers/pinctrl/freescale/Makefile b/drivers/pinctrl/freescale/Makefile index 565a0350bf09..9f5d1c090338 100644 --- a/drivers/pinctrl/freescale/Makefile +++ b/drivers/pinctrl/freescale/Makefile @@ -25,6 +25,7 @@ obj-$(CONFIG_PINCTRL_IMX8QM) += pinctrl-imx8qm.o obj-$(CONFIG_PINCTRL_IMX8QXP) += pinctrl-imx8qxp.o obj-$(CONFIG_PINCTRL_IMX8DXL) += pinctrl-imx8dxl.o obj-$(CONFIG_PINCTRL_IMX8ULP) += pinctrl-imx8ulp.o +obj-$(CONFIG_PINCTRL_IMX93) += pinctrl-imx93.o obj-$(CONFIG_PINCTRL_VF610) += pinctrl-vf610.o obj-$(CONFIG_PINCTRL_MXS) += pinctrl-mxs.o obj-$(CONFIG_PINCTRL_IMX23) += pinctrl-imx23.o diff --git a/drivers/pinctrl/freescale/pinctrl-imx93.c b/drivers/pinctrl/freescale/pinctrl-imx93.c new file mode 100644 index 000000000000..c0630f69e995 --- /dev/null +++ b/drivers/pinctrl/freescale/pinctrl-imx93.c @@ -0,0 +1,272 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright 2021 NXP + */ + +#include +#include +#include +#include +#include +#include +#include + +#include "pinctrl-imx.h" + +enum imx93_pads { + IMX93_IOMUXC_DAP_TDI = 0, + IMX93_IOMUXC_DAP_TMS_SWDIO = 1, + IMX93_IOMUXC_DAP_TCLK_SWCLK = 2, + IMX93_IOMUXC_DAP_TDO_TRACESWO = 3, + IMX93_IOMUXC_GPIO_IO00 = 4, + IMX93_IOMUXC_GPIO_IO01 = 5, + IMX93_IOMUXC_GPIO_IO02 = 6, + IMX93_IOMUXC_GPIO_IO03 = 7, + IMX93_IOMUXC_GPIO_IO04 = 8, + IMX93_IOMUXC_GPIO_IO05 = 9, + IMX93_IOMUXC_GPIO_IO06 = 10, + IMX93_IOMUXC_GPIO_IO07 = 11, + IMX93_IOMUXC_GPIO_IO08 = 12, + IMX93_IOMUXC_GPIO_IO09 = 13, + IMX93_IOMUXC_GPIO_IO10 = 14, + IMX93_IOMUXC_GPIO_IO11 = 15, + IMX93_IOMUXC_GPIO_IO12 = 16, + IMX93_IOMUXC_GPIO_IO13 = 17, + IMX93_IOMUXC_GPIO_IO14 = 18, + IMX93_IOMUXC_GPIO_IO15 = 19, + IMX93_IOMUXC_GPIO_IO16 = 20, + IMX93_IOMUXC_GPIO_IO17 = 21, + IMX93_IOMUXC_GPIO_IO18 = 22, + IMX93_IOMUXC_GPIO_IO19 = 23, + IMX93_IOMUXC_GPIO_IO20 = 24, + IMX93_IOMUXC_GPIO_IO21 = 25, + IMX93_IOMUXC_GPIO_IO22 = 26, + IMX93_IOMUXC_GPIO_IO23 = 27, + IMX93_IOMUXC_GPIO_IO24 = 28, + IMX93_IOMUXC_GPIO_IO25 = 29, + IMX93_IOMUXC_GPIO_IO26 = 30, + IMX93_IOMUXC_GPIO_IO27 = 31, + IMX93_IOMUXC_GPIO_IO28 = 32, + IMX93_IOMUXC_GPIO_IO29 = 33, + IMX93_IOMUXC_CCM_CLKO1 = 34, + IMX93_IOMUXC_CCM_CLKO2 = 35, + IMX93_IOMUXC_CCM_CLKO3 = 36, + IMX93_IOMUXC_CCM_CLKO4 = 37, + IMX93_IOMUXC_ENET1_MDC = 38, + IMX93_IOMUXC_ENET1_MDIO = 39, + IMX93_IOMUXC_ENET1_TD3 = 40, + IMX93_IOMUXC_ENET1_TD2 = 41, + IMX93_IOMUXC_ENET1_TD1 = 42, + IMX93_IOMUXC_ENET1_TD0 = 43, + IMX93_IOMUXC_ENET1_TX_CTL = 44, + IMX93_IOMUXC_ENET1_TXC = 45, + IMX93_IOMUXC_ENET1_RX_CTL = 46, + IMX93_IOMUXC_ENET1_RXC = 47, + IMX93_IOMUXC_ENET1_RD0 = 48, + IMX93_IOMUXC_ENET1_RD1 = 49, + IMX93_IOMUXC_ENET1_RD2 = 50, + IMX93_IOMUXC_ENET1_RD3 = 51, + IMX93_IOMUXC_ENET2_MDC = 52, + IMX93_IOMUXC_ENET2_MDIO = 53, + IMX93_IOMUXC_ENET2_TD3 = 54, + IMX93_IOMUXC_ENET2_TD2 = 55, + IMX93_IOMUXC_ENET2_TD1 = 56, + IMX93_IOMUXC_ENET2_TD0 = 57, + IMX93_IOMUXC_ENET2_TX_CTL = 58, + IMX93_IOMUXC_ENET2_TXC = 59, + IMX93_IOMUXC_ENET2_RX_CTL = 60, + IMX93_IOMUXC_ENET2_RXC = 61, + IMX93_IOMUXC_ENET2_RD0 = 62, + IMX93_IOMUXC_ENET2_RD1 = 63, + IMX93_IOMUXC_ENET2_RD2 = 64, + IMX93_IOMUXC_ENET2_RD3 = 65, + IMX93_IOMUXC_SD1_CLK = 66, + IMX93_IOMUXC_SD1_CMD = 67, + IMX93_IOMUXC_SD1_DATA0 = 68, + IMX93_IOMUXC_SD1_DATA1 = 69, + IMX93_IOMUXC_SD1_DATA2 = 70, + IMX93_IOMUXC_SD1_DATA3 = 71, + IMX93_IOMUXC_SD1_DATA4 = 72, + IMX93_IOMUXC_SD1_DATA5 = 73, + IMX93_IOMUXC_SD1_DATA6 = 74, + IMX93_IOMUXC_SD1_DATA7 = 75, + IMX93_IOMUXC_SD1_STROBE = 76, + IMX93_IOMUXC_SD2_VSELECT = 77, + IMX93_IOMUXC_SD3_CLK = 78, + IMX93_IOMUXC_SD3_CMD = 79, + IMX93_IOMUXC_SD3_DATA0 = 80, + IMX93_IOMUXC_SD3_DATA1 = 81, + IMX93_IOMUXC_SD3_DATA2 = 82, + IMX93_IOMUXC_SD3_DATA3 = 83, + IMX93_IOMUXC_SD2_CD_B = 84, + IMX93_IOMUXC_SD2_CLK = 85, + IMX93_IOMUXC_SD2_CMD = 86, + IMX93_IOMUXC_SD2_DATA0 = 87, + IMX93_IOMUXC_SD2_DATA1 = 88, + IMX93_IOMUXC_SD2_DATA2 = 89, + IMX93_IOMUXC_SD2_DATA3 = 90, + IMX93_IOMUXC_SD2_RESET_B = 91, + IMX93_IOMUXC_I2C1_SCL = 92, + IMX93_IOMUXC_I2C1_SDA = 93, + IMX93_IOMUXC_I2C2_SCL = 94, + IMX93_IOMUXC_I2C2_SDA = 95, + IMX93_IOMUXC_UART1_RXD = 96, + IMX93_IOMUXC_UART1_TXD = 97, + IMX93_IOMUXC_UART2_RXD = 98, + IMX93_IOMUXC_UART2_TXD = 99, + IMX93_IOMUXC_PDM_CLK = 100, + IMX93_IOMUXC_PDM_BIT_STREAM0 = 101, + IMX93_IOMUXC_PDM_BIT_STREAM1 = 102, + IMX93_IOMUXC_SAI1_TXFS = 103, + IMX93_IOMUXC_SAI1_TXC = 104, + IMX93_IOMUXC_SAI1_TXD0 = 105, + IMX93_IOMUXC_SAI1_RXD0 = 106, + IMX93_IOMUXC_WDOG_ANY = 107, +}; + +/* Pad names for the pinmux subsystem */ +static const struct pinctrl_pin_desc imx93_pinctrl_pads[] = { + IMX_PINCTRL_PIN(IMX93_IOMUXC_DAP_TDI), + IMX_PINCTRL_PIN(IMX93_IOMUXC_DAP_TMS_SWDIO), + IMX_PINCTRL_PIN(IMX93_IOMUXC_DAP_TCLK_SWCLK), + IMX_PINCTRL_PIN(IMX93_IOMUXC_DAP_TDO_TRACESWO), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO00), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO01), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO02), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO03), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO04), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO05), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO06), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO07), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO08), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO09), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO10), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO11), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO12), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO13), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO14), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO15), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO16), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO17), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO18), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO19), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO20), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO21), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO22), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO23), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO24), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO25), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO26), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO27), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO28), + IMX_PINCTRL_PIN(IMX93_IOMUXC_GPIO_IO29), + IMX_PINCTRL_PIN(IMX93_IOMUXC_CCM_CLKO1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_CCM_CLKO2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_CCM_CLKO3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_CCM_CLKO4), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_MDC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_MDIO), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_TD3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_TD2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_TD1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_TD0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_TX_CTL), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_TXC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_RX_CTL), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_RXC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_RD0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_RD1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_RD2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET1_RD3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_MDC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_MDIO), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_TD3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_TD2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_TD1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_TD0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_TX_CTL), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_TXC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_RX_CTL), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_RXC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_RD0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_RD1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_RD2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_ENET2_RD3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_CLK), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_CMD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA4), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA5), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA6), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_DATA7), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD1_STROBE), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_VSELECT), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD3_CLK), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD3_CMD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD3_DATA0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD3_DATA1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD3_DATA2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD3_DATA3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_CD_B), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_CLK), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_CMD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_DATA0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_DATA1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_DATA2), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_DATA3), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SD2_RESET_B), + IMX_PINCTRL_PIN(IMX93_IOMUXC_I2C1_SCL), + IMX_PINCTRL_PIN(IMX93_IOMUXC_I2C1_SDA), + IMX_PINCTRL_PIN(IMX93_IOMUXC_I2C2_SCL), + IMX_PINCTRL_PIN(IMX93_IOMUXC_I2C2_SDA), + IMX_PINCTRL_PIN(IMX93_IOMUXC_UART1_RXD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_UART1_TXD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_UART2_RXD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_UART2_TXD), + IMX_PINCTRL_PIN(IMX93_IOMUXC_PDM_CLK), + IMX_PINCTRL_PIN(IMX93_IOMUXC_PDM_BIT_STREAM0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_PDM_BIT_STREAM1), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SAI1_TXFS), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SAI1_TXC), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SAI1_TXD0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_SAI1_RXD0), + IMX_PINCTRL_PIN(IMX93_IOMUXC_WDOG_ANY), +}; + +static const struct imx_pinctrl_soc_info imx93_pinctrl_info = { + .pins = imx93_pinctrl_pads, + .npins = ARRAY_SIZE(imx93_pinctrl_pads), + .gpr_compatible = "fsl,imx93-iomuxc-gpr", +}; + +static const struct of_device_id imx93_pinctrl_of_match[] = { + { .compatible = "fsl,imx93-iomuxc", }, + { /* sentinel */ } +}; + +static int imx93_pinctrl_probe(struct platform_device *pdev) +{ + return imx_pinctrl_probe(pdev, &imx93_pinctrl_info); +} + +static struct platform_driver imx93_pinctrl_driver = { + .driver = { + .name = "imx93-pinctrl", + .of_match_table = imx93_pinctrl_of_match, + .suppress_bind_attrs = true, + }, + .probe = imx93_pinctrl_probe, +}; + +static int __init imx93_pinctrl_init(void) +{ + return platform_driver_register(&imx93_pinctrl_driver); +} +arch_initcall(imx93_pinctrl_init); + +MODULE_AUTHOR("Bai Ping "); +MODULE_DESCRIPTION("NXP i.MX93 pinctrl driver"); +MODULE_LICENSE("GPL v2");