From nobody Mon Apr 27 20:46:24 2026 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 E808FC433EF for ; Thu, 9 Jun 2022 12:49:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243667AbiFIMte (ORCPT ); Thu, 9 Jun 2022 08:49:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38766 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242648AbiFIMtZ (ORCPT ); Thu, 9 Jun 2022 08:49:25 -0400 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30071.outbound.protection.outlook.com [40.107.3.71]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 13FF6939F0; Thu, 9 Jun 2022 05:49:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=byWcpLvv7b81Uxkkr6mFV5/4xXhVduNiwDGkZjqC58Cb9vExaHDKimiCy/fq6Ul5C11TuEer8a3t9G26TFDLI/s5yyHnWXoKdxDs8o7Hr42qxmE3LUTSnE6UzpSyw2qYabkgYXsA2DGxIertk3kHsUxn+gWWlun8xCfaeTVaJ2hyzlHl8pp5QGKblSqIsiWZQhU3DZE6/vcVorb6AaophJQTf/j5QF31OyvuFzk4/rW+NKo/XLIXXJZCE2X8/6fyyh9c3cepMSitDqXrHDDPKdi1XIhASNlU6vovNpBnJ2LknsBCj3mAoqaYMkhQibQnvoZVWqDRH0rly9fEE7wyCw== 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=64tCl/gvybKf97tOdjZGCJj84QYQelV/iYaYcawaYtw=; b=f9QzhR8sfJy8DzE/rTCafZS6vkKkQ/7iRHKR1NBTDv4TesyNT1WYkMuMZMfl4zcZ25mOZCiq0a8Epu6PXV+l2DvDviGKbLfHsdYcdBbTXZhi25e2vySuH18p36GEh8Man/5K4xLCBUKnYk2Qhuj8REB23HQ2qX3AEGHwOV9h0q/PCasQNd7VnjNq95O+75GVgtcGtsICvCPBbRDw7+tTZHo+IrCQqM2Lgjimmv6P0V0fKjfXkALckid+3ouQ9VdAqg5BJsEDkHlfCbcWsp1A+YKKBbW3Rbufj0yvVZ7+bzWSHDMfAhIw7vfVeQsFmQp492ICEmEaMysmBD/cxMib5A== 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=64tCl/gvybKf97tOdjZGCJj84QYQelV/iYaYcawaYtw=; b=QJEpxqm6a44aw3PM3vM4NaO834KhzrrKQa7xNeNn6WY/T/n9PubDRdDfMfSvMmAm3nE2EYDYptGuDDgtBkr/LKI0vVJqaeh4XH71kY1iqzShrZLZTNWUyqvq3NHuakGRfoYbE5FdVCADYsvM/WULAnjBWkgci/SxNkXo4YWn9d8= 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 AM7PR04MB6952.eurprd04.prod.outlook.com (2603:10a6:20b:107::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.13; Thu, 9 Jun 2022 12:49:21 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:21 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan Subject: [PATCH V4 1/7] dt-bindings: soc: add i.MX93 SRC Date: Thu, 9 Jun 2022 20:50:54 +0800 Message-Id: <20220609125100.3496633-2-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: dcaf8bd1-0a3b-4c4a-a5b7-08da4a16790a X-MS-TrafficTypeDiagnostic: AM7PR04MB6952: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: 3dP2M4HGkd3/Nwo3xr6Kp2NiTp8oc/gCiIcug0ieiAsR1fdnvJCi2bTYolvEZdIEKce+Q1/reCszm6dcPjWdFvYLL8wKF9WeL3Mx0xTiu5jUGvXrMWb8WuM5msTbX9eXTyugIM+fd0DkF7nGX/6kJqokWfGFHKsQrZbl7NgV6fcVLTa6b4MIMkhCC2PwofxADnYGA0A5I3zDDNnfks2/ejz4glRsTC/H8SyudJeAzF0nBaOrYDZ5P67DAzpYlhqi4Opw3OiJxDz3QS31K/wPCVyVyUKla7+TKzXFDQRREnr2TZGDHX5K6EX+4R7GDb2JAcbFySnuLBB++WSkXGusdSEpy4yDfBCPSotR9dxlq17aU42UBO+xs0ra9YVWSMTcHjYLNGBIFbZLUpiNVPl/F2IDbVPlO5rcMfjIy6MiYelRe9cvK1zhBPaoPUQPqGhxW0uf32RpAa/JtCeVHND6pxs2MdHeSXJCMqFPi/aS79AqDJl00CUD2hFe6RN84jElQAUJAkT8Ar0fGgxIpRL5vLftZYlnF2n4M0qu8O3wbPFDRaQKahkEADncYfX8nVCzRj9i5EwJ8NP297MiBzoe5pEcHsjT3kAbMv3/mSAv8BVyw4bQfEN2q0tjtiaSRnvBsPBR6jijRXxr5c7fsGi2TEWF4U/lKti9J+uc134O5XIRSGRg1azkdRPHyizr6NMU1lnl2gQC1UWkMq55/bJDut7+fQb/To+KHHufcZkXx12SiucZeg/NGdGTLiwR6Iau9+GsvY+DzF+TVobPdohEP8h80cFim2pJ2iuwDhmkeJOAaSBQr4jJrH+jwLvAYe4xi+OgiGWjo9A30wXEbf2LzA== 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)(66946007)(6512007)(66556008)(8676002)(2906002)(4326008)(66476007)(26005)(6666004)(6506007)(38100700002)(52116002)(38350700002)(86362001)(316002)(8936002)(2616005)(508600001)(7416002)(1076003)(83380400001)(6486002)(966005)(186003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?mffDauxDncqOMJw1tZSb/7gn162FohiFZGcDrUj8YJsvx4gPOKTYi5aEFFmZ?= =?us-ascii?Q?eRLwLlxGBUfxC07SM04tU2ZsVCScF6tZXLMuN639twyg3OhbXuoa2WwSZAom?= =?us-ascii?Q?rmsnp2ioKGxA9HMV+OfnWrCJdpJM6GUEHJ1dbMvS/eClZSg+xWwtSMZGQSSL?= =?us-ascii?Q?IWWvwkzy3JF4pVnGLfsf2Kw0R8UJbp8LdKe/BVi5HWPGIBL6Oc1nxgVya9zB?= =?us-ascii?Q?y6rw9CPwrVcO+hmDONCxIg2rO3fYTSKyw3SOgflnUuPqjY0c9Z3ViawJqhMb?= =?us-ascii?Q?uz2KvFr+ulB++LhdE/P6aLp9F0SCDIiJApVrcCoqtIY1cJiXryANt0IQmPnd?= =?us-ascii?Q?xlUwp5rUGt+m89NAUjzoe1/o1ikSo3GclS0otEF7gTSiYEuOLAZ9QZ5DlvES?= =?us-ascii?Q?K5Dkses4v5M6PRK54qLedjPY7pasbhgRJ2YxcWqkHgxVml+Nc2Kogl0nPEB3?= =?us-ascii?Q?1Pw93GNv5iYwQ/sk+DwfUPS4Muv+kryhR0N8GmNRKtoGZk2952MOUOFFqeMx?= =?us-ascii?Q?mm7LRRRS/IkGwHybvaiB+1rRv2JlL82sSfaoJWtQpw0EJ33I5FQVcegCmPZX?= =?us-ascii?Q?uFz5hzOed/MfNBGtXv/T4Wg5xIgR+/q0s/LwBu9F5K9jvrxbx8RlCPJaMU5c?= =?us-ascii?Q?jyEeVta0QFCBXzs+IWI5ExDRGSf4z/kp4S3y9eljcPSvscR/DxMmqbf/8ztu?= =?us-ascii?Q?KKpJt93mK/XnYdBFbgiqwVlQxNDOf6JQusp1Z0wf1gY4+8SBi6jiTddtcvBo?= =?us-ascii?Q?v1wrjPpeldWTvC3YrePeFRYS98uFYTfct9Y8RLXcl5D7sRLDM38Rsvqk8rzV?= =?us-ascii?Q?gxw3l00GcXmJiVvLu4u2GDk+wgJCo28QEqBheKQHhfspKGLIyNhp8pwoHDrz?= =?us-ascii?Q?pIO/Z7UOVzgqpu3Evo2BxFvrDTpCc8RghpP/aZLLlnxWWu3Xg/DWM3aEcAtV?= =?us-ascii?Q?+ArHgAlkMr3tR/jLnjipDk0u3t9B4B9Ua9pLF6MD/FETBnmZP9KeWmfeHevY?= =?us-ascii?Q?O+ZUBXgPOkLy29zw7sS9fIKMbqNfaXpLU/GVsIWhpZxRUFsCNCxJ40FisFxB?= =?us-ascii?Q?Z38vOYqwRdQNlssrVpeUAIwomo09C+UqVfiujHaVpWpn2P0DVhe1mE3UMxGe?= =?us-ascii?Q?wDWu4dHCkZkNMi6FZ9ZbQBBX/B2yaHHrOEBv82QJ+faZwurtO2mGyvoFCJuH?= =?us-ascii?Q?MYbz68ZV/HEI7/fEV+SNXICwhc6PAO/Bli2kcjVny+N0fnEJZQ0MITJClcY0?= =?us-ascii?Q?l9sWkZdNip8UQy3fBTdDqXfh+F5Pza7WftouxS+fRQWMckOq25bM66qXMC5F?= =?us-ascii?Q?CB5wzlK2S9F1bdYPfLQ0IXYV2MdiXvLnBVbO1VZhPiJtgRA+ycPxOwz2v+0t?= =?us-ascii?Q?EjvG16I2Ko/+W9xlQu4cbrq3JDH9wYaz3FGH0YCPk3ieTzsM0we8bL0V1TEz?= =?us-ascii?Q?lD2Y2UbLe5HwluLKI9tfbXl0n9A7FRYwUytYnOVsi1bTT0Q90IBqAeFcMKKQ?= =?us-ascii?Q?KMwj02kkjZ1KDP6I9TDm+xGxjkNfmR478wnQQ8WK1dHPxUwrg4EberRlR6z9?= =?us-ascii?Q?SNmoiRtyYka18vq9AskI09TNNkHpjhE2m8K3FvToH0+Yx+DX93BbNwaNp2v7?= =?us-ascii?Q?3WodevX7pqUzhrWkEkN5HInwieMIMCmeHqUKNJyAj89rB7UL1FdV7PxFgIit?= =?us-ascii?Q?hNJCjiiKrIhB1U8JfPJuLLumOfpgSvziwCAzNnDfantEAUGWMtqZsr4p3YsP?= =?us-ascii?Q?vXi9b5c1/Q=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: dcaf8bd1-0a3b-4c4a-a5b7-08da4a16790a X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:20.9479 (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: itsJKn3Mqs0ClZL6dv3Jhip/ATQpU8kh6qr7/yadW2JtAHr22zLhhUJ+bqH6sp5453kAm2A3WML5GIMAPJnjiA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6952 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Add bindings for i.MX93 System Reset Controller(SRC). SRC supports resets and power gating for mixes. Signed-off-by: Peng Fan --- .../bindings/power/fsl,imx93-src.yaml | 96 +++++++++++++++++++ include/dt-bindings/power/fsl,imx93-power.h | 11 +++ 2 files changed, 107 insertions(+) create mode 100644 Documentation/devicetree/bindings/power/fsl,imx93-src.y= aml create mode 100644 include/dt-bindings/power/fsl,imx93-power.h diff --git a/Documentation/devicetree/bindings/power/fsl,imx93-src.yaml b/D= ocumentation/devicetree/bindings/power/fsl,imx93-src.yaml new file mode 100644 index 000000000000..880500a841f7 --- /dev/null +++ b/Documentation/devicetree/bindings/power/fsl,imx93-src.yaml @@ -0,0 +1,96 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/power/fsl,imx93-src.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX93 System Reset Controller + +maintainers: + - Peng Fan + +description: | + The System Reset Controller (SRC) is responsible for the generation of + all the system reset signals and boot argument latching. + + Its main functions are as follows, + - Deals with all global system reset sources from other modules, + and generates global system reset. + - Responsible for power gating of MIXs (Slices) and their memory + low power control. + +properties: + compatible: + items: + - const: fsl,imx93-src + - const: syscon + + reg: + maxItems: 1 + + slices: + type: object + description: list of power domains provided by this controller. + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + patternProperties: + "power-domain@[0-9]$": + $ref: /schemas/power/power-domain.yaml# + + type: object + properties: + '#power-domain-cells': + const: 0 + + reg: + description: | + Power domain index. Valid values are defined in + include/dt-bindings/power/imx93-power.h for fsl,imx93-src + maxItems: 1 + + clocks: + description: | + A number of phandles to clocks that need to be enabled + during domain power-up sequencing to ensure reset + propagation into devices located inside this power domain. + minItems: 1 + maxItems: 5 + + required: + - '#power-domain-cells' + - reg + +required: + - compatible + - reg + - slices + +additionalProperties: false + +examples: + - | + #include + #include + + system-controller@44460000 { + compatible =3D "fsl,imx93-src", "syscon"; + reg =3D <0x44460000 0x10000>; + + slices { + #address-cells =3D <1>; + #size-cells =3D <0>; + + mediamix: power-domain@0 { + reg =3D ; + #power-domain-cells =3D <0>; + clocks =3D <&clk IMX93_CLK_MEDIA_AXI>, + <&clk IMX93_CLK_MEDIA_APB>; + }; + }; + }; diff --git a/include/dt-bindings/power/fsl,imx93-power.h b/include/dt-bindi= ngs/power/fsl,imx93-power.h new file mode 100644 index 000000000000..27fb7df80f93 --- /dev/null +++ b/include/dt-bindings/power/fsl,imx93-power.h @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */ +/* + * Copyright 2022 NXP + */ + +#ifndef __DT_BINDINGS_IMX93_POWER_H__ +#define __DT_BINDINGS_IMX93_POWER_H__ + +#define IMX93_POWER_DOMAIN_MEDIAMIX 0 + +#endif --=20 2.25.1 From nobody Mon Apr 27 20:46:24 2026 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 C616CC433EF for ; Thu, 9 Jun 2022 12:49:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232888AbiFIMtk (ORCPT ); Thu, 9 Jun 2022 08:49:40 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39236 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243479AbiFIMtc (ORCPT ); Thu, 9 Jun 2022 08:49:32 -0400 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30055.outbound.protection.outlook.com [40.107.3.55]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF24314005; Thu, 9 Jun 2022 05:49:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JQFJR1bRo12l2dk3z5m2inDHF3BJcEiu/GZ0JMbCeIEXTtqIz6igwhdQz5BFe7wDMn0ZhiX8NXhKvTItEpXbkJV/6Uore3sOl7978paB2BYFg6gUtOHW07q7o+8Ds/ld1yABOnghqsrXk+ZUTNMvYmQ+VmLqu3QYUpv6mNunGrQO1KGpaWYnXuyFblzvZ0zJyMgbP+PxgAu0bVOQ2FpHHYLa1U+pa5oCLDpr0i8Q/dUXqB+WnQr/BvhqlY+8DHWCs2RsZ+BlmFFyYfJXeimWxfxjUvt8P+RlQOyMGw7ezsw/MwV4ZiZCJEdqupb3aNWk+T3jG7lFf3uf3iP84E78nA== 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=VxbXU1r1y4blcWg6dpEAhXMgwwEmnQfsrTbk+ZKiotI=; b=N/HuTLvZ1GYGc57hLXdO5sX3q+3nhW94+1cGKrZRAdRR7SnEmdb0WVQydAquOs79nZm0MdONtCDhDzI4thpz3Lxi5QrkQbsz+B6qyFWVsDaf40iMI6xVaHchXGV8Ki4HpDFqdySaBByTWTDTJrDS2uXARIbuxmJcCkczKMMkiX0BFkLJa+8zfklRr4PZVhUxWsm2zEAIozPTHP2kGFLS1aTTIB41WZF+l8W+/U5eFqTN4YX22eIT1MrIdPzXnSnZSXvcE1rrSoYGytsdmzQLW4zhbbzFvOUmzPxjXwh3poM185+CW9JmmVlRuMoabIX4Yf9mnb4VzUnQfWuXr5K4TQ== 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=VxbXU1r1y4blcWg6dpEAhXMgwwEmnQfsrTbk+ZKiotI=; b=lCj0PwBOe+xJ2yFi5ghdH2JgUmX/Z8kvenzYn34lwlmdUDPo8zmcwm1mXe7NvnkgSquNcJWCoMgds34gYB8ABXaOAA7/ZEftZ5H/vhYXuZg7lpAshvzo2C6fvQa2SJmrcdTzSZmtCnxiKJOQ3DouKajLen6zYerNpQYykned+3Q= 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 AM7PR04MB6952.eurprd04.prod.outlook.com (2603:10a6:20b:107::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.13; Thu, 9 Jun 2022 12:49:25 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:25 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan , Krzysztof Kozlowski Subject: [PATCH V4 2/7] dt-bindings: soc: add i.MX93 mediamix blk ctrl Date: Thu, 9 Jun 2022 20:50:55 +0800 Message-Id: <20220609125100.3496633-3-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: 28a14e0c-6dc3-4a11-7b43-08da4a167be0 X-MS-TrafficTypeDiagnostic: AM7PR04MB6952: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: nFvq7bw8H6ykOF+/wEqeq8abbuuwSKlO3iRVWeIDK6Cerm5qvsp/0AGmp1Rj2/xp76JxvUmOhDwhJb7/9LjZNOMpWjsEkgtVfgBKFxIhxKr7ddpYs7ZLfFi9v51sQ4FWbecQvPDXsfxuHM40KxclqxdI+lBspfMUiZBnaL1KzrUBE7YpZLljaE37XKso5ICkg69z8bWgnEMAxN06iaUk9Q5dDscolR6/P3UPBwrYmgwhj53wwMrVofYdcpSWIDctch4AJVGdqhYCi5J2beapP1/HqIR4irLLrUWrBdSCdSmLAb2x7lEwdxdFXrMwXc8p2otHjlI0nhxb4nXoLlBpDJ9VnXQXzu585jQle6fF4WNxmolvkKVRjTvn0sBV9r7hxUiNQFGimzjxL+DD59JIlKi8AQ6y0sffhVkKRjo0FtrJE+kAa8WBmfI94bGrruxtGUBzXaAZ+L557D14cZw+sG+cKwQ0S6zgF8m0p2ETZLTuUXVA0Ja8Zkv0QsOBDUQjsVeTz4ckfcgzybzRVLq2irBA0FpLoI4h45v/U6dvAlWV9U7zKg0CAFrB/U8oEzCbLckFOCKZjfok6VSqPgEy5chRqHg+xHgWWzs999/dp9PNqpHbsSLLzPlRJJ6hm6Lxbv/BsPwhZt9CUncT2XpHofNB41+eqvDOJ84Cdhq7Zl5qTrmAtysoFen1MINeImPr/vV9AlHIl00bzC8UbQx9PnC+bC+8el19bN8pbva245SechlbM7qoPyGpgDacUYmiYqZ21rIvA1e2zfRzCATDTsibqg7viiJZ6VHkq9ZHAderaBafgZ3us2o1E8q/392nlxAMivsuJ5xTO+u8A9zykQ== 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)(66946007)(6512007)(66556008)(8676002)(2906002)(4326008)(66476007)(54906003)(26005)(6666004)(6506007)(38100700002)(52116002)(38350700002)(86362001)(316002)(8936002)(2616005)(508600001)(7416002)(1076003)(83380400001)(6486002)(966005)(186003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?PXOetEhm3poUsE3kO7b8wb8NodKGSeyAsBpUelpz63hXbELVRM+uYzCI7nU9?= =?us-ascii?Q?C3LhdQxUwYSjBR8lsaDjCWiHi+v7578gUzhBNpYc9TGGPncbhEP8U+zMdBOX?= =?us-ascii?Q?VMdsYWd1z9FKzYrvj7womdS6lLK5ykJo20QfXhI7owOB+zRNcIAPxnyvJpMm?= =?us-ascii?Q?c3LKq543z/OtG73UgqCy8zrU4r/FFeXEa+wy5NZ2H0b50DLORbTE2qHdzXd+?= =?us-ascii?Q?pKn0lvX92HP9+1Wl91HoNyt1Pj/WXoEwbJEYeN+Zo8+GIA5J2XZ/9v6MKrkM?= =?us-ascii?Q?eAg4ohdTMW+rZXXVWNiSJOse23pkDkY+yW9VFC9R6ZxD2pBnfwUrkRlCtUcM?= =?us-ascii?Q?AcpfLfRr/PZ3V2Q+naA+dNXsXUSOfvEDImf1ONBszBY8PLTiFlaZodFUSChU?= =?us-ascii?Q?v1S2rlEIsq6hof6xpv9LQ0QuYIejHlGjjSCnUs+wnkGWsViFyNbklXwVIYKD?= =?us-ascii?Q?6EwpKt4JS1uChiXQRTAbNySSj6gSwbRuLCY05QeQX4PX5fx+BDgS/Lx8jexX?= =?us-ascii?Q?hgm2iGMUlQUFStja1lJjZ1Aep5gxG21RoTIkPn5AdjjNONoWjwk3RFIY2x65?= =?us-ascii?Q?qOPEnyb1/mu6l1zg1yP2wk+DG46M/sUrcci0XFWkVYgwc7hcxYgSURtINArm?= =?us-ascii?Q?jm8ZyRkjZ/SqSAbNxYQRItF0MSofSu8K6YT6Ox7zzAnPpmYGSniyGft8cmTZ?= =?us-ascii?Q?BuspaK5GtN6qhHQSkd/jklrTySXEhqI/ox/kwCo8P/oD33TeTa/rhggFTNVn?= =?us-ascii?Q?lBd60/Op+65mI2v+yhHrXVnfQhB+xlj85wZDKC4GbHmQwgCIhUBNDzkz0+Iu?= =?us-ascii?Q?MsqwUG4p8o0GjNwquJs2dcyfxuNLFzYT7k6kjx2uTI/2LME1Zohy/5WUB4FI?= =?us-ascii?Q?cjWd7vo7ukiQXF0R+PRQiaLoLJZmU48fPq0HEfIEcYJjHoZA2l2Jwwwb8GoS?= =?us-ascii?Q?shgg/EROAydR+kEQTHhqWGQ2o5DxSkjo7S9tqpWQnKyl+WoVsPWBIz5zgppy?= =?us-ascii?Q?B7oEb/2KL0cRPVbN69eDb3pRvn3ayyS+bv165aZebWlU49NDotuxrKTGbRzk?= =?us-ascii?Q?6luUe8dIVDmjyXiZS2lqa+tv/lR8c06Xv17IykquIu3I5SlO/swvwuMTEqVR?= =?us-ascii?Q?UDsCCM0VR0esFLbaoVJgYTBZ2rqduWfywjNHE3s34lzmTpz96uMNomZLwk8I?= =?us-ascii?Q?Nm05CHL2cl6sgze21Tv3/388xwG0edCfRIpsx+/0rSufoUhccf9cwNXVIFbN?= =?us-ascii?Q?dD2FbBOGCjd1mQmR1xyL6uucSYbu8pzbfe2t9wlWlWcsbhn9NaMgcj0Kx6v5?= =?us-ascii?Q?Xurcx3AeVhPk8ISxEaaYMdIb0JYP5G5GjPQct8fjpGMOYDAc7baIWf+/ypR9?= =?us-ascii?Q?n2zfUpwJ9yUT5/rA8src3EcWWbWqgGCNHiUHsoKAOTr01YbgCcWIreWjDKSA?= =?us-ascii?Q?5B6TpFaRUlhQRCgzU+XDAkqMbZlkUktBNKalaUW50qQzz/AJd4pemSHFoPKm?= =?us-ascii?Q?XYXFdwdpYPV4Cv/orgsOVl4g+NrdRlH9ImbjtMVX0aJbtFU9vpb86p59BQkJ?= =?us-ascii?Q?103tH2wwQM8aTeU+49s6To37B+VSr0bQrQkhvHzpHTqNjNhYgHky+jCuLv66?= =?us-ascii?Q?QFGfnXdk5n+lLXtFMc7L/Hv91kazXaVgzRcHoQf7BEj0ESF90Cwzg1arZcJc?= =?us-ascii?Q?07IPtCiLjjjD5Pw5QPc+ju5m6jLcl3Av+OssFMC38b2vpuRHV0dTxgh51RJo?= =?us-ascii?Q?lpbxkOknkg=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 28a14e0c-6dc3-4a11-7b43-08da4a167be0 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:25.7531 (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: TIA+CfhQNPVe0+OzWKajGFBgNdygUPlO9u+gY43VnOBbBXC0VvPemz28qS8AvNh6S7WV/IO8+kGQdIyDyIkJxQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6952 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Add DT bindings for i.MX93 MEDIAMIX BLK CTRL. Signed-off-by: Peng Fan Reviewed-by: Krzysztof Kozlowski --- .../soc/imx/fsl,imx93-media-blk-ctrl.yaml | 80 +++++++++++++++++++ include/dt-bindings/power/fsl,imx93-power.h | 6 ++ 2 files changed, 86 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,imx93-med= ia-blk-ctrl.yaml diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-= ctrl.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-c= trl.yaml new file mode 100644 index 000000000000..792ebecec22d --- /dev/null +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.ya= ml @@ -0,0 +1,80 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/imx/fsl,imx93-media-blk-ctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX93 Media blk-ctrl + +maintainers: + - Peng Fan + +description: + The i.MX93 MEDIAMIX domain contains control and status registers known + as MEDIAMIX Block Control (MEDIAMIX BLK_CTRL). These registers include + clocking, reset, and miscellaneous top-level controls for peripherals + within the MEDIAMIX domain + +properties: + compatible: + items: + - const: fsl,imx93-media-blk-ctrl + - const: syscon + + reg: + maxItems: 1 + + '#power-domain-cells': + const: 1 + + power-domains: + maxItems: 1 + + clocks: + maxItems: 10 + + clock-names: + items: + - const: apb + - const: axi + - const: nic + - const: disp + - const: cam + - const: pxp + - const: lcdif + - const: isi + - const: csi + - const: dsi + +required: + - compatible + - reg + - power-domains + - clocks + - clock-names + +additionalProperties: false + +examples: + - | + #include + #include + + media_blk_ctrl: system-controller@4ac10000 { + compatible =3D "fsl,imx93-media-blk-ctrl", "syscon"; + reg =3D <0x4ac10000 0x10000>; + power-domains =3D <&mediamix>; + clocks =3D <&clk IMX93_CLK_MEDIA_APB>, + <&clk IMX93_CLK_MEDIA_AXI>, + <&clk IMX93_CLK_NIC_MEDIA_GATE>, + <&clk IMX93_CLK_MEDIA_DISP_PIX>, + <&clk IMX93_CLK_CAM_PIX>, + <&clk IMX93_CLK_PXP_GATE>, + <&clk IMX93_CLK_LCDIF_GATE>, + <&clk IMX93_CLK_ISI_GATE>, + <&clk IMX93_CLK_MIPI_CSI_GATE>, + <&clk IMX93_CLK_MIPI_DSI_GATE>; + clock-names =3D "apb", "axi", "nic", "disp", "cam", + "pxp", "lcdif", "isi", "csi", "dsi"; + #power-domain-cells =3D <1>; + }; diff --git a/include/dt-bindings/power/fsl,imx93-power.h b/include/dt-bindi= ngs/power/fsl,imx93-power.h index 27fb7df80f93..b3d2d9619d3a 100644 --- a/include/dt-bindings/power/fsl,imx93-power.h +++ b/include/dt-bindings/power/fsl,imx93-power.h @@ -8,4 +8,10 @@ =20 #define IMX93_POWER_DOMAIN_MEDIAMIX 0 =20 +#define IMX93_MEDIABLK_PD_MIPI_DSI 0 +#define IMX93_MEDIABLK_PD_MIPI_CSI 1 +#define IMX93_MEDIABLK_PD_PXP 2 +#define IMX93_MEDIABLK_PD_LCDIF 3 +#define IMX93_MEDIABLK_PD_ISI 4 + #endif --=20 2.25.1 From nobody Mon Apr 27 20:46:24 2026 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 38613C43334 for ; Thu, 9 Jun 2022 12:49:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243769AbiFIMtr (ORCPT ); Thu, 9 Jun 2022 08:49:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39376 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243764AbiFIMte (ORCPT ); Thu, 9 Jun 2022 08:49:34 -0400 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30055.outbound.protection.outlook.com [40.107.3.55]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 66CFE344E4; Thu, 9 Jun 2022 05:49:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rm/YYN1uktpEwq4Moem7tKiWXhayUlfghxiBW1HBkWAcyHDIZmmQPivk5LN6cO6Y33ZsYGcRF4/WHB2T3SEnt7uvCO8WKKTlbtd1o18SnzOxAFnf8YYJHjBfCFbo9kYmEaxBDB96vqJ8VZkiydne1ON2hXXzDAVdT9BHFo4pw/u7RRsq3Qp3Ikl8BR0hzhjG1YVjrEreV7iVHb3178Y6k3r665ovo/aWUa9N9nxvUjqAn/Thad8QWPzrhvdfqr8XNIMcmFsOUW2yLpyJaUgKe74ac1u9wp+Bvcol9BmYpgl/YYuUkm+7uR+oRGlui5UZfkncZwDAWLbQN3FU/vqoEA== 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=nvyBBWq/TULyYaW+qtbnBmvmh9ed2b54mEXSIqHerqY=; b=Mb2y9lMRD8BTqOwKUfaANs+s+O6G3J1tLnnNxzo/thqYacrdhHI7QRtj6raAjCjCL7BlHW28Ja7DHs628aCKpJovaVQUixNCHBgmSg+1I1F9G8eSSe30PXSSiLdZ2XaFrtw03oG3NaSIzmZnlu5xCmwTKGv7K5R2LP7poATJHe6pxsugjfiDgKfBFZBYMMiwZezJgBtTwOaJThScGAHk5uLQbR+Dwf/fxbjWyamc4rgV5Ig9wrim14wsqV/1cgbEM2aiUsXVSbxn8Bd03qdGAK1fmVRsILC15/y+QQ1RvfFET3z94PoScmE19/uwOKISQ87fOtimFmhFT3ES7R/jzA== 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=nvyBBWq/TULyYaW+qtbnBmvmh9ed2b54mEXSIqHerqY=; b=dZtReCKj2XF/HO1qvQFHFZkbFh3jIUxQh/MyV/lXrGOUUUYviPdBBJSaACn4ErzRX4PPosAogsoI6KDLC4jc97E8OZx52CxVB7LTRgh1QZIDpSj3JOXs4AnghRFp7Mne4st4Lv+abc/l5Dv9LciDg732xmnd8kYXZmZ9qvsc4qo= 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 AM7PR04MB6952.eurprd04.prod.outlook.com (2603:10a6:20b:107::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.13; Thu, 9 Jun 2022 12:49:30 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:30 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan Subject: [PATCH V4 3/7] clk: export of_clk_bulk_get_all Date: Thu, 9 Jun 2022 20:50:56 +0800 Message-Id: <20220609125100.3496633-4-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: fc1441ec-1569-42ac-7f65-08da4a167ea0 X-MS-TrafficTypeDiagnostic: AM7PR04MB6952: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: aCtJm9c7P2CMt4d+BCzRtF6N3HPbcBnavVQw17AAoYbxJySpPuQRxWO4FunhTu7+tX2y6kPv0XNB5KQ/MF/7njdYnrJ8qAIjiGdcyNaqmJUmn3EoEPiMjpnQePxWFJvAZMNfl49sjrTvoWfdro7qmIx1YVmoLTObb79y3I6ePhayrtal+ormuxQp7xJkLi4pBpY22HRImTZqaHHWLrxyQ8hTWT6UP2OA7w2hGbWMP4Djvaj2XjOHZfyEhvTxWeshCENexoH6l7vXWPMTYQY/pnm1N49aoJdvLusuEkxqr4divhoDP0uMqV+bxRoUewreD2d4rAXAsUqy2kyJelPdxMDmdDrv/g83yNrC5/ELK+7WlUmD30eqBuhgO+rEO7acodvj95Rjd3oL008NQO4Cfzmo2Q71nHHLt2NrQdsXqnNX0XB9r9cfyKRTVcPjGNFaT/A3UcIPK6nSLY3p0YXS0lnBq+4C9GwxxnFJDr/JFoinW+rZYQN3/JjZrOEC5o8rvJipv8/m1sOg8qbnZuu6YHjvQXXXmTMKz/ixfDJ2YM+mPt1ABM0cF5xxL3DIUqtN1BgtMW5bvEzCrWErl+6jSbFpepZ3B4JmqD9GeG7qyvyNhftegDORV5QhZj4YcAL2UgYyUDi5MgCjNiBT78dBjhk+SR+XB/hT2x6r8KZ/QJWmDQSxDaCAXcAgn6BAKzFobqdm8k/MU5rOtyGVIl5YGQ== 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)(66946007)(6512007)(66556008)(8676002)(2906002)(4326008)(66476007)(26005)(6666004)(6506007)(38100700002)(52116002)(38350700002)(86362001)(316002)(8936002)(2616005)(508600001)(7416002)(1076003)(83380400001)(6486002)(186003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?sg2paQOGMvk4lYC8upfmHyvJ5KTNpw27bS94ZMncAU/hXvhRBW/W1PlHcVhU?= =?us-ascii?Q?jPoJbnHs8QtEBRxjfSQqBbvkZWGdE/27oD3tkcnbwoqlSgHdxVzPFPToYkjC?= =?us-ascii?Q?5cX4LQe+NSBcWB9eqXOGtzi2dBU6wevyQsmDuni25lTf4zflwAa6RfJschLc?= =?us-ascii?Q?JKr8NV3VkMbPvgyTZOB/86/9O4i8/ooP0VM/knhNNLzfi2pS4K7J4eMac7en?= =?us-ascii?Q?ZCdCTjzkZe89nsUQjPHJTFkfWpykra9jidWLDs1aGs3hiu9HVh5p8BVmbVVr?= =?us-ascii?Q?HQdIDqlT7xjZ2mQe4D6ZQ1W8pysdVALhKEok8RAd/W7tNOOI/62NqlIvWYbC?= =?us-ascii?Q?TQFVteUN2KGe8SKx9tjsW03JcYwcbVB3TOPopUOtk8jrUWUodjhw4OQSDsuS?= =?us-ascii?Q?tbIsBdGd+LtXAn1FDiu6Ay0OgsBp3pjLZgBmh/DJv7/dfNXbrsKipJ0rk+Db?= =?us-ascii?Q?56bNzT7VioMvvboGg/6VA/6xQ5ig+5rVniJLKFS8eARTR5Wj61nBL9w8pj7B?= =?us-ascii?Q?yv2ys1t244RizE1xPYOdaiulELYS6uDiI5WMAgrntSPwHqjloIeGXSsjsc3q?= =?us-ascii?Q?CDJRNnPo9tZCiUnz8yPDto5MiW4xYAClNES5hrv2cd/Qqe9avMdkKaazHqm9?= =?us-ascii?Q?m/4/N0SAydK+7K5EJS0cQDzRBee0m9EszN5MiIp+4vy73LdKgnGtiNZJPael?= =?us-ascii?Q?DeQisLdKnBLdue1zJMiT4oPXXViOzF2O9DVeIsdlpzb5+gINtbgYyfzht8CU?= =?us-ascii?Q?jmSkoNDngj23z8sEFSbfq677LjXFP5NG06V/U0lG4Z0ZNtRLGpNq/+pldY5E?= =?us-ascii?Q?FG2C9i1mkSq4OKgt1ZydTfr2ASBVJ9JjKqJpki+/Yd1nUqeX/CQMJlCLGrgU?= =?us-ascii?Q?ibiOLf2GV11zagXF35sNiz+W7OgNZxju4OagXDJ8V2J5QPA9G2jW6c9ypWtN?= =?us-ascii?Q?Pssn0pERJhaxBbucFjYdWNob2pfdDS+BeTCWq8DLs2CSDSYs8efLR7wIKaIV?= =?us-ascii?Q?dc6vyvUUlXo2bKae8jBYLxIFsnDyOa981/rvljaWEUP+0qaFEHUZ2lsJAFsW?= =?us-ascii?Q?QMNHa4b4z9cbMOHEl+9GBYw9HwMY2ZxBABptR0K25708wbsBNv63nxReFMwj?= =?us-ascii?Q?GRi9PXD7f80QlBBeWHhGnpXGtpspfrYd88FAE/PA8+9FG06tbHjzJW1D0QUJ?= =?us-ascii?Q?LOfNAlU3PCst9AG85A/+4mCStBt2Vk6OtL/Nim2OKSu0X9HqxoAPUgbHV6jZ?= =?us-ascii?Q?UQqTSsvLBjZqSJb1PZXLNEdyzl2Y3lq52WOIHlTHzUJPVTm9Ngo0WYs1qkOW?= =?us-ascii?Q?2iwTYuMe4BDRdrqovHt/Sb27bxgIP9ldrww9OqeSEQHiQg9Wx6Tt8qZlseNy?= =?us-ascii?Q?rQL0cV51EsI4MWPDwa+ZokUr2PtFbOy1CBwhxaYjTDhku225tgcVjU5wxm4F?= =?us-ascii?Q?80INk/JrryFaTDwHu+6sKL4DSryUuhKxu361ateakwALld849fhybkcr485N?= =?us-ascii?Q?DPc/6BxYZVM/zBioiITnJYxfnavAJhQJktzbDEcNiOXfWK2s9lShQVCm9KZ9?= =?us-ascii?Q?jqHLhEptNM/n8wGv2fN5mgbbaPTRnHqjuGLUqeyr76IDofx5DPwVCjRD5+EN?= =?us-ascii?Q?5fwNMa/4tC0+3Sj9QvGWjJEpjWwF54A35uBbDcATqkHcwp6ktqliuWoLRHob?= =?us-ascii?Q?PTdU56PHo56rxdTgfcCM6J3zGApVyx23890Ij+3/hTn7tjj0uXv0ueVBAg3i?= =?us-ascii?Q?wVHdawhgUg=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: fc1441ec-1569-42ac-7f65-08da4a167ea0 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:30.3342 (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: KSQGI4M129GSoBBLMmcpPJBZ0mRNscrtLzmsCltHicISFmsOLIIinx++JLsBLdYQYkYAgJT7eiwhzSAkOyKdcQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6952 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Export of_clk_bulk_get_all, so drivers could use this API. Signed-off-by: Peng Fan --- drivers/clk/clk-bulk.c | 3 ++- include/linux/clk.h | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/clk/clk-bulk.c b/drivers/clk/clk-bulk.c index e9e16425c739..470155856b02 100644 --- a/drivers/clk/clk-bulk.c +++ b/drivers/clk/clk-bulk.c @@ -43,7 +43,7 @@ static int __must_check of_clk_bulk_get(struct device_nod= e *np, int num_clks, return ret; } =20 -static int __must_check of_clk_bulk_get_all(struct device_node *np, +int __must_check of_clk_bulk_get_all(struct device_node *np, struct clk_bulk_data **clks) { struct clk_bulk_data *clk_bulk; @@ -68,6 +68,7 @@ static int __must_check of_clk_bulk_get_all(struct device= _node *np, =20 return num_clks; } +EXPORT_SYMBOL_GPL(of_clk_bulk_get_all); =20 void clk_bulk_put(int num_clks, struct clk_bulk_data *clks) { diff --git a/include/linux/clk.h b/include/linux/clk.h index 39faa54efe88..ca74f4e83d25 100644 --- a/include/linux/clk.h +++ b/include/linux/clk.h @@ -372,6 +372,8 @@ int __must_check clk_bulk_get(struct device *dev, int n= um_clks, int __must_check clk_bulk_get_all(struct device *dev, struct clk_bulk_data **clks); =20 +int __must_check of_clk_bulk_get_all(struct device_node *np, + struct clk_bulk_data **clks); /** * clk_bulk_get_optional - lookup and obtain a number of references to clo= ck producer * @dev: device for clock "consumer" --=20 2.25.1 From nobody Mon Apr 27 20:46:24 2026 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 4BDA0C43334 for ; Thu, 9 Jun 2022 12:49:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244277AbiFIMtv (ORCPT ); Thu, 9 Jun 2022 08:49:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40078 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243725AbiFIMtm (ORCPT ); Thu, 9 Jun 2022 08:49:42 -0400 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30081.outbound.protection.outlook.com [40.107.3.81]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 46725205D7; Thu, 9 Jun 2022 05:49:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ltk8q31Wzu4Zla7ta4MqyiHmlT8uSZEjW4PVqcDFuSMBq5225zpQN8IG80Mh7hN1AH0BzYxPUcVspYODKEdHyRWrF7H4+69enYUEZQEGy6OIpD9YgrjRLXSMwbAI/OXX97vT/ne+vjk/Nnz8rhNB1gF3n7O2eHRuzNuYlNawRKizFhvurrfY4JtZttLSpLg2ENxEq4v+Mvi2UwIWHoso7Qersdrf1PnOOUDEm2xgBwU1bb70LOjDJQ6KqPC1SCVS9RHJi0Zoom/lzzQ2YMb8iw8215fIOI7PEmfIIsu7AeZiTgZOQpdy5T3YO8DWDEvk8fBmXm8iQvpOV4zI9LbzoA== 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=xj8PYQOsoyGRHYSChv9kUizYZC1UukY1tJ3BY4Ur7DU=; b=P/qzYWGl/LRoI+D+RWHySHvb+Kvxmqw8+dV5MRCTrDr8uCVBAGQfHpk1CAAHbOp6GvM+tDbTbF7WvDss9DfCKOqaH8yKhXNgkTgiwEAO3cXrY1cyNVsz9eqnwTM/LkqM9ySVltlHPx/Q2XKERCdltp5jPb5VrEMiFejOl6AfU8h51LoEzQ1PNy7T7+koalgAEjRjudyo2WAU9DKuKIUhndr8Ji8hCAWdTYpdNsArDpQ5BJZB69JbdnFfjCM23PVbAFtAliDexwjkZkgrfFQM7FYRLEXBEZVBLAjSfxTtkGKOILH62zQ3loFmpqMXl0/Gnsu5Gx/oIXNGjJosYU7m8Q== 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=xj8PYQOsoyGRHYSChv9kUizYZC1UukY1tJ3BY4Ur7DU=; b=PjJV0gd01hw3VPkMKld+6MqpKqV9dVUjJ6CO/1ymGz16gYbtXnUTSIdGCv+cb6DNRExsjRhMlwp6verse8/RqTvd2hCWDKRFEWSED1ZYiwk5AicQcx72m0OxWg47dVgHCunFBEt44zfTUvN28Ct4U8APui8/74YTNnx+prUKEDE= 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 AM7PR04MB6952.eurprd04.prod.outlook.com (2603:10a6:20b:107::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.13; Thu, 9 Jun 2022 12:49:35 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:35 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan Subject: [PATCH V4 4/7] soc: imx: add i.MX93 SRC power domain driver Date: Thu, 9 Jun 2022 20:50:57 +0800 Message-Id: <20220609125100.3496633-5-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: 2f85fe91-1d55-48ff-e8aa-08da4a16816b X-MS-TrafficTypeDiagnostic: AM7PR04MB6952: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: dfy4IFxJm6F6UriYT/Q4GXGShWeC3GCGw8038ecIb5FfyVX6tN18yN6OnluRfae5B4GIqmxXHcgEmpbLpqeH/bB0inDil0YPrvM+NUFIeycAt0VOV7wxnqGAtnfm5jJ9xRtKGPCV0r/5/mQWWAuhWyP6tSUBrOGQd3/SgwbtC7N+uWL8d9a11V30hBfzQvBLtGZPSFIvf2/IB4O+L4BRbfy/amSZMzlZtHEZVkDB49//HYV7O3mkS1C55GCXk11s0lRbtWHcIFmn7bWghYU81p72aLWcQKwNNWIh1OvD8YqGAW9ut+wXf4tsOcAD3qUQg2/1NRHNJqmcaUka91AWYbwJdD8YYa3zFg0HUpkgKo9bF5LtXO+CTdbpi5VFW+dzym2dJstp+8JcvDX0s+SIhAEQTQFkz+eHIJEKyXO3njqXbEyOqnNfnt76M9CYcNbSQ7ovxeoNHu7tTh4vLRjWnxM67x1ozUYGH4Phaku/eyb5owVc3afGrJcvGkoXFA0GzraWO7TXIO8y8QmI0TG6oavdPTlnGIL5YAVJ8O798kr7AtjG7PF6XbgssL84WjefsuAuelrlrs0XhrMsxhcXEa+sLWO1qpfhF5ryTJal5N0xuzeM4pW0h/YJ0f5Co3vxrUHOTd9SiWEM7lA98w+A1lb3tCBHnVrXTHCvvg8+UJ63cuPE1ddu+iyWHuAofIcDeG3I1O87TW1KaF6X5gj1nw== 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)(66946007)(6512007)(66556008)(8676002)(2906002)(4326008)(66476007)(26005)(6666004)(6506007)(38100700002)(52116002)(38350700002)(86362001)(316002)(8936002)(2616005)(508600001)(7416002)(1076003)(83380400001)(6486002)(186003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Ra1w9lkmr2R6TWGS5/IQry0L//JhJEaOEWtdiKEZNEvf81Y6Mzbz5XcjS0cq?= =?us-ascii?Q?qzSb/fDaB29JcyESEwHnmZucHTQjOSFwyrTXNe5wI3X6eo+tgKfJh7rSUs+N?= =?us-ascii?Q?evxQAYPYSOXCKeZZd+xS54U3UusnFN+yFLrrgp0YYdSteHKfTSGRZfqGGPzo?= =?us-ascii?Q?HEKrj+6zz9rJn2NKMTXrb4/IC1mWo+Icc97NzhifQ7AbfJml0fldnSNiqo1Y?= =?us-ascii?Q?IDODW7pfr18FNTxpk0+/w2vaBQTkB5vItzJN3emO5rVii4qlRHAVJoqxfxLA?= =?us-ascii?Q?SYnDqTVv4wiVbZiyhYukb+ofOh9qBsLg57EIwzGMMyo/4uRmWKmlarakFyDf?= =?us-ascii?Q?/DTy+dmYGHIz0PdmLQfzc5wiacljtv3Hb6h+rWw2o25Gg9LkOBa5lXHwadhB?= =?us-ascii?Q?oEarWZ/z4fyJXnlyGi8fF100ifj9LT5Nd+BlT8omeB23zfWexgmOfcAmtiXv?= =?us-ascii?Q?ijuFu7WVVQhQEysVa0NIv8Mg+rP3YqtPcLT5FafIE1gpnea46NfD/6bmkWZd?= =?us-ascii?Q?K1T/E0jApPNG9FGVGwTCGJAtXs4CUL7tJtLxwcmx/pqWYUi7hdglmFgl2mn+?= =?us-ascii?Q?1US6NCFmDOSJCTxCT8XOd+NHxTg2an5vkw8iKDVT78YkMMFnadQ5agZhX9VB?= =?us-ascii?Q?JEVK7dCl4FQKXLXBf8GTihPOtayq8ywiv1Ru1UNOB0aX9WEwlcA46/PsOhHP?= =?us-ascii?Q?BX5yaBgQxvDRD9+PqE0JX1qMb4cVSsVuZmKYdW0HcEX9DI/3NpfKUPSRvqxR?= =?us-ascii?Q?yM7m0K8QJrz4/LMT0hIfJ+nb7ifmVe9mqDCMCjBMr5j6DgOcuZsTwRVfdxWm?= =?us-ascii?Q?Oj65VzWwobO5lUz8peG0kvaeTX8rbtnYjSLbVm4ZCIS/qEcPtlMDJ5NjqyTG?= =?us-ascii?Q?zPTet7hOAK+SGq36ptzK0xkW1jbt8R81RZ3pIh+JQiN7mIx5GgWx4ruzSaZJ?= =?us-ascii?Q?Qwe/6N3pB9BQAGIot6r2Pd9PASLGArTcNABH/Gq3IONsGme+LAj/hI8QTkY3?= =?us-ascii?Q?bFF+7h2uOiUrWgu834Z/ZN0qWPMlMPemr57qhp1b4UTyx3pGOXZB6Ro9+86j?= =?us-ascii?Q?P0MXLIC5Bj+VM2djCSTju2dJwXUEYB594pT9PfOS2zQ6REFVAy998fdDWkD7?= =?us-ascii?Q?tTmllPakO9URLvVsQwly0RF4nnu0fckSuTn2XhBYkl+twm6oz+rfeoqfLjsH?= =?us-ascii?Q?pavxQfEHQMhBZ9ZRvLMPJIHNrk+F0b/bM7hrJfuq4O1yMYGIgOJpSq/BARht?= =?us-ascii?Q?kDKVw6Sp7N5VZupYTGpYYKClJ0UERQSIelxWIsbAMrU36gINpi1jDT0BdJtR?= =?us-ascii?Q?7pXdP4i7/kEaKRhnQf49xv3ausF7gTMPjoLVGLsjoZ3hpUPvwm+dGEaaaRDJ?= =?us-ascii?Q?NKFWYJkymZTNOFlNOsVL+kWC5gDn+SI3BHpDTLSDAFH+AT4ZcB0qW7X8Oub1?= =?us-ascii?Q?Udr7Zf8zYk3ocmyXTMQRAU1VM05cFDONPq/dsc5lEdwzXWj2jpzZoH7trWnR?= =?us-ascii?Q?0Eh5RSx9kXXJJMd6cOD1xYbINwe8cYHw05x8sStbXSuDta3jRf0CsNdnw8Iu?= =?us-ascii?Q?J/LYO5Euw7pZpMExj8urWApJxBde2+k5xMODpi63wO8CtzNaHnBkmhzM0N3d?= =?us-ascii?Q?ZiqOy5pEWU16j+NXggEsLQOAXB4BDVHyWpuiZos/O9jtvYstulVBB9PPX0dp?= =?us-ascii?Q?ilBDn+jk3SYQFguoe2MIlRcEuiHjMhImMploLJITLqM6PDcXi8YW6+JMZJ6P?= =?us-ascii?Q?jRP+iUSscw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2f85fe91-1d55-48ff-e8aa-08da4a16816b X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:34.9914 (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: O4XgWCcM117Dmzzvn8/ZyIKppW59E13cRmcItmC0F2XuXJnYKGFXNnWL7HDba5SyRmo2t3n+tKTaSaJgD2BkBg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6952 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Support controlling power domain managed by System Reset Controller(SRC). Current supported power domain is mediamix power domain. Signed-off-by: Peng Fan --- drivers/soc/imx/Kconfig | 10 ++ drivers/soc/imx/Makefile | 1 + drivers/soc/imx/imx93-pd.c | 271 +++++++++++++++++++++++++++++++++++++ 3 files changed, 282 insertions(+) create mode 100644 drivers/soc/imx/imx93-pd.c diff --git a/drivers/soc/imx/Kconfig b/drivers/soc/imx/Kconfig index a840494e849a..5bfc1dfea28b 100644 --- a/drivers/soc/imx/Kconfig +++ b/drivers/soc/imx/Kconfig @@ -20,4 +20,14 @@ config SOC_IMX8M support, it will provide the SoC info like SoC family, ID and revision etc. =20 +config SOC_IMX9 + tristate "i.MX9 SoC family support" + depends on ARCH_MXC || COMPILE_TEST + default ARCH_MXC && ARM64 + select SOC_BUS + select PM_GENERIC_DOMAINS + help + If you say yes here you get support for the NXP i.MX9 family + support. + endmenu diff --git a/drivers/soc/imx/Makefile b/drivers/soc/imx/Makefile index 63cd29f6d4d2..e3ed07a6bcf9 100644 --- a/drivers/soc/imx/Makefile +++ b/drivers/soc/imx/Makefile @@ -7,3 +7,4 @@ obj-$(CONFIG_IMX_GPCV2_PM_DOMAINS) +=3D gpcv2.o obj-$(CONFIG_SOC_IMX8M) +=3D soc-imx8m.o obj-$(CONFIG_SOC_IMX8M) +=3D imx8m-blk-ctrl.o obj-$(CONFIG_SOC_IMX8M) +=3D imx8mp-blk-ctrl.o +obj-$(CONFIG_SOC_IMX9) +=3D imx93-pd.o diff --git a/drivers/soc/imx/imx93-pd.c b/drivers/soc/imx/imx93-pd.c new file mode 100644 index 000000000000..d4f8a8941759 --- /dev/null +++ b/drivers/soc/imx/imx93-pd.c @@ -0,0 +1,271 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright 2022 NXP. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#define IMX93_SRC_MEDIAMIX_OFF 0x2400 + +#define MIX_SLICE_SW_CTRL_OFF 0x20 +#define SLICE_SW_CTRL_PSW_CTRL_OFF_MASK BIT(4) +#define SLICE_SW_CTRL_PDN_SOFT_MASK BIT(31) + +#define MIX_FUNC_STAT_OFF 0xB4 + +#define FUNC_STAT_PSW_STAT_MASK BIT(0) +#define FUNC_STAT_RST_STAT_MASK BIT(2) +#define FUNC_STAT_ISO_STAT_MASK BIT(4) + +struct imx93_slice_info { + char *name; + u32 mix_off; +}; + +struct imx93_plat_data { + u32 num_slice; + struct imx93_slice_info *slices; +}; + +struct imx93_power_domain { + struct generic_pm_domain genpd; + struct device *dev; + void * __iomem base; + const struct imx93_slice_info *slice_info; + struct clk_bulk_data *clks; + int num_clks; +}; + +#define to_imx93_pd(_genpd) container_of(_genpd, struct imx93_power_domain= , genpd) + +struct imx93_slice_info imx93_slice_infos[] =3D { + [IMX93_POWER_DOMAIN_MEDIAMIX] =3D { + .name =3D "mediamix", + .mix_off =3D IMX93_SRC_MEDIAMIX_OFF, + } +}; + +struct imx93_plat_data imx93_plat_data =3D { + .num_slice =3D ARRAY_SIZE(imx93_slice_infos), + .slices =3D imx93_slice_infos, +}; + +static int imx93_pd_on(struct generic_pm_domain *genpd) +{ + struct imx93_power_domain *domain =3D to_imx93_pd(genpd); + const struct imx93_slice_info *slice_info =3D domain->slice_info; + void * __iomem addr =3D domain->base + slice_info->mix_off; + u32 val; + int ret; + + ret =3D clk_bulk_prepare_enable(domain->num_clks, domain->clks); + if (ret) { + dev_err(domain->dev, "failed to enable clocks for domain: %s\n", genpd->= name); + return ret; + } + + val =3D readl(addr + MIX_SLICE_SW_CTRL_OFF); + val &=3D ~SLICE_SW_CTRL_PDN_SOFT_MASK; + writel(val, addr + MIX_SLICE_SW_CTRL_OFF); + + ret =3D readl_poll_timeout(addr + MIX_FUNC_STAT_OFF, val, + !(val & FUNC_STAT_ISO_STAT_MASK), 1, 10000); + if (ret) { + dev_err(domain->dev, "pd_on timeout: name: %s, stat: %x\n", genpd->name,= val); + return ret; + } + + return 0; +} + +static int imx93_pd_off(struct generic_pm_domain *genpd) +{ + struct imx93_power_domain *domain =3D to_imx93_pd(genpd); + const struct imx93_slice_info *slice_info =3D domain->slice_info; + void * __iomem addr =3D domain->base + slice_info->mix_off; + int ret; + u32 val; + + /* Power off MIX */ + val =3D readl(addr + MIX_SLICE_SW_CTRL_OFF); + val |=3D SLICE_SW_CTRL_PDN_SOFT_MASK; + writel(val, addr + MIX_SLICE_SW_CTRL_OFF); + + ret =3D readl_poll_timeout(addr + MIX_FUNC_STAT_OFF, val, + val & FUNC_STAT_PSW_STAT_MASK, 1, 1000); + if (ret) { + dev_err(domain->dev, "pd_off timeout: name: %s, stat: %x\n", genpd->name= , val); + return ret; + } + + clk_bulk_disable_unprepare(domain->num_clks, domain->clks); + + return 0; +}; + +static const struct of_device_id imx93_power_domain_ids[] =3D { + { .compatible =3D "fsl,imx93-src", .data =3D &imx93_plat_data, }, + {}, +}; + +static int imx93_pd_remove(struct platform_device *pdev) +{ + struct imx93_power_domain *pd =3D platform_get_drvdata(pdev); + struct device *dev =3D &pdev->dev; + const struct imx93_plat_data *data =3D of_device_get_match_data(dev); + u32 num_domains =3D data->num_slice; + struct device_node *slice_np, *np; + int ret; + + slice_np =3D of_get_child_by_name(pdev->dev.of_node, "slice"); + + for_each_child_of_node(slice_np, np) { + struct imx93_power_domain *domain; + u32 index; + + if (!of_device_is_available(np)) + continue; + + ret =3D of_property_read_u32(np, "reg", &index); + if (ret) { + dev_err(dev, "Failed to read 'reg' property\n"); + of_node_put(np); + return ret; + } + + if (index >=3D num_domains) { + dev_warn(dev, "Domain index %d is out of bounds\n", index); + continue; + } + + domain =3D &pd[index]; + + of_genpd_del_provider(np); + + pm_genpd_remove(&domain->genpd); + clk_bulk_put_all(domain->num_clks, domain->clks); + }; + + return 0; +} + +static int imx93_pd_probe(struct platform_device *pdev) +{ + struct device *dev =3D &pdev->dev; + const struct imx93_plat_data *data =3D of_device_get_match_data(dev); + const struct imx93_slice_info *slice_info =3D data->slices; + struct imx93_power_domain *pd; + u32 num_domains =3D data->num_slice; + struct device_node *slice_np, *np; + void __iomem *base; + bool is_off; + int ret; + + slice_np =3D of_get_child_by_name(dev->of_node, "slice"); + if (!slice_np) { + dev_err(dev, "No slices specified in DT\n"); + return -EINVAL; + } + + base =3D devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); + + pd =3D devm_kcalloc(dev, num_domains, sizeof(*pd), GFP_KERNEL); + if (!pd) + return -ENOMEM; + + platform_set_drvdata(pdev, pd); + + for_each_child_of_node(slice_np, np) { + struct imx93_power_domain *domain; + u32 index; + + if (!of_device_is_available(np)) + continue; + + ret =3D of_property_read_u32(np, "reg", &index); + if (ret) { + dev_err(dev, "Failed to read 'reg' property\n"); + of_node_put(np); + return ret; + } + + if (index >=3D num_domains) { + dev_warn(dev, "Domain index %d is out of bounds\n", index); + continue; + } + + domain =3D &pd[index]; + + domain->num_clks =3D of_clk_bulk_get_all(np, &domain->clks); + if (domain->num_clks < 0) { + return dev_err_probe(domain->dev, domain->num_clks, + "Failed to get %s's clocks\n", + slice_info[index].name); + } + + domain->genpd.name =3D slice_info[index].name; + domain->genpd.power_off =3D imx93_pd_off; + domain->genpd.power_on =3D imx93_pd_on; + domain->slice_info =3D &slice_info[index]; + domain->base =3D base; + + is_off =3D readl(domain->base + slice_info->mix_off + MIX_FUNC_STAT_OFF)= & + FUNC_STAT_ISO_STAT_MASK; + /* Just to sync the status of hardware */ + if (!is_off) { + ret =3D clk_bulk_prepare_enable(domain->num_clks, domain->clks); + if (ret) { + dev_err(domain->dev, "failed to enable clocks for domain: %s\n", + domain->genpd.name); + clk_bulk_put_all(domain->num_clks, domain->clks); + return 0; + } + } + + dev_info(dev, "%s: state: %x\n", domain->genpd.name, + readl(domain->base + MIX_FUNC_STAT_OFF)); + ret =3D pm_genpd_init(&domain->genpd, NULL, is_off); + if (ret) { + dev_err(dev, "failed to init genpd\n"); + clk_bulk_put_all(domain->num_clks, domain->clks); + return ret; + } + + ret =3D of_genpd_add_provider_simple(np, &domain->genpd); + if (ret) { + clk_bulk_put_all(domain->num_clks, domain->clks); + return ret; + } + } + + return 0; +} + +static const struct of_device_id imx93_dt_ids[] =3D { + { .compatible =3D "fsl,imx93-src", .data =3D &imx93_plat_data, }, + { } +}; + +static struct platform_driver imx93_power_domain_driver =3D { + .driver =3D { + .name =3D "imx93_power_domain", + .owner =3D THIS_MODULE, + .of_match_table =3D imx93_dt_ids, + }, + .probe =3D imx93_pd_probe, + .remove =3D imx93_pd_remove, +}; +module_platform_driver(imx93_power_domain_driver); + +MODULE_AUTHOR("Peng Fan "); +MODULE_DESCRIPTION("NXP i.MX93 power domain driver"); +MODULE_LICENSE("GPL v2"); --=20 2.25.1 From nobody Mon Apr 27 20:46:24 2026 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 0E193C43334 for ; Thu, 9 Jun 2022 12:50:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245480AbiFIMu1 (ORCPT ); Thu, 9 Jun 2022 08:50:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244368AbiFIMuD (ORCPT ); Thu, 9 Jun 2022 08:50:03 -0400 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30081.outbound.protection.outlook.com [40.107.3.81]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1BD5C13B8F6; Thu, 9 Jun 2022 05:49:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FCe8oBCICmInn0yu7osS8q1BLlkmNCxwQ+CUhhZQ5VtbPCWwo/CU/NZr+N9Z/BRUpLnIdyzhJnAmbut57j0HjiSBRCxOkyyz9N/S9kpQTySHYTfAJM9JVc3gtBoFoSG1J134ygmGUya8CxLsNxj9LTJNu9Nii9tihCpLR6E2zYELoRPoCQBvl+72tiBOY95KyE/03sFP+p8bOfNxDQ9cFq+rfH1J6ZZTqfYea2EVk7ShKQTX9GBv360xIQfUoP3HbYnePYQ6Y3oF40XrwWTyKco8Vt9lxhwbzd+phMBmKDsPx2BfCQGqiUd6bkXUdFsSUz0eDq8q+EQhKZVmKTfibQ== 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=JqGoqpBaSs2niTdrQf53Lh0KSihjbrum8Izxy3UI/F4=; b=ZA42NOPAgYy5YxwZvSdgAJvn/i7rjZUXhkgm2MrvSQW3lpkRNoBdjUxkKOHQk2tGFBFGVRG7iLlFNUn2wnQ5J5QXo+vUCpbnDw/RGBwpDjUql96tA12jeVRvziWGi206wKxOwmkyu2AcsRF7diNvhm/CY+HrXwHCJCR5TINdyI6XNqJgGL6QbWAjD2EmlWDg1eLIfrP0+e3VUj7Zb1qTxKvrAyfF4pTsmvCMMDk9oc0haTtiIlOAKUZ4vp5FeI6rzOFzoGqekDoxKPMoxFlJOmvCuiO5bp3wo8BmjeReXeTeZE4l6kycWZyLtfBHlpK/dMo4i3iajf8ZOz9xKmBHrw== 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=JqGoqpBaSs2niTdrQf53Lh0KSihjbrum8Izxy3UI/F4=; b=A0a9pH9VQl9faQ/utlFyZI+ygb03eG0kYa3RcrC/mX0ReCt+ZW8Y2OmAN3k7fWVCpnF/8yDZwQoTmlQf+vzTjSCp1+/lbuSkHAY3vyyCty/sVs0a6UwmcW/RKavNf0LJC3McupB6JGuDvTvf/u3FuE6JZgd9RdX2qqHE+vN4t9M= 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 AM7PR04MB6952.eurprd04.prod.outlook.com (2603:10a6:20b:107::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.13; Thu, 9 Jun 2022 12:49:39 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:39 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan Subject: [PATCH V4 5/7] soc: imx: add i.MX93 media blk ctrl driver Date: Thu, 9 Jun 2022 20:50:58 +0800 Message-Id: <20220609125100.3496633-6-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: 69b3b66a-d0e6-48b0-c235-08da4a16842b X-MS-TrafficTypeDiagnostic: AM7PR04MB6952: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: zqZHy2QnxdBMUvYhIqSQ+EqftSTDLei+QhC5sICjbJU21UOOmFXwk1tUAqsxNs0FIk5O6iCydHjsHfmoiViQbWzEmuDGxPtHru9vOr91eN39AHbK0PBru8p9VlP8lXT2wsjk3Op1Cj+a+IMXZxFTQrhHOSZDWDykPkhJSa24Q/nS7rjfuN7tLYFRbpQ+AvPYefI4N8mR9hh2+rOrJ5DpwWuv6sN2ixseYbfadUgcH0ep6FrrtiyuiZC2706rq3NQPxEG8HFnjXS797Uq4GrpV7fgSd7N4LtAeiS8J316jEgJYKuvWW6b1QYMFVN1lslxAN6ehpIOXDzwJb+j4EX/rYP+556x2ZwgIo9T6HlcfopLpANhR5Bn8bqrK+j/X7oK+lHluFirJg1cNdR9CC4dm8VnQJ3wpecIo9O6zm8ABuP8xro2UVjaaDlyXbEgqBu3bIsVfBQ0GdpCjmhb1ymtae3igOFL0/UE132Q7DinXcsujNUhl390HXmHlG4O7UEUt+lmvJJ7xWLJPhMk21DWFAydpjd4Y7M6LYGG1qgotm/+c7gENN4xAN+sQ4QOn+Ai8uW+HSf9F9OtyVGvqlrRtAUwihezZt6YJuBFRslUjaHLPYsP6nQ9oE91B7CmrOLmeOk+83bvm/Y/WwYACxuktYP1p5n5dPPRGqsEfYLGWL7BIwDREamm9BB0+dzN/s/S1MMZ0TZbaWqARuz16R3fKw== 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)(66946007)(6512007)(66556008)(8676002)(2906002)(4326008)(66476007)(26005)(6666004)(6506007)(38100700002)(52116002)(38350700002)(86362001)(316002)(8936002)(2616005)(508600001)(7416002)(1076003)(83380400001)(6486002)(186003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?viSo6M8kxL80NZcCZQBYl2xLx6MoZ4zZncnk+yeo2DcOYRvrmBuLuV6jO0K1?= =?us-ascii?Q?SaxdwCaaN7fv7kUxUlGKDSLqaD9YmZn2TzbLy0tWl45q8XRncATPL25VFNZU?= =?us-ascii?Q?k3lyCsmFthJpLJBviXC3+SMW2x022m/DLPB3snsKWtNBsA9JyVu9skbr8xxf?= =?us-ascii?Q?AaoA0Lj6BZ6CU5kWClX2KdYoC058uo585xxxz4Mt1FGfyDYPzzBqIbpYMBn2?= =?us-ascii?Q?0r5b4GeRTl20+TRa2S5fQI//VL63JmCUvWtIN9KHHKCxQhu3M+GK08dRCPgG?= =?us-ascii?Q?+hIq9v9KqG2hh/yhOA9H5WgdvOvgpD2D9+45i8X6WTBa7SSQvgxXHdbBt0HW?= =?us-ascii?Q?Z9HZJlntvs12QLGs0rhk5ob2ZuxAIdDQIEm7Lyu+78TWA8oAnH//y2zq/Jcb?= =?us-ascii?Q?ZbE5JfxJ0KTuKPQgguuQLVpUwufRUiqOMEvUS65o8kBRcfR8WHwDdDDI5ARG?= =?us-ascii?Q?T/ZcPykHGFx7/ui5/ZP3b+2kNCVcTOIEQTEypkTtHc5+BOWgW1csNEPMSgq2?= =?us-ascii?Q?vepFo9P63+ccUXtctEW/DAERo/KgJIqDUPOnLC4fvTTln8mkDiqsp/7IR+EH?= =?us-ascii?Q?9C7992OFCTTfgf4cOjnJ3JLSM7I3N8MV0C7CLS5dbikdhmvboF2agF99gTgT?= =?us-ascii?Q?hi8FxfZXE+6w1jjxTs01PT7jQ9sN7HA1NnrB7o0MQDZIRuOcZmIpypO8ftY3?= =?us-ascii?Q?goBIR9moBzEmfuPotnGghzlAtRzJARo+Byg3CrLSYrSXVoxfKo4QRj48OsgI?= =?us-ascii?Q?FtoZGGqIG17skSS3CjLkDYfJqamqsVAdVMYwXK5f15UQamVe8FwBo+rShc0u?= =?us-ascii?Q?B36HHnu2w28NWpkCwpxj2F2lk/L1Gg9erq1sTj8PFr7esUzgURmBb74XnJke?= =?us-ascii?Q?P2HyxAxAu7HqDNgcpwdZG5hQxGf2MKIZld7Sd6h5w4HaaRzqe9xPMySwRmUn?= =?us-ascii?Q?jTBuuuNPzzcFYVekMJNKg6rK8abD+aLf/L8a82H0FfmQkHBodOFB6NMUDyWJ?= =?us-ascii?Q?U+PI5PDtFFVfG54p+dL6hkIpse4KoT0qfETUwX5PFT1AfiLnVGNx3mrUwNBe?= =?us-ascii?Q?N30awwYXcbRpOtOGoBF18ZdI5p8PIIScrP/Lx+AXuHstRwcPbyK4HrxpOno3?= =?us-ascii?Q?APlZNBnjwoyHDLDruLyx3sQtLKkT/msDIJfc9Mu2XZsijyDg6Zs+F7Pj0H6U?= =?us-ascii?Q?2JdCs+mPp5cGK4WlD4378uwZsPuvBDTr+qqJBvgxwCQWw9g17NaQfemzrNzG?= =?us-ascii?Q?x0rN+AoYqtn2lavRtXhynIYgP9rczkvxpL3QwwZJWxlo0oID9jFbiJ8oyw3n?= =?us-ascii?Q?WQyECC+yUaNpBJgivsxRL9swZ8IiT7gMTzUjqMGYO6vb/gD3zcAdrnju2xf6?= =?us-ascii?Q?f6guounD55YddSnkGHqFr+9fHSKLVkjRKe5x5pxSbcnFU6a4hs8aTmWJc3uP?= =?us-ascii?Q?fx0cIqS2cNJG8UmABqsd2cPLB7+U99Tv6n9jgFzXLviZQRXV+niWeDtlM58/?= =?us-ascii?Q?lYNwckQcdJvaNaDy5A56WmEJb1JpS6Svtn3V4O4J18eWwzy4rl/EugxjWd7N?= =?us-ascii?Q?n0LNBvsbinRVMakvkepdGEnRy7PPey8IiiFUB7jk5ddUnUKaBBrwQtv04n4R?= =?us-ascii?Q?ORJnvlx3bqg9m8lBhFHtffRmxcZysXgHZUOIYBteFRrLPkJNcF7RcRaN/gFr?= =?us-ascii?Q?oi25b65hqcfz+iEcXV/9ZpreLm+sPtyMldJBK1JInCXjnaEDC8izhW1Di0g/?= =?us-ascii?Q?tozPk66GWw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 69b3b66a-d0e6-48b0-c235-08da4a16842b X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:39.4948 (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: RsL5JCXyp/HBlm5ELbNgmZL53jB3k8dXcRxaHlFMRdx7pDfRilcJjD0gTb5oVS2l6/3T5Ff9RdFOsESS2bVVDg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6952 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Add i.MX93 mediamix blk ctrl support. Signed-off-by: Peng Fan --- drivers/soc/imx/Makefile | 2 +- drivers/soc/imx/imx93-blk-ctrl.c | 333 +++++++++++++++++++++++++++++++ 2 files changed, 334 insertions(+), 1 deletion(-) create mode 100644 drivers/soc/imx/imx93-blk-ctrl.c diff --git a/drivers/soc/imx/Makefile b/drivers/soc/imx/Makefile index e3ed07a6bcf9..c532aa179f4d 100644 --- a/drivers/soc/imx/Makefile +++ b/drivers/soc/imx/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_IMX_GPCV2_PM_DOMAINS) +=3D gpcv2.o obj-$(CONFIG_SOC_IMX8M) +=3D soc-imx8m.o obj-$(CONFIG_SOC_IMX8M) +=3D imx8m-blk-ctrl.o obj-$(CONFIG_SOC_IMX8M) +=3D imx8mp-blk-ctrl.o -obj-$(CONFIG_SOC_IMX9) +=3D imx93-pd.o +obj-$(CONFIG_SOC_IMX9) +=3D imx93-pd.o imx93-blk-ctrl.o diff --git a/drivers/soc/imx/imx93-blk-ctrl.c b/drivers/soc/imx/imx93-blk-c= trl.c new file mode 100644 index 000000000000..42be09688cf1 --- /dev/null +++ b/drivers/soc/imx/imx93-blk-ctrl.c @@ -0,0 +1,333 @@ +// SPDX-License-Identifier: GPL-2.0+ + +/* + * Copyright 2022 NXP, Peng Fan + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#define BLK_SFT_RSTN 0x0 +#define BLK_CLK_EN 0x4 + +#define BLK_MAX_CLKS 4 + +struct imx93_blk_ctrl_domain; + +struct imx93_blk_ctrl { + struct device *dev; + struct regmap *regmap; + int num_clks; + struct clk_bulk_data clks[BLK_MAX_CLKS]; + struct imx93_blk_ctrl_domain *domains; + struct genpd_onecell_data onecell_data; +}; + +struct imx93_blk_ctrl_domain_data { + const char *name; + const char * const *clk_names; + int num_clks; + u32 rst_mask; + u32 clk_mask; + +}; + +#define DOMAIN_MAX_CLKS 4 + +struct imx93_blk_ctrl_domain { + struct generic_pm_domain genpd; + const struct imx93_blk_ctrl_domain_data *data; + struct clk_bulk_data clks[DOMAIN_MAX_CLKS]; + struct imx93_blk_ctrl *bc; +}; + +struct imx93_blk_ctrl_data { + int max_reg; + const struct imx93_blk_ctrl_domain_data *domains; + const struct imx93_blk_ctrl_domain_data *bus; + int num_domains; +}; + +static const struct imx93_blk_ctrl_domain_data imx93_media_blk_ctl_bus_dat= a =3D { + .clk_names =3D (const char *[]){ "axi", "apb", "nic", }, + .num_clks =3D 3, +}; + +static inline struct imx93_blk_ctrl_domain * +to_imx93_blk_ctrl_domain(struct generic_pm_domain *genpd) +{ + return container_of(genpd, struct imx93_blk_ctrl_domain, genpd); +} + +static int imx93_blk_ctrl_power_on(struct generic_pm_domain *genpd) +{ + struct imx93_blk_ctrl_domain *domain =3D to_imx93_blk_ctrl_domain(genpd); + const struct imx93_blk_ctrl_domain_data *data =3D domain->data; + struct imx93_blk_ctrl *bc =3D domain->bc; + int ret; + + ret =3D clk_bulk_prepare_enable(bc->num_clks, bc->clks); + if (ret) { + dev_err(bc->dev, "failed to enable bus clocks\n"); + return ret; + } + + ret =3D clk_bulk_prepare_enable(data->num_clks, domain->clks); + if (ret) { + dev_err(bc->dev, "failed to enable clocks\n"); + return ret; + } + + ret =3D pm_runtime_get_sync(bc->dev); + if (ret < 0) { + pm_runtime_put_noidle(bc->dev); + dev_err(bc->dev, "failed to power up domain\n"); + goto disable_clk; + } + + /* ungate clk */ + regmap_clear_bits(bc->regmap, BLK_CLK_EN, data->clk_mask); + + /* release reset */ + regmap_set_bits(bc->regmap, BLK_SFT_RSTN, data->rst_mask); + + dev_info(bc->dev, "pd_on: name: %s\n", genpd->name); + + return 0; + +disable_clk: + clk_bulk_disable_unprepare(data->num_clks, domain->clks); + + return ret; +} + +static int imx93_blk_ctrl_power_off(struct generic_pm_domain *genpd) +{ + struct imx93_blk_ctrl_domain *domain =3D to_imx93_blk_ctrl_domain(genpd); + const struct imx93_blk_ctrl_domain_data *data =3D domain->data; + struct imx93_blk_ctrl *bc =3D domain->bc; + + dev_info(bc->dev, "pd_off: name: %s\n", genpd->name); + + regmap_clear_bits(bc->regmap, BLK_SFT_RSTN, data->rst_mask); + regmap_set_bits(bc->regmap, BLK_CLK_EN, data->clk_mask); + + pm_runtime_put(bc->dev); + + clk_bulk_disable_unprepare(data->num_clks, domain->clks); + + clk_bulk_disable_unprepare(bc->num_clks, bc->clks); + + return 0; +} + +static struct generic_pm_domain * +imx93_blk_ctrl_xlate(struct of_phandle_args *args, void *data) +{ + struct genpd_onecell_data *onecell_data =3D data; + unsigned int index =3D args->args[0]; + + if (args->args_count !=3D 1 || + index >=3D onecell_data->num_domains) + return ERR_PTR(-EINVAL); + + return onecell_data->domains[index]; +} + +static int imx93_blk_ctrl_probe(struct platform_device *pdev) +{ + const struct imx93_blk_ctrl_data *bc_data; + struct device *dev =3D &pdev->dev; + struct imx93_blk_ctrl *bc; + void __iomem *base; + int i, ret; + const struct imx93_blk_ctrl_domain_data *bus; + + struct regmap_config regmap_config =3D { + .reg_bits =3D 32, + .val_bits =3D 32, + .reg_stride =3D 4, + }; + + bc =3D devm_kzalloc(dev, sizeof(*bc), GFP_KERNEL); + if (!bc) + return -ENOMEM; + + bc->dev =3D dev; + + bc_data =3D of_device_get_match_data(dev); + + base =3D devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); + + regmap_config.max_register =3D bc_data->max_reg; + bc->regmap =3D devm_regmap_init_mmio(dev, base, ®map_config); + if (IS_ERR(bc->regmap)) + return dev_err_probe(dev, PTR_ERR(bc->regmap), + "failed to init regmap\n"); + + bc->domains =3D devm_kcalloc(dev, bc_data->num_domains + 1, + sizeof(struct imx93_blk_ctrl_domain), + GFP_KERNEL); + if (!bc->domains) + return -ENOMEM; + + bus =3D bc_data->bus; + + bc->onecell_data.num_domains =3D bc_data->num_domains; + bc->onecell_data.xlate =3D imx93_blk_ctrl_xlate; + bc->onecell_data.domains =3D + devm_kcalloc(dev, bc_data->num_domains, + sizeof(struct generic_pm_domain *), GFP_KERNEL); + if (!bc->onecell_data.domains) + return -ENOMEM; + + for (i =3D 0; i < bus->num_clks; i++) + bc->clks[i].id =3D bus->clk_names[i]; + bc->num_clks =3D bus->num_clks; + + ret =3D devm_clk_bulk_get(dev, bc->num_clks, bc->clks); + if (ret) { + dev_err_probe(dev, ret, "failed to get bus clock\n"); + return ret; + } + + for (i =3D 0; i < bc_data->num_domains; i++) { + const struct imx93_blk_ctrl_domain_data *data =3D &bc_data->domains[i]; + struct imx93_blk_ctrl_domain *domain =3D &bc->domains[i]; + int j; + + domain->data =3D data; + + for (j =3D 0; j < data->num_clks; j++) + domain->clks[j].id =3D data->clk_names[j]; + + ret =3D devm_clk_bulk_get(dev, data->num_clks, domain->clks); + if (ret) { + dev_err_probe(dev, ret, "failed to get clock\n"); + goto cleanup_pds; + } + + domain->genpd.name =3D data->name; + domain->genpd.power_on =3D imx93_blk_ctrl_power_on; + domain->genpd.power_off =3D imx93_blk_ctrl_power_off; + domain->bc =3D bc; + + ret =3D pm_genpd_init(&domain->genpd, NULL, true); + if (ret) { + dev_err_probe(dev, ret, "failed to init power domain\n"); + goto cleanup_pds; + } + + bc->onecell_data.domains[i] =3D &domain->genpd; + } + + pm_runtime_enable(dev); + + ret =3D of_genpd_add_provider_onecell(dev->of_node, &bc->onecell_data); + if (ret) { + dev_err_probe(dev, ret, "failed to add power domain provider\n"); + goto cleanup_pds; + } + + + dev_set_drvdata(dev, bc); + + return 0; + +cleanup_pds: + for (i--; i >=3D 0; i--) + pm_genpd_remove(&bc->domains[i].genpd); + + return ret; +} + +static int imx93_blk_ctrl_remove(struct platform_device *pdev) +{ + struct imx93_blk_ctrl *bc =3D dev_get_drvdata(&pdev->dev); + int i; + + of_genpd_del_provider(pdev->dev.of_node); + + for (i =3D 0; bc->onecell_data.num_domains; i++) { + struct imx93_blk_ctrl_domain *domain =3D &bc->domains[i]; + + pm_genpd_remove(&domain->genpd); + } + + return 0; +} + +static const struct imx93_blk_ctrl_domain_data imx93_media_blk_ctl_domain_= data[] =3D { + [IMX93_MEDIABLK_PD_MIPI_DSI] =3D { + .name =3D "mediablk-mipi-dsi", + .clk_names =3D (const char *[]){ "dsi" }, + .num_clks =3D 1, + .rst_mask =3D BIT(11) | BIT(12), + .clk_mask =3D BIT(11) | BIT(12), + }, + [IMX93_MEDIABLK_PD_MIPI_CSI] =3D { + .name =3D "mediablk-mipi-csi", + .clk_names =3D (const char *[]){ "cam", "csi" }, + .num_clks =3D 2, + .rst_mask =3D BIT(9) | BIT(10), + .clk_mask =3D BIT(9) | BIT(10), + }, + [IMX93_MEDIABLK_PD_PXP] =3D { + .name =3D "mediablk-pxp", + .clk_names =3D (const char *[]){ "pxp" }, + .num_clks =3D 1, + .rst_mask =3D BIT(7) | BIT(8), + .clk_mask =3D BIT(7) | BIT(8), + }, + [IMX93_MEDIABLK_PD_LCDIF] =3D { + .name =3D "mediablk-lcdif", + .clk_names =3D (const char *[]){ "disp", "lcdif" }, + .num_clks =3D 2, + .rst_mask =3D BIT(4) | BIT(5) | BIT(6), + .clk_mask =3D BIT(4) | BIT(5) | BIT(6), + }, + [IMX93_MEDIABLK_PD_ISI] =3D { + .name =3D "mediablk-isi", + .clk_names =3D (const char *[]){ "isi" }, + .num_clks =3D 1, + .rst_mask =3D BIT(2) | BIT(3), + .clk_mask =3D BIT(2) | BIT(3), + }, +}; + +static const struct imx93_blk_ctrl_data imx93_media_blk_ctl_dev_data =3D { + .max_reg =3D 0x90, + .domains =3D imx93_media_blk_ctl_domain_data, + .bus =3D &imx93_media_blk_ctl_bus_data, + .num_domains =3D ARRAY_SIZE(imx93_media_blk_ctl_domain_data), +}; + +static const struct of_device_id imx93_blk_ctrl_of_match[] =3D { + { + .compatible =3D "fsl,imx93-media-blk-ctrl", + .data =3D &imx93_media_blk_ctl_dev_data + }, { + /* Sentinel */ + } +}; +MODULE_DEVICE_TABLE(of, imx93_blk_ctrl_of_match); + +static struct platform_driver imx93_blk_ctrl_driver =3D { + .probe =3D imx93_blk_ctrl_probe, + .remove =3D imx93_blk_ctrl_remove, + .driver =3D { + .name =3D "imx93-blk-ctrl", + .of_match_table =3D imx93_blk_ctrl_of_match, + }, +}; +module_platform_driver(imx93_blk_ctrl_driver); --=20 2.25.1 From nobody Mon Apr 27 20:46:24 2026 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 58610C43334 for ; Thu, 9 Jun 2022 12:50:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245425AbiFIMuQ (ORCPT ); Thu, 9 Jun 2022 08:50:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41904 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244811AbiFIMuE (ORCPT ); Thu, 9 Jun 2022 08:50:04 -0400 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30081.outbound.protection.outlook.com [40.107.3.81]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A747013C4D8; Thu, 9 Jun 2022 05:49:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kVSPYLfKBijrnujusf3XNrlf/Qg4Uv2Y819DdtYMsUUiTNsfJS6yw5TuiFKQJW2W/NnW1Q0rOgkyGbS4eK7lXwtPUPsVHcDtyGGHsmvMuE5gdY1vMnMaj0ugwJ9CFr1GinP3QQWzHY2pVaYYdkdI7Tk/2NmjThrZ8Rj6BH6EEdW3dMXc4t3sAi3lxmUxvhIoWoYIshecxHdY7sRrXt34lVo2Zq/rpqi24p8X9OizMQu1YNXJQiNWj9PjWGPBhXGyy4wCXwKhYcv+8NowyhKueU7ZTIQYFSVKdUUHBIspB55W13PQio38jXbszm5Dgmdo5LeuZIgNapSCpjQGvm3fLQ== 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=fdhSPfQYla9T1GDxpNkFztwMrm3sDs1C6hEx9QIlXxI=; b=Uy6IvDfvwic/bB5jih7ulJ96ohm7UPV1ffjmSXlECOOff/9qPy7TVduMgOqckf44LlFu6rmPQwkK7dzKJfHZ2W28s4QdteigpP3UWvfI7YDKVqqvHwuZTzSoTMaEC9175F9EvIZQ7XFQlGKIQGksyjzB1c4VkWFDKpvi6E2DsneL7vz+/Yu/gVXUYjmh4cat45OLU5L91RX4tptqfVbmItN6DD8SEpyt5nFwcREZ8X5FOuhgNDYsqLIBMd3Cy5NVPTxEM6We2MRge8U4lU3E8iznSod1VG0wX1HYgzE9ASuS/ovRB9eqsdl+CqbwVJtXoLTNaGGhs6Xg9w6UAh6VMA== 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=fdhSPfQYla9T1GDxpNkFztwMrm3sDs1C6hEx9QIlXxI=; b=SlR/bQnwVLXYG7T6Ku0EYJ62dQCqK+WoUkd3HtLoUAWV7fsEGDbY+ikMuBed8pazZaDYZcXdjYSrpgmJwsA61izhBFHW01Fn8jkvHMxPXKuXO965+X97gLYyiO8R8f7eAGyCVZ5X1D5msbkeHU2Ea2y4G0r/6gOzwPGY10INa+0= 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 AM7PR04MB6952.eurprd04.prod.outlook.com (2603:10a6:20b:107::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.13; Thu, 9 Jun 2022 12:49:44 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:44 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan Subject: [PATCH V4 6/7] arm64: dts: imx93: add src node Date: Thu, 9 Jun 2022 20:50:59 +0800 Message-Id: <20220609125100.3496633-7-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: 7573e0d7-9068-47fc-366e-08da4a1686cd X-MS-TrafficTypeDiagnostic: AM7PR04MB6952: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: 4L2vl3kbZdb09wddLN7mOlUSL2RlWwE4lRa97kRwxjtc+y14U7zT5BmxmLSsgtRWJYe0704eEcCq45oQM4NTcnMQ1nRXr0OhTCFeccc0DViym/3fuJgNWXN/Dx01QQgLZywR/ORMp4IH7zQJeW1VpT16sKJLwwXyK+Sv+6OU1rMGUFniX7u8pKlPL9lVieDMvJ0B8vF/2qno3ib3Ims0QZ+ib/vh6XCGWoYlgzKQgHW8F1tEmgswZQmaPwkm59dkJZnQGyBbZ56PkESj/BmUS5+EDMPmpPZqNxULwPkA+QO7ipFjngiTH7dElBlMbYgSOuqjH+XTIqhnRHJRJe5kXU6Q0dOGIWEOCxX4YzaofPfSwSPqmCN1tKabRk7Amc7kNTMncyI+dXztMUW1ImrMqgYLXMc3y2sZEOFtXl1zpL9xVCBTb3TqxW7qIFlBH/unN3CAoFG5FHOgEodo7VjtuMB+HjZPfMELbzPDm8HP3EdoMs3ESC8YkcpG0N1x5vE1CgrzzQEZXkDO5F6Wn7BPPYKCE8MmEDec/ytl6dMEkKLhIGPeG7BkHpPfZY9MmNdZZFu88RvKBOyyrABKqhSXsYxuJ+kSGZpQz0OdbJ/xRiyJe+jl2dMDDql4Ns8D/zMWMJRPXcW/Ruf2eWN8U3bEvBRJbUcBhuo2ft6DhGyKXOMA+e20RbL8W4BSncd29FbtH8R5A9/r01pnLF83OoeBhw== 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)(66946007)(6512007)(66556008)(8676002)(2906002)(4326008)(66476007)(26005)(6666004)(6506007)(38100700002)(52116002)(38350700002)(86362001)(316002)(8936002)(2616005)(508600001)(7416002)(1076003)(83380400001)(6486002)(186003)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?hSMmFlKPoibkovhZ2NXqa46sK5yePqKijI9/4wYOgFUFKgM7f/1H+/bFTuPa?= =?us-ascii?Q?5q1uDdTFbs8WBHqdnjW+fOro7obONpYEmM9BWGv9qlZoiRpirWccC2lD2VuU?= =?us-ascii?Q?EeLOWFMivOzGJoCMPyTXBu7V9GjzwjQlSzLmaCbO9B/6eNDkDb2G+94ZC5pF?= =?us-ascii?Q?chsXmhtVU5+bFe01sCNZOIFxmmzGox3qNCDWO+ZP4Ejht5LsmL/+74mbq136?= =?us-ascii?Q?LzEkBcw0UgVk3r82arEtydJvWuHaCgEocG+LRMm+UUMRBoglQd6xACPBrzB7?= =?us-ascii?Q?TPzMZoVnnJG3cc3aB0HvLP8lznRJhmYLOui08GKmdZpWltKcTjwGIMhiGby1?= =?us-ascii?Q?4BcRm7G5Zd1yh3o7ahecQ1L2A61Ac7ovCwT2WwazoD8nyyqm0Nm91c5AlJWV?= =?us-ascii?Q?g1x0sbxRtUW4Zuk9X4Nxi26YWj4wRlgVYdCtI8QAX3ZMJhk02pfVYqosegfG?= =?us-ascii?Q?/sNRHzuBBA7CkefY7x0mNXKXGBXp6ZYcPPL/tUfd3mz88G6bRvYSCtzXU4aV?= =?us-ascii?Q?vosjjLqM4fgatTvMZSop463oz7K91y5cOXep9GchNBbOcFQ4l2tiuUq4oQdn?= =?us-ascii?Q?WbuNHHXnzJcZDqrUCQPX77lZtUB7pNLfBskCjXokLYr2b8JVoSRc7YQ8f1SF?= =?us-ascii?Q?udvl3JBztHuMullsw6okS6VKSmFDQRk9aD3eB78rlwShgz0nMfHKit2eWq9F?= =?us-ascii?Q?ySP9QvXuafgENO15S7ZFWW+tCHUz68XVqhhhTtEUYP9X9/kt2vyJ/XtjD2M6?= =?us-ascii?Q?Ge6m4MwlIwzRf9rnrhTh8YH3o2yNXFKrn6I2O9YDsXoVzklFHfJ1gNHtUP/I?= =?us-ascii?Q?D1SPGbkn0rDGbByI0jqrj7vMSi8N3qyoc2KFFUQwsWqXyV3TJWISCdFZEvL1?= =?us-ascii?Q?dCxO2yTzovZROxiI4gPIct3QYl9TxEI8+WnZn+XKAzpU3OAK8Fn7Z2/FD4db?= =?us-ascii?Q?MoiItUnPprrsWX6RDaDsiDXzLqNJ8JlOhUgU4O7Sn/5pyafmZGUrG6gcMy7i?= =?us-ascii?Q?7YpajA7n2s+Kcr0SCpYMo4vN/hg39ayRiR6g0JGcL2o5Gdx0iaUVQcZcH9l0?= =?us-ascii?Q?D3ByFnGrAuAvPmNUAzZLcrzQWI356S6Gw2webQNd/qG+sRnk9BJnfAZwNCuy?= =?us-ascii?Q?i10T2dxxbu3pUI/cFZIe1QlrtS2Fz4cCLQ5RCbNYCyivoHFkZ0hEs51/N0JJ?= =?us-ascii?Q?uoxiQj948g41je1evXWqGC0zPEdUDtxpoA/bx2V9KAxvueMF4PkrEeDblbk8?= =?us-ascii?Q?MqsRf6/bsHYNh9oiEUjnO9G59vauAUoET3dWgCPNhX9+QbBAee3cNxJK94nc?= =?us-ascii?Q?wJ3+SzT0Kw0LjATb/JykFiGI7m05Zdb4LBMM/EHgS3S+7bD79rAb3Q36GfEo?= =?us-ascii?Q?G0Pm7RqJY1+s6IEk2pdyQ+82e78w/h8NxcClkCgaTr7rsnMPHWc6Ippfyz/y?= =?us-ascii?Q?SC+7rSYztUqw5KbXrX424UTsyrhBI3ex+UyUpDdRWPr9iPaSPmN38gaHfgPH?= =?us-ascii?Q?B6V9fq7EiHyqWhqfzwUFrHYmdWUSekqfvmN49L2ioKG4VbDaDG9weIuf6p9U?= =?us-ascii?Q?+L3few14X4kYTNnyVqgVM5llnbgvr5xtNSuR0jPhE3DLg3vjoxYoybBqZoVI?= =?us-ascii?Q?RF2LOqjvtJWz9Fgq30Sj9Id4/g3Ih8ZE38o4QWxerP9MvGEGYLG8F8PzFZN+?= =?us-ascii?Q?dF82saX+l9BW4LD0CgaWUhRPrAB/TPrByJT5RM+Yyhd69weo7ub2SNIL/a52?= =?us-ascii?Q?SZFYYcytnw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7573e0d7-9068-47fc-366e-08da4a1686cd X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:44.0766 (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: TdqCLs3HXVP95gCYJuQr6+Py+o0htRBjEe5KdVCBpowfCmQUL964xg8tBOd8ct/Kb1/4SOz62VJqv3c/fPgcCw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6952 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Add i.MX93 SRC node Signed-off-by: Peng Fan --- arch/arm64/boot/dts/freescale/imx93.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi b/arch/arm64/boot/dts= /freescale/imx93.dtsi index f83a07c7c9b1..8f0658e95e0d 100644 --- a/arch/arm64/boot/dts/freescale/imx93.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93.dtsi @@ -7,6 +7,7 @@ #include #include #include +#include =20 #include "imx93-pinfunc.h" =20 @@ -161,6 +162,23 @@ clk: clock-controller@44450000 { status =3D "okay"; }; =20 + src: system-controller@44460000 { + compatible =3D "fsl,imx93-src", "syscon"; + reg =3D <0x44460000 0x10000>; + + slices { + #address-cells =3D <1>; + #size-cells =3D <0>; + + mediamix: power-domain@0 { + reg =3D ; + #power-domain-cells =3D <0>; + clocks =3D <&clk IMX93_CLK_MEDIA_AXI>, + <&clk IMX93_CLK_MEDIA_APB>; + }; + }; + }; + anatop: anatop@44480000 { compatible =3D "fsl,imx93-anatop", "syscon"; reg =3D <0x44480000 0x10000>; --=20 2.25.1 From nobody Mon Apr 27 20:46:24 2026 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 81864C433EF for ; Thu, 9 Jun 2022 12:50:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244058AbiFIMuX (ORCPT ); Thu, 9 Jun 2022 08:50:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42048 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S245483AbiFIMuG (ORCPT ); Thu, 9 Jun 2022 08:50:06 -0400 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2040.outbound.protection.outlook.com [40.107.21.40]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C2F89138936; Thu, 9 Jun 2022 05:49:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cgRsgdZTJETHC6qr5JM+DEVuwLu4C8Iz6joZpnLfCCW+GZSKbAopXhXd10WMHRXblGcZlnRDYaEhMn6LJHD2HSTJ9eCHtVNcvTW2C3xtjDySFmifBxqbwlzhVldptvHthBrZREjeRZI1UUlx8xyIPSVol3jaaTyZZInB5Q8wUP6sdl1KRk2igrA0TAstZa4+N5+fMUuoKz6SlBWdF3ZFLWqdEEkNVHpFH7WU79jiej9gJhj13C3Yn737WJLlBjt0ri3UwV0xclQahrfsdiCupE2eukPkoONcvLiHTAFUVr5TnjLdcHcjRJZ5hRPQSfhAvQ6OX122xA9P3E/KjojIdw== 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=kxBay6abfWj4uI2aTF7bI6Jy5vsMsTD9VaqBi1hNmZk=; b=gf+587XxvAeY4GRJvHOrIkcdXtGOMd3mbVXah3ajZHsdzUjAA83szOdOo//9lx+MwF0lXvlSCU6ylVvwZ3KBCqD5CCn/7Oe9ALjr1fJypG9GmalwvzGMXo0XSNUIKWZhybVsjpmyan1qIyPMPMuuZLEYKTdspFuJUP+PM7tTyL4/GQ9GUdcfb2AefvIOD394Xo+YxwN8j7RzprGrOGe4ZM12ChUZcX1MuCLi1YeWAwbkp95GEMimwunPcv54ByrLw6lWvFJ7Jah6WZMVZ9eIPb9ufCdQFi06cp2VGPYzhNTsfC83fRV9c4NoAHGLUSkIMdI5iH2Z6MTNhY7O9wyidQ== 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=kxBay6abfWj4uI2aTF7bI6Jy5vsMsTD9VaqBi1hNmZk=; b=L/w9tQ50D7b/tBLq8j35qV5Nx2Qe87xEFvfCV/N4AOxXjImKWjYpgDDNYRopRgXhQ4MLSEBLlOKu1L3rRA/DbazzWn93bEahsaM1GyO8SQwLtpG/MElztEY1QmgL6AMNaqKYM2+gRcMt0JLxP1cTyi75r1x4MoM5EsG5oogYut8= 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 AM5PR0402MB2818.eurprd04.prod.outlook.com (2603:10a6:203:98::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.11; Thu, 9 Jun 2022 12:49:48 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%8]) with mapi id 15.20.5332.012; Thu, 9 Jun 2022 12:49:48 +0000 From: "Peng Fan (OSS)" To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org, mturquette@baylibre.com, shawnguo@kernel.org, s.hauer@pengutronix.de Cc: aisheng.dong@nxp.com, l.stach@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Peng Fan Subject: [PATCH V4 7/7] arm64: dts: imx93: add mediamix blk ctrl node Date: Thu, 9 Jun 2022 20:51:00 +0800 Message-Id: <20220609125100.3496633-8-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220609125100.3496633-1-peng.fan@oss.nxp.com> References: <20220609125100.3496633-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0014.apcprd06.prod.outlook.com (2603:1096:4:186::11) 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: 1cdc3913-dc57-416c-efed-08da4a1689b8 X-MS-TrafficTypeDiagnostic: AM5PR0402MB2818: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: BWdBjxXPjyWUQB9VikR21iWUuNEkJ5dMgYl2FSqepiJPakj2unawQCABDa+Y0wT7TFrtGP2h3/Ca31rT+Z9ttWZOSvlQ8sDNrSdvHKGA+hXcf4ZKN0BMNOME2G4mjD2gJdFByz6O/Qf+enXFT5YKu1SQ80QaKFTxhKc7LB+ruYn54UOxe/lM+YFW4pumYwaR8LH5Nf8gGtUI58V8oz6cZi638ZelmlBYtiwcwbbwGZDzJjr9FCesJyWHINN1f5gZamxTjSSBOt5z/O/w6Oz9gxQmqo97Nnl303L4pzy6HfUqZQSCdiEzFQa8Mw335m2iwc3aXplYqQdsJ6JE6H2JgN0ENrXWzOTy9MxhNjkjJ1HeZgH+CHb0MM+zm6Y6wbvEihKsDoq39tg40FunKdhbhVQe8pwH7Xl2pPH9icbN83BJUADG5H7n3T/wdfrY4JVUqX6XuO7BzkrmT+Rvo3/3U7zq/rjBQGnvf1YnBgronlyYXbkkC2asPRTu8cOa2Vb7KwKDgYpuIVmiQfmJKh0la+8NscsqzQR0dwp1r2I1gmB9+m0SVv3QS9HyQJB+d4lsWVJ4ViTzCOEkp1ZSi1EdHrF6yfzfnAPS0d6w/rzSb9K8zcJRiifXzgAkSryb3XuATSo6g0Udf7hlUxBie2Nq/A+/ZbNeMPfJRyInF1J0wQwoztA0X6517vGLbuLc/VI/OnECFIRCGJGX8szd3CgWiQ== 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)(8676002)(66476007)(7416002)(8936002)(6486002)(4326008)(86362001)(5660300002)(66946007)(2906002)(508600001)(316002)(66556008)(52116002)(6506007)(6512007)(26005)(1076003)(2616005)(186003)(6666004)(83380400001)(38350700002)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?TFG0O8X/wEypK/+AORm59yN8J2mn59Zx4gwubCS/XDdgPv6BA5ioO8ppZCdn?= =?us-ascii?Q?/WcPmoAWxNnfNPcvP13k2MBZsyjVsCGQCJMqshKhOx8435vbC8y5TMiSPZnF?= =?us-ascii?Q?C5cmx0N2ENHE8yDMax9MXjeshpxJajE0mNreu4r96Jk0RXvyf8DIhslRcBDo?= =?us-ascii?Q?GeEzk2q5SZP91/AA9hoLglZoMePsS2kfEFFlA8q3EG9ptL+t+ZXFUXhf/UE/?= =?us-ascii?Q?9Ot3JEupwzsfY+AqZlR2GOaGj236/M5lYEqZyyv/A8jag2uqicGTW+kGrx5S?= =?us-ascii?Q?EfwiA4iztCwk0QxY7f7yDhB6jiDOyWYKVkTmmXlg/sHwtoEeGLDf6qJvxDjH?= =?us-ascii?Q?WP/otbYRBf7mA4OD6CVOfNtPpaf9faudUsX1M6WG3e7xNBe8m7ud8sRtWTaH?= =?us-ascii?Q?LrVwuWXZgxCe68zej687nZ8E+hfWr6uXPYMKCkqCS4OSihLdtirzQsvpI60V?= =?us-ascii?Q?24K5+PsVLiJthHWs9xtlb/6r4oVZXYuYO48q3H0+WtQ0So4SyJ7XN57iC5Zx?= =?us-ascii?Q?hKiEfxT5Dq/vOrrwSHGxc0eKYLPSDGogyW4P5/IS5kPQ2efdYnrSX9YpKZNv?= =?us-ascii?Q?LX22qrI9zqK5HLC/7+/8SKyHvRYJwiGwvPn/FWCCskBA7uvblZO3gagqu6Xw?= =?us-ascii?Q?qVnqq4FKNP9JR7od/wxXUFn5NDLLm2c/ZKZApzxqOpEqUzIdcgmxmz1EGs/S?= =?us-ascii?Q?yHUAZuY/FbcBtX32r723djgV7e/49oS2sw9gBWsQPCmAGjL7XDKOVom0wY9J?= =?us-ascii?Q?zpkuXXuHjtUVfhDY2agPG9Sb58IG5sO+/s8syNAS8mo1RXX+3X0KIL8W4/Pz?= =?us-ascii?Q?qbGgesZm246AjVN6RSysjzvbRhYP+vqKx2PrV8Q4+eYtAwlsRbCCGM4c02YN?= =?us-ascii?Q?m6wZ8fhyyT0sLTBR7xgb7s/KrjprNjw+pxLb/fdMUhx2RvlxWA/hYSCDR+V+?= =?us-ascii?Q?vbgYgLYl1YJbUAsTyBjeSg3WzQ2vRswhIU1N1HQhE1ZHZV0Uh3UPpGj/Zpvj?= =?us-ascii?Q?7/EZvGzgcqKv3qxpIbWnPWQMmFWJSvRNkFncEwZul/DEiT7kXpANqXZK1CNr?= =?us-ascii?Q?bvcqhjsE49o7CR6z7R6T+2dfHY1PJVIBfi3UZG0CsO4Svhb60lmQDXETiWyF?= =?us-ascii?Q?Ruv3ytFVT0b+I9e25LGMQlVHr9gDPdR7zkz87rwA3R7yi95PtUZ+m99KiSwL?= =?us-ascii?Q?6n4wtimXXik9Ob5wWgIHOCIA6vxAEgzl3mOBzVA4sG60HijTg4RitMbUCowa?= =?us-ascii?Q?sVjHnywM5Bm/+snx4hejc59W8zCf9kiz/RaioZbCtjdk0G36+AiyimDeoMju?= =?us-ascii?Q?HYnY1JHR0hPns5TS9EIbSsttqCDaRtH+Wv4k6Y6rPZfXfYvVC0ZuA8sPaGg1?= =?us-ascii?Q?Am1T5qxmprXykphywRbabSUpv2psGevKrizilf88+zuE2VqwV742+1kjVMy9?= =?us-ascii?Q?ZT9F3pniW5ZcgIpOkCYekktFDxVThQQ7sICCjr9yMYT1J/JrkAoBEzONo6dL?= =?us-ascii?Q?RiJ8v1wMFYZheqzp7Tc+eV38oAL7AivCAQYwZQhrJ9D7epdWv4q3l2OQ9cDt?= =?us-ascii?Q?zHty7HoW4A+YHaI2EaqoZxIgTnuF/tcotTUVh2B57Re3pNorfUyJcbB7tuUH?= =?us-ascii?Q?tteIQJuQlavqxcVAyFN1GKi0bn9+XNjwymmbKOr8jeobM7ZED8iYu5uHQtFm?= =?us-ascii?Q?5ggaXBr7qeU975/6ks3SA7nV/TYhnJ/rt9TmNe2i7085r3jgBMKxfpV2HnOH?= =?us-ascii?Q?Wa5fHvn9Eg=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1cdc3913-dc57-416c-efed-08da4a1689b8 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 12:49:48.7775 (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: Rg0Y3XTqHp+XM0ZDh1Pi2J55Z+RI7D7353XOLy8RtaOOtBdMOvNNMktP1JaBocUenc5fZgHy39mCnK5Bn5u0BQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0402MB2818 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Peng Fan Add i.MX93 mediamix blk ctrl node Signed-off-by: Peng Fan --- arch/arm64/boot/dts/freescale/imx93.dtsi | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi b/arch/arm64/boot/dts= /freescale/imx93.dtsi index 8f0658e95e0d..bcc8fd296bb9 100644 --- a/arch/arm64/boot/dts/freescale/imx93.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93.dtsi @@ -348,5 +348,25 @@ gpio1: gpio@47400080 { #interrupt-cells =3D <2>; gpio-ranges =3D <&iomuxc 0 0 32>; }; + + media_blk_ctrl: power-controller@4ac10000 { + compatible =3D "fsl,imx93-media-blk-ctrl", "syscon"; + reg =3D <0x4ac10000 0x10000>; + power-domains =3D <&mediamix>; + clocks =3D <&clk IMX93_CLK_MEDIA_APB>, + <&clk IMX93_CLK_MEDIA_AXI>, + <&clk IMX93_CLK_NIC_MEDIA_GATE>, + <&clk IMX93_CLK_MEDIA_DISP_PIX>, + <&clk IMX93_CLK_CAM_PIX>, + <&clk IMX93_CLK_PXP_GATE>, + <&clk IMX93_CLK_LCDIF_GATE>, + <&clk IMX93_CLK_ISI_GATE>, + <&clk IMX93_CLK_MIPI_CSI_GATE>, + <&clk IMX93_CLK_MIPI_DSI_GATE>; + clock-names =3D "apb", "axi", "nic", "disp", "cam", + "pxp", "lcdif", "isi", "csi", "dsi"; + #power-domain-cells =3D <1>; + status =3D "disabled"; + }; }; }; --=20 2.25.1