From nobody Wed Apr 29 00:33:10 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 A0B94C433F5 for ; Thu, 26 May 2022 12:32:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346038AbiEZMcp (ORCPT ); Thu, 26 May 2022 08:32:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33958 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242964AbiEZMcl (ORCPT ); Thu, 26 May 2022 08:32:41 -0400 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2057.outbound.protection.outlook.com [40.107.20.57]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EA56E6397; Thu, 26 May 2022 05:32:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U9C/OWwrXCXDBuCjb9UXbUxX7hq+EVzKU+PKD18qc0NhgNSicJEwPw/d+qcEjQnHyutQpEYysmQb+CfHKzXvLnXYeqlbYUl4ccdrwS0cP7UPmV5dQUOmmKZkMeyt0dIufO5DmswDhnYZEHaGR/VBpa3pA51TKLdM6jXNWg4vkRWa3UlgjyZubLfwg6Ecv5qmUA3WKO8WV39fgDrot9TeutfdPLLtIKZaI67SyrjKg/XxqRndrPwTEl9qRL7QqLECtTHSv5W4OaQSKzNyOQBJoLQRW1tc3MoM1BCxoVCGmvX2VexUkDZLjLBYFG+bAHQVZf0qIL5Z5AIi/NJczhmDtg== 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=PztbtRSY9f0/+1j5HQBOcivyHURgkJ/AfFY+kduUh8Y=; b=mf+IlmFPsTFSMMbWKFbVeKy4Rr31sgc8vV/sz3ctMpyzoVVNBvf2pKEqld9rSQx/fxNXmfFwDD9Cy571PsgA9dOO2PmoHS1VF80CFTatk0MWrm7CrPt0PDMhe3Lw1ThT5JCvS+f743a0P8jmRMVij2azwj0kiriIPO5bISHMNyeR4Ey0L07HWed1pfHWu+EHzEjCCCX6mVgQ707LhnzDJuuTT6MkXH5Wf5SrQklI02PrrAk3bvqL7g6KasNi5BSX12Lx4tlk1aY0ZoFprp5a52cMhHUpkb5YTrjCTj2nOt0UJiK5m08WMusZlUXnfpGR29lcYpQaOMn70nWBx4Y8EQ== 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=PztbtRSY9f0/+1j5HQBOcivyHURgkJ/AfFY+kduUh8Y=; b=Cveu2CE7HbpHWOZUpQjjSWUho4YpFxFCfr+F8vj7+Y1y3x74zJYxq2/o0EXBiWwWR7kbIm8Z3ALFPpnEeSE71k6TJAH5DgNX3r6l/GjRHpyod5HJEwdy8JH2s1EcvYZEOXdiYTOBPdnafwyVkgargV7LnwoB2z+uy7zNBe06eIA= 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 DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:32:36 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:32:36 +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 V2 1/7] dt-bindings: soc: add i.MX93 SRC Date: Thu, 26 May 2022 20:34:05 +0800 Message-Id: <20220526123411.270083-2-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: d4ab167c-39eb-47f0-fec2-08da3f13d0c8 X-MS-TrafficTypeDiagnostic: DB9PR04MB8363: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: C7HaA+LBoqDZBpalSJlg6y4p/ghHVdHG9+Ed46G1M6q7A5YqQ6ZJNT7e2VNmsnvrw1KtpNw6vU1TinppUjP1tbv1hB7qmQavgSqO2xTpPd7dnostX5WWGCC6PjgO2du26o/nrvAfLvdDIib+adOg2ajI3JNZMJ1ud8irgCtj26QMxIhF71KWvb2Gj+gXDjbNn7YbHzux1JTYmmysHxHa5MCxKQrpidF42CRIxjOHYzDeTokgH4RSYDRDg2RS+zDSXxW9v0ana1VSr6cMVfQah7115/O4tV/UuyzEG8kW6tyPeBsW07PYmPTHVZPcdWgZplWWZKwT92k4Rytb9tcJVrLI8EH/+6NDtWUOPI0d3S7KOXJNnU7wFae3sPapOF1f7lM1SZmneIirQLp5wKIfQySvfr+rCCIyP6ZXhTwRokB/ZqM1RG6YAUy/gix9InlCUMyvO3UA3yZTYk+X2ALVD77+VdhHzlkL/HIJ2j8ALVR3JbwBnEbtdzN71oTpOweH/IRfAcRypvSXWlaVYYz0CW+9ytPgenX861XV8KbHvPIbgDE3Qqx/y47jKxo3WWyg0TQZpB1KIbdpv2XDz80pK26WT2IuEusSRIflGpl/P4ZtyM7UnOmXv8OD4zq4HgOsHgjH64xa18pJMbHWZwnyVIKkWPq3gGPT46AU2zj0X8unSwNKBrq5omp4vXSqAAnDzlI/pFILKLbsD7mNJXtndmXGnNW2VZ556Rwiu93uKq5SVRliub06SeRrZXtg54zTb7lWs9zDxFkIJ4iMQFYXp7nLSDSQCm5INqxJsgjjHwqnqEjl/rScMGVgUkVQq9xcFaMny7k+YgPHqlB92mQ1wg== 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)(508600001)(38350700002)(6486002)(186003)(966005)(2906002)(26005)(6512007)(66476007)(66946007)(83380400001)(66556008)(4326008)(38100700002)(7416002)(86362001)(5660300002)(2616005)(1076003)(8676002)(316002)(8936002)(6506007)(52116002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VendIIYMigG4BTf3ClOf0gICvOLQN5xeMRpcWZH+e2TkDRPriKg6fQIBBLS4?= =?us-ascii?Q?PSRFkjoJrtYHV+JRjKeKuD+eewg+i+q/mAS3CnehspLqP1xZ90sx22I5seqA?= =?us-ascii?Q?jRVvqL8Ni4ziRry2H+Jse1UJudlqOKyohuz+30gGe7MNO4qpbiZ/thTYYQM9?= =?us-ascii?Q?3gjM1nr8KPTGmIF/rPlZiz4KvJJ5bQwRcnmp2Goo2OpYVflkQjzXNW+NEWEA?= =?us-ascii?Q?r2lyBreNx8mFrICE0E0Zy1r7YRb8PyVcB+VpXp0D1Wn5hMvUAnH5bhp3sJmd?= =?us-ascii?Q?Ar4Iwe26uv4UU05YTqe2xePa6nQxgvKqN8/HIPXF/32NdhB8jm9vT3mi8fLy?= =?us-ascii?Q?nrB+umGhaRIpRmQ9mEP8FWKB/QTzZMi02ytHC21qY3W2lWL24Ho9rWa/m9xW?= =?us-ascii?Q?o+tpgPI4a9Y54JOnadbP0FECUqeF3jzXHi0mO+asc6R63m//+FZ+KkcNwH5u?= =?us-ascii?Q?gVYxI4QyzRBe2PtpjLIElqKhyo6g5ysUu5+Qu4uX4ayGmF0GCKVAkxjo2FAA?= =?us-ascii?Q?8oHgyjlwxRNdlzR3R+KFmbSd6i0zs+HPz8g3t1XgDAcT54ljCosOp3ykPB7U?= =?us-ascii?Q?65eosphsj92Jd/KhxlKRCuqRzHZV7ezABBDSFhoIKobQgNi+slbltkax8STF?= =?us-ascii?Q?MjDIyGqA2DwPfYYSqzwpYv7I7VHj5+ClQsNp9uJMbChp5XphQsp2YrsXJtr7?= =?us-ascii?Q?F+aWvix0QqKkNjur8kr4qU5j5ZnTmLUTppvWJwoNtpUMuliBRBb1fVLm4+ae?= =?us-ascii?Q?SqrzF0kHBIEZcNzxd6tGoTGAPofC0hDisW+P0O50oTELyUdbgEbMwUVaZ1r4?= =?us-ascii?Q?nGKxoN9AesVBPSMOyt2+3c+BiqgFt2EkVegyQikrjUWj43L5DI9hpESmhY7T?= =?us-ascii?Q?NHUpLqWkC3sz+SEO2bp0qPe4ucKvyp+wYnSyrBVGSXq6A7PILOrHDzDiY4K9?= =?us-ascii?Q?lDP2b5HJQNjpuDw5Z67QUfioGwB0EZVLHLFBmCi0JrTgegHI0fUEx4rkfHrB?= =?us-ascii?Q?zWfOift9P3aKxKM7OtrXBqMTTsx1IBKVrKxIeGz82rVoG5/BVnv46uwf8RjW?= =?us-ascii?Q?XXbMOv+KWe//rNf5yRIkxISD6+3UN9iV1Xefrb6ZYUIpLXY8to+7vlsRAgvg?= =?us-ascii?Q?9RwtOrEkn1h+2ehxRGTJOKFLbAW1ECTJEAzcxVt4PFXI5fMg3tAWq6FszeyV?= =?us-ascii?Q?RZaGVw/aYXCjyXlTOyp003ShoGf0B+QKVmakOs6SqAahkjY5yKbI3VFJlimi?= =?us-ascii?Q?X6GH/Vh+SP8a1FHZU4v6SEhCer6KjjgJuwlwnjmLwho5TScssOdArUpkzoa9?= =?us-ascii?Q?WICJMUsavKnbk8+ktbd7n3uVGm8FhEQRg5LU36+lPpup6b4nv4eEFw0R1zFf?= =?us-ascii?Q?fhN0Gh06TkETCWfH9EgLmpmBWkko0iw3DMQydpCfWYO7rrqUNQ0jze3GuOUt?= =?us-ascii?Q?hRm0y7zrItHXTd1gSfMYA5I8HzPGtvtoMPx98baJ5uLZPk7GgkTucph/rTPI?= =?us-ascii?Q?5LAgTFlsPEld2hri0dfFQsEAQehYfZSh33ChJ7ugQa6r3bMF9aTviv5H1BBy?= =?us-ascii?Q?xqdxLHIZ0z56h/I4rs9VF0Pu/ewe5F9OGyQF+bbrxa8GrNomvMA0/1EqUZyo?= =?us-ascii?Q?Jl+v6PpNwU5aSMwGN9CQnSO+faVnyu4zdHxK8AHIOXUu4n+LVERWJo0RuxCP?= =?us-ascii?Q?R3I2Zg4EesY1kbNWKxSvbkSpEWLX2VvtNT8mbs7MsN2zjvjn7T3Nchm79auw?= =?us-ascii?Q?BGfjZ+6fGg=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: d4ab167c-39eb-47f0-fec2-08da3f13d0c8 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:32:36.8764 (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: cKcP9NPOuTfsZuL1g1IwAlmpifCvGNig7Fd5HlTXOX5Wh9AEPiq6i+93uoFbToV21EmXG3m3w0upg69Bi1jKkw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 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/soc/imx/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/soc/imx/fsl,imx93-src= .yaml create mode 100644 include/dt-bindings/power/fsl,imx93-power.h diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-src.yaml b= /Documentation/devicetree/bindings/soc/imx/fsl,imx93-src.yaml new file mode 100644 index 000000000000..c20f0bb692fe --- /dev/null +++ b/Documentation/devicetree/bindings/soc/imx/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/soc/imx/fsl,imx93-src.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX9 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 + + slice: + 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 + - slice + +additionalProperties: false + +examples: + - | + #include + #include + + system-controller@44460000 { + compatible =3D "fsl,imx93-src", "syscon"; + reg =3D <0x44460000 0x10000>; + + slice { + #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 Wed Apr 29 00:33:10 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 8F80AC433EF for ; Thu, 26 May 2022 12:33:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347338AbiEZMdG (ORCPT ); Thu, 26 May 2022 08:33:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34490 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347305AbiEZMct (ORCPT ); Thu, 26 May 2022 08:32:49 -0400 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70044.outbound.protection.outlook.com [40.107.7.44]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A9E779FD2; Thu, 26 May 2022 05:32:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E/+NC+bYgmd/lyUjjCLRJgnVqXMWq0aL4WVXuAD1rrbDLTRZAThAzjnADExlnBpDLrMUKSQo6Q6rUS8MFndStrHv6ls5y65p2FFjQD8FVNnx/gKcmjwsPMzjHcMYcg6FeoIhEM+wNAGiIRNw0wd9hMZEX9FNEtIKAf8dBPmvGQwjVU3djODYn0fjvNk4l1yLc04YdLlVESxfv8A09y6gmthcm3zWSwM1q/L90oZH7nLljocm9iPWZfwsFbNrp10UIuMDIay86d58+1EqLF1gXnEfcRHnZE8Jyjn6W/5QSn0/3HrrBiK5S35oY/KakcA976E1lavBBdYSalvzGAdlwQ== 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=sbFd6RXXWumFShmNL4DP0nO9hfrnj7j2ZCPhB8uxCZ4=; b=TwJXkfZ+1HXYPW4fN7CCRGzUq/fs8sCD8tjbC/NQuJhT+shnh2fXL7BYev+ilsIWzVeEf7n/6lBid/VHyaclVqroD2wiOuNJ8fbJLuILIX+JbgHH4uHIm/UO7iwuKJLMlz4zVROXXMhs64Rs2jxKiXl9xqMBYY1JDI4v+CJcEUR7b6oXL8xSi+fI9eW83fr38drgZxXPXttVQVq6nGGd9vOlLXKFOFSe9XKsn5BPCaQBvmIHs7SH9E6GL51M+jVM3+MXTxL7fhUCPbbs5M4Slo8xkMTV4Un+gy2A1rC/QjFV3VYc4nf+XHA2oUB6ThkIrJq7xKytT11apnmQpwph3w== 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=sbFd6RXXWumFShmNL4DP0nO9hfrnj7j2ZCPhB8uxCZ4=; b=lqRcFGxNEW0+2ThBkIUm147zKVsQ3cpKDSpjJwspmJucql4bEuktRszd3Qh7tMoEGSR+bJrFSSHQDdRZOqLQSOYHVqINWlVrr3X8EaSdLe1aFwFzCtH0bORcE/rnEYrnQVvPBZxc6Utptz77bvvYCVXhtNtSyDziBwPJjW3jS0o= 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 AM0PR04MB6515.eurprd04.prod.outlook.com (2603:10a6:208:16f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:32:41 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:32:41 +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 V2 2/7] dt-bindings: soc: add i.MX93 mediamix blk ctrl Date: Thu, 26 May 2022 20:34:06 +0800 Message-Id: <20220526123411.270083-3-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: c4313542-2331-4616-c9bc-08da3f13d38a X-MS-TrafficTypeDiagnostic: AM0PR04MB6515: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: z0mlcQ6vSpSM1k/I0fDddzqYDwvmqcchoBBpcaAQdzOnTKVHD7e1Ap8+myl2ElSccOfLe6OyiE/Q9zlAvye+/albFavPv6hqG8VnhJ5fkyJ096q0ijVj0AY+zz9cWOHrgFqRiN0dSgAQWVmPo+s4FjocUIpfDn0kWSCtu9JhepkG2oREnetcMlfOjDfNgUVI0+sL7swr9VBxGcxcPLoLKTqXPJQPvesiNzG0V8Z57xewgSvi0hbmL7IoDnfUZgVlD/JZ1L1sxZtEN0m5nr9H1kqAUaNbrxcpZ9zuojX/tRVMWP1FDavsKzrKxWSGIYWp1q2HM0H9A7liKlQmHSkBhBE92yUjGzK2bnxn5zBOeU/engzKXdp4OPY0MOjvM8zdCBT8DU6IU9H1C4UKKu6Cc4PFUycTXfP2BZAitce0OJTSyCtuPgQoGJbQHrbg3btAftCrVRFnQhUbcDkvxelWbV0VEhja/4bi9yM0T2l3aj7KuvGH2aEnni6NpwY6o51JDOB+P7e4MX6XwyCye8HCQdA17JT5RKFQPIrz5ZMzZ2suHRRDraMwXQlsZtNQOb5Ce8kXFEAOAuq4UJMiudkUCWk5KWqiCK4Mmib0uGHH/GM22ry6byOe4dfl1VUIMmYMrDzXB3OZmTTjZXV8dJvu5laW9CZ9aERpMLSPAneD53/h5tydLbqdkQRQWqz5yQHxNuT+me/0yDTgWTWrNt9qHgWga6jchmuxIj61ElVxiKRonQIH43UwlwfR7qAEJlDa/Cfg5P8KVdfjuJPURwktMRigdXPoonN/zirUDR9xNZter8tIdMvyLP+G+IWY/G6+hGBsdJenzzdmqc0U8jVugw== 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)(316002)(52116002)(966005)(2616005)(6512007)(86362001)(26005)(38100700002)(38350700002)(6506007)(66946007)(66476007)(66556008)(4326008)(8676002)(6666004)(5660300002)(8936002)(7416002)(508600001)(2906002)(83380400001)(186003)(1076003)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ohWiCKPfcOazX2sRZ29EVCHthaxezgpTaIWi0IQbJw+atv65deJRUSeX9c4H?= =?us-ascii?Q?q5althI2MrDbsyyOlRAf1jDSP+S6V04CFmfCjqeq5VfUDMYOQmwTZxj0Q+z5?= =?us-ascii?Q?NGju3go8Uww2xpUNOKztifNAwXSTeXNvbkLljlJ5F4DJD/qJ+lI2pD4Avw+s?= =?us-ascii?Q?Iw7OMEGDVNxk/NLNR6rXdR985G2rKqZEa9tXJqsjegVb5Hoyz1MZW03ZBh8n?= =?us-ascii?Q?Vcb6i/QcLRwD12kal/CBw8Y/havoO21fDXQlSef7A/KKLQrcXe7yM7/eP3Yi?= =?us-ascii?Q?ohoi+C2gFZenw3jnRD3J3AAbt6GJR4Z7pf0W0al1i6OHBToGBYeCiuwqcnek?= =?us-ascii?Q?/+n0xt90uVe1C0pTf9W2JGuxccJQnBIE1onWz0GCLb7mV0jTqVf/1u1bldXo?= =?us-ascii?Q?GGOJhvDNjJX1piAtKCIkhdO/5LQPuLj8S2uYynZCzeIM/LJhAWG6KNBbfkNq?= =?us-ascii?Q?MJcEraaYCvprs1g9bGMXRMDdON5LMOhGIiAH24KGj/AWxk7c+iyz6gBahzFu?= =?us-ascii?Q?1I+TGnIgrch2d/Stk1AmW59Cf2edl+x8mTc2TFkdbvZ1d0hwXevrxs4cbbmu?= =?us-ascii?Q?bQ1FSAi/+WTzQbFhYcvlYqe1ry1RhB1V8M+oiIZNTM2Rh0YMhXMqBRVNOGjW?= =?us-ascii?Q?jHrG2nrGuyApTUOpag69zqhxftA8ulYBDDrBfb/n8xeMWesGgjh81jdh87Q4?= =?us-ascii?Q?46zi8NNObTANa52Vh/A59BbZtJHcu+OrA8jsFo9CYXj5PsV89bfw0H7lK5sO?= =?us-ascii?Q?Z3OhVWHexrBmc7OyR68Da5s7ChBUXNyVWSLNJryKsfFrhXvkfj0ZWZvBMAsU?= =?us-ascii?Q?iu2P68s9qxLcndgbNuJCFvY6muZNsKUdpKi4p12l756XEyziKppsZjzT+1Jq?= =?us-ascii?Q?pl+iAjvhjOcBx37HORxNinGHmBtB3PGyPUWm/fr2M2tDmsJ7nWW+6o/DqktW?= =?us-ascii?Q?Qwti6rlh9071AJJve+a3OvxvLEajpemnkE8JVBXSwnl9JgPt2ib48z8waWiG?= =?us-ascii?Q?xGVlaJ5tc+6tm5b68Hg9hTMvA6f8HDG1SqE1ej/TbM817ZvQm1b6zvjcQXEj?= =?us-ascii?Q?QejrxCE/L3xgRgdAVtdCZxX1ObiIjfBCPd6RiubemwDZOa1PecUfRlNFMoA9?= =?us-ascii?Q?QI0IO0eXhdOoJF1frLj16aA4QKON/IYvv7OxST58Q8u8Zknb4sEjsTuz806l?= =?us-ascii?Q?p+b7MFNTSCLeUtC3T6gz5CmPNHtjLspI8DdtW+F3bVjQkhypSoJwoRzETAZm?= =?us-ascii?Q?b3TLK2R5lvPn+mEXcUayI4ZRgN8xi0BPKPBVfhxexzTRi0WbNchzVxLrti/f?= =?us-ascii?Q?ENquUvocflmv1PtKqYOWc7QyM45lomNyDK00EL2q2rCnuPQm6blMi98oZ5hB?= =?us-ascii?Q?AixO9z7I6jDCxol2iXI9eAZYYiBbkPFsErAh89Xv6CuO+Ve6mYB32AobWC2F?= =?us-ascii?Q?HOgZDud33QpJMtnV5taG0JjtYLfnQ/Wio4YhwOfPptLcaWVFloQOpOyfUoXe?= =?us-ascii?Q?P8Bupf7GWqPiRHM686Z4zmikFDDHBqm/PTz4U44GuQZmclwJSpE3H94FkM1T?= =?us-ascii?Q?gU9Wh0CNk/xGw/wyg1yGK18zJYR9IQ9ee3oJ9kIBw+DPMYPfKhcBkmyuXkWV?= =?us-ascii?Q?suXS4z+uqJ3HMVNk9ypv/y/6ER3CWHvmzdCzoGVPZIMEkbJzskksH9kCmxXQ?= =?us-ascii?Q?VIAUIwayXBr/5FoNe33/OgLZ/n6mp5aBGEwjNrXRcxQtYJM/MtjSHvFqbKMC?= =?us-ascii?Q?NvfGdCAHNw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: c4313542-2331-4616-c9bc-08da3f13d38a X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:32:41.4862 (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: JXXgDBTZizl5DGbbQR/XV0C6KHvyoxT7SWebvuL6t6y678yw5vnkHPDM5QwJEz81B9nPmBzRFkKPL7i/asfYXQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6515 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 Wed Apr 29 00:33:10 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 3E8C5C433FE for ; Thu, 26 May 2022 12:33:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347373AbiEZMdN (ORCPT ); Thu, 26 May 2022 08:33:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34458 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347332AbiEZMdC (ORCPT ); Thu, 26 May 2022 08:33:02 -0400 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70044.outbound.protection.outlook.com [40.107.7.44]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8B343A188; Thu, 26 May 2022 05:32:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PRyATPuqukFC2KU4RGCGg0V8l7d4WMID6HdGMitSkqp+gk7tZvLQhTTtFU4rdFl8EY4Any+wKjre2hdcJ5WRdNiPRFSFO3J1LuA0EIgaHOyMvlcRZtwql+4vZCoTGhQfuZOEgK9EBMFOfqI8qepZT4v5Z3LsCrMmGybL+/tfGtBWJNBM6LN8sUVA2oG3kdEEid/XJIjnx8w5iPuEKy1PdqDUQzE+gm14BeHIE3SxGRw94RxRPVIt0vZEAk8vApIC9lKCv1rQuvDi+Xq5ZBpuGd/gS3TCLnbHezhip5DetNwigA4zQMF33L2YEnpIIBP3m7aczlIVSSuESpdWTZ6WQQ== 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=gHVfxPm0uyevMJL7KEdEs3U6EgXTYzfxoBLo+iPwyZFQwhVcqMHKhucYUA9iafTb8L0+XeV3dcBHC8Hy9Hks1ms26wVX3LbqM3yKT91gBnXXUP5UDB1ug/MkiTfgOcwVsd+mOuXRjXjjwO8IPwq96bLA1CKFnNkiW/vaDR7lIYL48olNJX4rhkjmjxl+rT2ol1oZfEV6uRBBzWOXca0QDj2MRqUoX2yZVpQ7oJQwRMBgL/EJ3ZW/2Jk09nMOKb252oQDXZThEIqD44ChEYwOH8scbxQk58ZFUnOnbUaqY9WEHyQL5xQG/pXFexgb2Or6b9U8y1d0ARTs/TDO4J90Rw== 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=inB291m3+MkgOjcy11nHMpmKd7+UmBpNkXSkJZ0qPDFyIr3ynbmJfBGja6E5QIdhteUJgLQQPSoNZC9GZ3y/QWosOR2ymmcguVDn9uMn1BgVgu+JlREDNrmNJ7e2NRVQJoB36KHImX41Xy35Jq0N2XXPBGkC7VstaYKoczCU1Nc= 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 AM0PR04MB6515.eurprd04.prod.outlook.com (2603:10a6:208:16f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:32:46 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:32:46 +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 V2 3/7] clk: export of_clk_bulk_get_all Date: Thu, 26 May 2022 20:34:07 +0800 Message-Id: <20220526123411.270083-4-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: e6d1715f-d78f-4443-465a-08da3f13d64c X-MS-TrafficTypeDiagnostic: AM0PR04MB6515: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: nChqFGHE+FNvUN2bOzNclsG1xOw/7mjMtQynLMk3q/nMKFoZzpfSO+s1CQZ3UGXeTqn7fJoScOSe5d5YBtv/aU9g2Y6RBZbFynwTX33LjE7I1qxI69T7Nk/d4RnXPwqxtAVtR9AGoknmWqNixdbLk+Nzv5/CYzgHpb8zZVfeP0vHYTB5zKQvcrh9tQbduNna2yzz2dTnVdfOQGvKx4S+RdsSESmIG/HUBE786VE3ZZzUfNIl/cHlIBrQc7CvnCxVce482RS8K+zgaSL50HDC12rOqZGJF4qDJjRtwEy5HW6eQEnEr8d6vswXt1ULV/oSj3dX6PYulSFlZbrj2j9aYa8SzJoiFhsSyeimhCXiuCbcUZWy3AUiTwGZjA2vj5XZ8n5ksoFKexLdFFRlvwCfS1cnuNUW5jnTL1pQP/P/uhqE/Vn6Yq8Iv9sLDYum8yRWU8oxkLaVCxdxlrLe6yZXekNq/QsVTXgVpOTDPKXYe2KdnPoTXF7igZn5hn5Z1wTSBeu2IFFPQvTdHKeqvV61LaJj45WHX5oUm4z4KWnDuCPeM7s4CXBbDKz43aMT9HKuyKhZ2uTsm8AxcubYAw82WxVdkdcLPDzs+fbQxqPtAplujO9nLGMo58RNZ4nvNVu5m2NXsZc6NsAmbVhgEZWgUE5KROlGCLTk4/RhNRDa95CFoaAahGZylNKUo8Xr+JezcKakOnjtPtOQVlcVD4vbmQ== 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)(316002)(52116002)(2616005)(6512007)(86362001)(26005)(38100700002)(38350700002)(6506007)(66946007)(66476007)(66556008)(4326008)(8676002)(6666004)(5660300002)(8936002)(7416002)(508600001)(2906002)(83380400001)(186003)(1076003)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ln7ZtKYmQdbwApD6wM/zErJfftA7RiRTuK4rsRpF6Yl2HLDLwSiBm3qV+mv9?= =?us-ascii?Q?+bvWszoSR3pjCUWG9RBI7sA6mqXnVGZ6Vv+hmKA4fXwPOnlX66sMdwbghiii?= =?us-ascii?Q?6rynoeTecVq+FVqI6jl7iTmz2X7c9VHgbdYeO4pSNmBHehgWmtif13MPjwy9?= =?us-ascii?Q?DO2c1Dn/fgNx7ie4M4hhAVJ/aE2iGRtrYb98zicfcEITcS1T7uxJjPxXjEq+?= =?us-ascii?Q?a3HWiaYQTF0hxQGWWTb1zuK6ASrMCT0sslmS1qFWuQnevbNSyZjmyQJwFJ0O?= =?us-ascii?Q?LxBfuepPHa+hdzn2RAV+c9WHlPeG0E+n3sMJRnBkJ4PuGhICrzugf3LO1KkX?= =?us-ascii?Q?5c0eReJU0DcrxlIOYD1MkiXGgk01W6ULUXeBDB8x/eFFpC3/RLN+68xe+ATJ?= =?us-ascii?Q?wB0iWd33TzbUvatKZHcnSkDqjoUgWevQZbpUQtozJzZcBj1w7odwbHoQFPPP?= =?us-ascii?Q?DOQvJe0k8+lDHbq4ms2q7/xISZsiL3g9RC8sKV9xzTbhv+z4+XNePIicAdnR?= =?us-ascii?Q?fTUHWYOxxeJo28MiCRhMsRMGl5BHLRsTfYni+BVT5Fr+IiYTUcWu/LNvcjCP?= =?us-ascii?Q?9ZriYt9MbbAPUoUPx4GNmbWURX0epYCAPFPNr1pkIhfT+XiBNPV7hAQziX7/?= =?us-ascii?Q?1aPoLu4rV7eZ+S7j5CRweukDIJavrbXO1V0mVUg3E6P3BC0NjBM2SX+OkO+Q?= =?us-ascii?Q?Zt0i2lAnb4h8pDvyqZ5aySb8cQbgloddWEmHlPy+wYw0vG7OijKQ1EiZgPw7?= =?us-ascii?Q?L7r/5JEq0JirAWhTcvBuVX/6gFHgHBEdNA9y/jP3jvMFDPDdYt+kevn7UtFx?= =?us-ascii?Q?M0+D2GycNNS63vRojWE9yg/wZacFUJFfSEd9N9njIJoY10nWlMD5QFJ7MsJS?= =?us-ascii?Q?z3OvURbkzpiW5W+VFAEokqYW9cb1NaBkJ+GD1SG2oGsXAtKm2AEO1hnGdoq+?= =?us-ascii?Q?WNEqdhfmPMnomE4EZSbDOlwRcUWQJD9WKrCkd1pmB85o0pkRt0w3n6txEYwN?= =?us-ascii?Q?DbWzISSYEQ4AtKZgAsoJVq5yVaAEWjP5rsd3WMNNVaXWWro5wBiEtcVdVyBP?= =?us-ascii?Q?BwhhVrJJSINVO4sTStx8VBvBdK7r+huMMvci3e+4DzSou5oFiiiVBAUtKwjJ?= =?us-ascii?Q?Ej4gcobZ41ceBy5r5XK3bpN4HW2FbXI0VgBI+bxo2amhGG77SjOtUrFKPGOW?= =?us-ascii?Q?oSH4PGq6ABhNkGhCxhd+HPXJvDJmJVxy49Fw/cckY15H5UYN1xeKMOs1c9pE?= =?us-ascii?Q?DGUxYE47S2Im30GoVqyC9D0nea0BYKfwQsT1xRwcuKOTUM+B4n5+o4mEqbAu?= =?us-ascii?Q?vv/QkLC5myugv4B1LhY+WoRD+n0VsMu1i8yDb7C1Khgl0TdlpWDimOrK2A46?= =?us-ascii?Q?QkUMh4+z3l0uBsM0c3FkIkjMDjXbLvioX7oj7BeYuEBUyFqG3HtDMHWnNDJj?= =?us-ascii?Q?HWc43hKemqvftPc2lNBSTbYDdrLtJK5Bb4P8nC7f+8yInjy9Y5Mtz0Enmhuq?= =?us-ascii?Q?mbpk2mWES4Sycfq7yXmTA/YEtBGR1BqGtS0YOiA0ERFgAFRoESojmppaZxVK?= =?us-ascii?Q?4ac/ltY2S5FewXsT0vRQVkPaPMyfmwVlitQzRh77L9sLGiwd9y2WQWFmLN/U?= =?us-ascii?Q?H9JhAODf9ITO3wbpyOfd6daQQA9rqVqQWh30WZNOqdJAPHX9771WMo8Ld6RF?= =?us-ascii?Q?byfgoqCnAALhwyB9mnMfcxX3N93QYAfid5FGSt/FWmuoJO7SB4SteUpovDRS?= =?us-ascii?Q?4iDSwNwRQw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: e6d1715f-d78f-4443-465a-08da3f13d64c X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:32:46.0941 (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: BdNIM044JzxJQYmJXQlnx2Cjdbfjyv5PUkoWeTFK+I2uYOmPd4QvnquIbZh3YwM2O4sx2s8ZduenzIZRrwfyOw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6515 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 Wed Apr 29 00:33:10 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 37507C4332F for ; Thu, 26 May 2022 12:33:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347301AbiEZMda (ORCPT ); Thu, 26 May 2022 08:33:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35728 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347333AbiEZMdF (ORCPT ); Thu, 26 May 2022 08:33:05 -0400 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2079.outbound.protection.outlook.com [40.107.20.79]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 821E6A451; Thu, 26 May 2022 05:32:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ga0Tm4s6Pd+lzrlCZD6bZb1uw2lu87U+K0w2SRlpUxchF9KgjvRqb7R7tx1FjJIIrrHvIOmQb2k7757ineD7XMkXKNYYE7Z3xIQJIzkNIzxfcsVUL2Zz9WMw5xPXOUOWJh856fpcLID7eVW655Ol0+oRdBBWkczCYmK09WzJouC3tVCcH3IBG6QWrjtuIa5t3g0zCHXMvw0nJIZSJlepNwUC1aKSHTlTSutX00CUkpY3otwXNFQfgfcNoEQ8wwVqIF9Df5XV73TuhoFm6OoBI+b2lvQqX7DnA0b0I3NhWrCtwz0RYIUDn1N90TFVuHca7STcyRTMRzsJdJXe2ncp7Q== 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=8GRmO33QdY0dtARzi9ScMm4URWVHl3SG6xN6TjtHm9Q=; b=PVlkbY91fAItj/I/4gm1C7c/U5K4CuP+nafNXofQDrdU1Yn0yxMqZEENstaILvfS/derrbbagMeyF6W8x8updXQXshtweb+hpxKRSmmXqkzNG+y5mvYj+E5Iy25cKiEAflKbMHtd0CUGBdpZ9CdcROoJTk4wr/bKFTddSCTJd5I7/Cn8BNq+ibLxHVXaAeTu/yVqHDS4hG83vLdYFKHnOZLP4/WqpCJ9vrMMObfxwfdoe7qeRoL5F8wDpZDIg5MyuTRbfxs9JUFk4Y5ODLOde3BRLGhC5CuogV4NbCtRekyhuHA9HbiSWUXxoIuRd7XCyCjmeM4SUZLeA144Sx2AOA== 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=8GRmO33QdY0dtARzi9ScMm4URWVHl3SG6xN6TjtHm9Q=; b=lES/JaCQpmxEqKs3vp688YSsepNbMd2iLsMO4zxZ5dqVad9cX+qUZtPYx2sJc11QpQ81+AKityzUGKvlKfxkxzo4pRSskAZ6573zQ32CgUCb31AE7JDcelZQ4Kpo4bDjwgHsdhEjEakdP7HFulTxNeuAFtuZhzZK0EW+rAF9BdY= 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 DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:32:50 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:32:50 +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 V2 4/7] soc: imx: add i.MX93 SRC power domain driver Date: Thu, 26 May 2022 20:34:08 +0800 Message-Id: <20220526123411.270083-5-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: 7a2ed988-b4d4-4400-3e2b-08da3f13d913 X-MS-TrafficTypeDiagnostic: DB9PR04MB8363: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: bT35dnjC/b0mTrbaO3XWjAMFHk7gRrgUmVGU6zs9FF62Nhes/NpAb8i0/QT7tevvmASOhmQ/STJCZg2GAR9rbSy2R6IlJCLZyEzxpRs+ahsAy3qTM2wZkt4d43vdrNO3ZTrNIC5JVKiD2svjfUF/6UjxiuAUaV6UjLE0eVJvA95V7IPQirk1k8kT3jcXwRVuhioOPdT1c6+QhZruScD74KjbBUQ0Cof81RrLa1Q8OhnnRlN4AsVXlZ5yAliynKd/r/4EAcIkK1WIAEQneYegvcaH5CFv28pfWolTWYcUWM2hE0WfsRCaKpr4Yt+eCuf8/YBg/xid0OOdZhJ5z0JS2IFYe0lTSj0hu8tf5aApWfLHXa9YUyrfvspj7tC9djTxyssQjKkTjfJfBlA9gGVxiNdzdvpoE046szR3lImprHwERgIOITlHg2KemL9Nr/anYESrQl6Hhz3y9i/txDdE+JNdXomT38xrMSoT2SHLRrj5WqhZYu6jUfPmYgZ4ieG0QxSpjlimyaEEHRd4YawLaLsdR1Y0enRM3QnyHAxe8wqNCQuxeItcNgiInH7wAflVqaJUF1ndKetBspSNMWjvRdzJt4E1JYBLXDR1zE9vXCebOpEQOcwaHfR5E0I8NNT+km3+2EbkulotAlBYAEzQAgMElywr0CVtf5XsZ3Dr0zChleLHb5jlJySV8wda90eU5RnINvdjjCWhvyf62MLvUw== 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)(508600001)(38350700002)(6486002)(186003)(2906002)(26005)(6512007)(66476007)(66946007)(83380400001)(66556008)(4326008)(38100700002)(7416002)(86362001)(5660300002)(2616005)(1076003)(8676002)(316002)(8936002)(6506007)(52116002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?lflm269kqF1mLVgZNoqrR7DaQTjEeHGCvVv2WLuwYKYcPM7sDh+3tGawnYYt?= =?us-ascii?Q?8npGdwz3nr2BBK2Vg+rSLkNRoH1aJxe8jUiRMkcvP27s8em2FC9GvgVuABQh?= =?us-ascii?Q?FhxB3CBHsu5U7eqf8DOAS8fRzmTEE0QREH22gJT59aIXK1u3usvdEg56e/EK?= =?us-ascii?Q?LrK74Uvw3zihJfOrR3ITXxi2DF+znpnXU92VYfoYE0DQUTh9k472sdftrFLv?= =?us-ascii?Q?WMpQbzE0CggOohj9U08ImVkBEJcUuqr68eHv0cE0/9J90giR3UkKxmGik8hz?= =?us-ascii?Q?SRk31wEnMhQiESGUp95UUtjHZc+M3f0wbQq0k+GhtBDZuV070yvTQMocs3jX?= =?us-ascii?Q?hBDwlI9TFo/ibfD2WAkoSKlHXIXnMpLjK4+q2CZEAqpdCC5jpsb5l9+goqrJ?= =?us-ascii?Q?qLmjohrpJUWO79OSAZgZMl4xko6MG0lzRnhEZJubpQYrogZBEpIR8VXscfc1?= =?us-ascii?Q?ooLqlkOU3yZOwmyjQEIWRSjgNnh9COQGTqHjIuGx0A18Y7PFehVHzRnkueJj?= =?us-ascii?Q?3Gik0gPp2ZyTZ0mG3BmNgQmf0XCK4ehM3IimLpTqQBo/HBk95t8k/htC6swH?= =?us-ascii?Q?bywuQOssXuHpYIZHT/0IdM0Q8yinbUHcfRykRLIrbYAKeFceFsbtKDSqhc1s?= =?us-ascii?Q?MLNbzlGtLU1XGichT5Zz1QgcCPNs6zU4vK/wmbC+os6txHM08gwk/tA+KD9Y?= =?us-ascii?Q?zEiUMFbHZumfxjEnKi+LLeEfeDcHQ9lnK0/fKIpRdddhWLELKqcbV9f7cie1?= =?us-ascii?Q?rPb0YPUBeDg8M74MfpYQWUo9pzXvwLKruCPvBkV+JYAacs2YFjS09zoPtw6U?= =?us-ascii?Q?GYvK71pPXdl5yWqGzjKcMx/gHNvBcDBDRwflQ/GKf5mx2wcwZB8u61+zkC4f?= =?us-ascii?Q?6HA636jneED3+RB8Gd/w98Eg6NAD1q6j9R3vTymG0OE4Ny008RgGMBWpghlg?= =?us-ascii?Q?BLsbzIVFVfeXUwELz/FrZgYZE/sqt0Whhq2wJ3JuMDEwMVttt3jcTjV6vT8J?= =?us-ascii?Q?N6ldJWaGmq6oIO9fOwKHkXUJdHN0DhetvlTFHMTKogKz/9+T8h/b9eXJGOQ7?= =?us-ascii?Q?qGIX0Of2HAIEFJLXqRmrbgVbTgRl21hnnjtoVTwXRaQvKCYqZ9aoodyjzlS5?= =?us-ascii?Q?7+xrRWgURUQ5qdXMxjzMAfyoEYUiqP0yXIGN1VCbEXtERwdfAMQKVAYSZ2Hu?= =?us-ascii?Q?NX+CZ26SSBwikTE2X1gZdVQ10eNVVEp7TpfolNsoWltuH6YOB6DVHQsWqMaB?= =?us-ascii?Q?H4PgktxOjd/YCutBPc++Ig9FfDCDmSZRskFuzsmezK/BrleVRQso9dRoO/M3?= =?us-ascii?Q?4Q5xLiAP2lXVzUFRLYdKXAYx7Sn4WMPWw+jWKOoZEXbfssBrQe7IL5kbCImJ?= =?us-ascii?Q?ODIugb318Mm5UAtcbSzyDO7pPdmQFLlgjRTiF+BZt1FADIO6cZHEy0khqugM?= =?us-ascii?Q?j2rsv1JmrZoW/tndPNwVev89hXphVin3v6zJQzQ2BfUpf+Zg2YqU257KFQaY?= =?us-ascii?Q?gxERLtTBJi75Ng6RcV4gLUM8yB/GFAngaeX5r0pIGECOQqUA2bdw4HFcxnOw?= =?us-ascii?Q?V1lQj2UiC3qCbR7C2/4D2tVArl6plcROFGSZsd0ZGQXkekDpblHDJ60wq+/k?= =?us-ascii?Q?vQ3U2iGYFyCY/UiTxrRv/thq6bKmX1PH+dDw6E3tb5LwhG43i0+yJEGjJTh6?= =?us-ascii?Q?TgDsFkQQ0b7Mobx/nffiV7fpzBTzUU5XAZT1aISNKWDYZQA8DYd+DiTVDX/m?= =?us-ascii?Q?uTRi1mCHRQ=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7a2ed988-b4d4-4400-3e2b-08da3f13d913 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:32:50.7378 (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: 0+bF1vnaJ9w39/2wWlx3TljIN3uHyJ8RnyCSJodW1QJrjpQbOxIzSbwCudDA5Xc6XUFCEUjSlnC0JTmYF0nyFw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 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..c6d204b51c14 --- /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 Wed Apr 29 00:33:10 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 22FA8C433EF for ; Thu, 26 May 2022 12:33:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347361AbiEZMdo (ORCPT ); Thu, 26 May 2022 08:33:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35884 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347325AbiEZMdH (ORCPT ); Thu, 26 May 2022 08:33:07 -0400 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2079.outbound.protection.outlook.com [40.107.20.79]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 84BCCB48C; Thu, 26 May 2022 05:32:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Im8A4iFgAJ5UkLrhuTN/4H188V/D9vNJEuVpzrCtVnpKyGzIXdtiYyQcNq9N7dTeVdJSgTzML+cwPM6xHuaeutyrSbAD+bPF14g/IBPX/r7JVH+qv/imwre5sJ3V4+ejQN+LGCWLGT4JK+y6qDLEfmkI4F9EJE3LJwRdGdZRKCngUkJw7k7pMlsy8t4Zi8+X5XLzUjx+7sTkivYDnkgJLl2Axt5vftp8hf7EelvYBxabbi6NmiuFAeaPGrKRSHSDP37xQwy4nkrr8ji1Auehe51UGumB/NKPd/FyKcEQaVbpjwPXeJ3JbWt0xigYTizxHvc/vYaY22Ym/LsxhFzS7A== 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=OctA8AA/HMLuFGkzae2+DvrmpYerQJrTtF7o0ybrJlQ=; b=XR/AGgs8Ou+uhwjlB4iiujdptM+9fuWkDZwE9zbZX6JalTp2csJFt7Me768DR/EM9SazeTb8D5A3ydcEN2669E8AKrU5a6oaLwtjoTZy6gITqn08sLxHMrrjs5J1ryvf7Csf8K+lgmd8sfWh5bGcerPYnhSUXLjwDHx5QvA9rtehR4SjbU8No3XTHIworn/sQ/lwoE1uO2jf+kUJvR9DkwlmbUW/Ybm+WjvShffLTR0VwlZc8aTFU61Jw9vk4bhzSD1lFmrUJm9eE/ovdrV7Lc1oJMZDddBWgRJp+uJoZn+EblR4tL+RvWsz6wGlvx/VqQxM4Rc6YqZXGa2ykU3Clw== 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=OctA8AA/HMLuFGkzae2+DvrmpYerQJrTtF7o0ybrJlQ=; b=VM3eLaGywvZYNyV3lGawkuXQD/EQMd3Msj8abbXj8r2wHuCpkaDJjfdlLAIu08s+Rb31wq98EiinLO9pu2InO1JiS6rywLG/8eKLR4hPiIpUn9UwrPlg9qdQ5cfQS/tRLUREpcnafACfP0+cw6PbxGpbEM9hRfub2z7enNgP6r0= 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 DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:32:55 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:32:55 +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 V2 5/7] soc: imx: add i.MX93 media blk ctrl driver Date: Thu, 26 May 2022 20:34:09 +0800 Message-Id: <20220526123411.270083-6-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: 3a07f956-e38c-4cba-0ef5-08da3f13dbce X-MS-TrafficTypeDiagnostic: DB9PR04MB8363: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: biRxHrcfFRDI+SRajmYYfPTFGTbtswI11PXngSDz9KRwFn1Z2+L5u74WE1ejOC4qgwOyZ1yudd6NJPMTKXF9NG9i6fO+IM90QFs+XcQH2LqiBKxQl2tlaYCjqn7RKkNdURF7JirCubkupO1jTc/awPgW9KUOEh7nQK7lI/ypyCPwZehcSn1qZbOpc9l5mqnVpCLtG3W3e+QR+gDE6IdmX7fOTBH5qXu/Lbf91dCTLcc5LxOvFlcZR9MqVKMZC/vdBRo8nBj0854aITmBeidVGVBi/WPtMruS+olNjoCXwkh4f6T2p13XFYRsXVHml6emYRJIbQq0zPY92v+usBgIosVYrEiee49NSFK0MXLgwCe/SLnM6SLjT3qXesAEtu6GYl3yFxGpBBAoWJzSk7p1wRhXpwiSSlGSIIo4JxhwRW0rkPH3lqaUikZrD3GDZMiI2dZiC7ObdgHQ700gACZpa4hJtE5cV1DgPQtPStztRD7af1ywa79aKZ3eKp3AZGQPJvMLxs9YbUiNpuI/H+e5LgnFXZeD9xNqOmsypQ5CfPFW/rUE87C8Cxw2BV4FWQA+uGoqfWGq8aM5TfpOiXhFQtIlEy2GyWCxVlcE5ZIUnbkU3MzckPzay86N5JsQlBukpRO4SC7IYktoa+Yd9YN6RB8Pb7GaqUKjVEoJU5FU8edORQ/aSPtsBL5EjfgnrMi/DKYQZvC+KrJq9QVZCE76Xg== 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)(508600001)(38350700002)(6486002)(186003)(2906002)(26005)(6512007)(66476007)(66946007)(83380400001)(66556008)(4326008)(38100700002)(7416002)(86362001)(5660300002)(2616005)(1076003)(8676002)(316002)(8936002)(6506007)(52116002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?rnMLoQStsXlHqNW9yoJaMRZ+hNFO2IrsSqhs9+1GLwclq8gcEB/08TLnZOQw?= =?us-ascii?Q?rOjq5t3CyUAAilXYORCw8woniejqh0rm3qHZHJgVlqdk8Wb7lOzwKsr/Stxl?= =?us-ascii?Q?CGR6lyGINrgRoJFSybG9241QxOexFebsrM/1vTmif8IRmU9dNmx0o+d/2JWR?= =?us-ascii?Q?jCc+CX4vRsPghTZ08+kE4RKR0VR+buI9T5mn6JoqlAe5lUDWaFy4cvXJpBlq?= =?us-ascii?Q?hF1cFuE2q9I1OcG8f6oY5wlTdevcDx9vOlc9QHIXSSaJiT/ixJ8/laLGMC1e?= =?us-ascii?Q?Jw1sUNv8AoW/ReDRhmFjijCH607vQIhYCCEe+fVjrC/fIVIcMYoGCfKD4M+x?= =?us-ascii?Q?7eX9z75pmDWADHF5JUZFR+5yAbuv+7VKZTpJiwq0waCsSJlYYk4VMFS+blHG?= =?us-ascii?Q?RsUCccos4CopzyTrrKAxbI1tJK8aNP2+BO7fVYPe8akUujEH95rx9jaE6l4W?= =?us-ascii?Q?suRJUx2Zz4OiTP4zC7l+t4lOwehliJLNPwso8CMXAP89WL4xBJ7SIeDe+/+z?= =?us-ascii?Q?r7ET3ap0dD3q0OSOXqQ1pNcMwC3MuAGw+N2zz4Q3knyjB0FQRJOTa9sCipyV?= =?us-ascii?Q?iHDBeJ6ZHkjG2mW/WdMFfVVbv8Q+0BHJtaceuMaFRrF08oa1Ic5c1NuiDuIF?= =?us-ascii?Q?vsC5MZmkiIUeLz2dMvaAZMUKwDvSFcEK8Qd2vxueB3c4qJNp9QrWGIhwQYPW?= =?us-ascii?Q?QKJwKWtk6xJDcxZn5nlF5mMsHelnds1IueYs/QOGqqo5zOAkqvveLDdGEL9/?= =?us-ascii?Q?12AN6fQ75EgAvPbMAQbz9dRLDiTftJ5SbqaqwoYD9q2znjT0iDv/yyFKA1kR?= =?us-ascii?Q?aFi2I6IUCpzwJaoqEo3W9BSpV+2jPw9RXlIU6ItMIW8ppvUka8S7cqiIEod6?= =?us-ascii?Q?0huxDUs1kI4hq6jbMSNWAHO9gZ8Xa2NQ0GHQYhzUipxhqzN5KKfXxJgW6wty?= =?us-ascii?Q?Kb82RA1fHdNHIPTrfg/9faNXVsmi3jnXDJ0Mv2tcmyx/7h/2U/l+/sc4mmlF?= =?us-ascii?Q?NpjLtrhRqD5h/lagsuBPTCIe3gpFweNt7YOxNCW0t1T13o0o5KgN7pXnUkVF?= =?us-ascii?Q?JYPNvCHVvTcnXGy6oyrVjU4OVT5QLYFFEeYaB+64WPslbuGDRGzdNLUHw9T9?= =?us-ascii?Q?LaeCJ5TBySFmX8ETR7JXH35Yo55Sci91UBUii51w1hJu7s17et/An3HBgmD8?= =?us-ascii?Q?BVp7vywa5GmIqGOLqb79Tuf9z9R2RiWtBug05W5MH9i/1f4QUxdPlVz75zTo?= =?us-ascii?Q?HuM9jmvJqR/Si1w/+H74cBQ54DEMABDJl8YFUWl/w7MvNfogQPkRdYvhofFY?= =?us-ascii?Q?NTEavuWAAkL+bxvin72YVWRW4SPn/56J8ux+ttkzHCGfzorSA4ehJP8v5hCX?= =?us-ascii?Q?mqIEUFx7h3MVV7SIW71s6uB7dFDeaA+BwF/bNCFLH0P8ZwuksgTuqlBuIDSe?= =?us-ascii?Q?21ivyGkU3Ct6pqm8yEkJ5fOd6V2hzUz3cndFZVTZyWU2iZEMWnZIoYAhKUfk?= =?us-ascii?Q?bg4fxZNdb+dq2vSwiuQ4NHX10h15xzZQREhYzgFXKN6q/YrTrzUF3X01hvyI?= =?us-ascii?Q?ONEuTb8hwInsCkQezjR/YbRexKMNM8u6ZiXuAGlX6mJSu8e6E0ocvXB4/xt+?= =?us-ascii?Q?oisdfQGBXXnMPatdnV3ZUDZ5YYw42CSzJYByCc9iu5PkU/EgaCmQJlgZeCoL?= =?us-ascii?Q?uaWtnR1cDRc9SuybezsDtz3Z8fKL0NdXIyf25KMsvdIsUZ3Qoj/z+hGp7+9E?= =?us-ascii?Q?mBY0AL4LXQ=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a07f956-e38c-4cba-0ef5-08da3f13dbce X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:32:55.6302 (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: iD7dOIkDZDFhS3UYU5A+wdESdRttYqf9kNgP4dKaNM3XlKQ3GIyBYeL63rd1NLheWh2kK9wxtSt3KYfy6QdwIA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 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..0f221a26e69e --- /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 Wed Apr 29 00:33:10 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 63BEAC433EF for ; Thu, 26 May 2022 12:33:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242026AbiEZMdu (ORCPT ); Thu, 26 May 2022 08:33:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34396 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347423AbiEZMdL (ORCPT ); Thu, 26 May 2022 08:33:11 -0400 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2079.outbound.protection.outlook.com [40.107.20.79]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 76FEDBE2E; Thu, 26 May 2022 05:33:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=neAEy1a0+pWPfMHPvD3NOtRDVctYJxrHxxIOHffCCiUo7zYJBTICg8kYi2C7fyqgVghNqGLIWUoeDTrHs60qh/yctquRwbhO5sO7/bAyZYC+1WnZgqwIBYdbRyucuw7NQL7Z54JZYM/kesefR2TQrVxE4co49i4G6pg62GEqnGBjkNpKTO9mEEANWZHGKN1X4hZ19n91Yq5oSga7LiDNvvwON9f01yJaioTqD5uvdpdirlmh6TF9ayk6XDVNQhYGoSUYyftm2JRcWaXqRuQDBOd60Q47TTFtD2mHmKRQXdGdDfSTIDNL3Q51PDxRb/mtG/yPhB3+51bdrJeD8OSpVA== 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=peLw63kd4sSBry4xOsagwJYg5O9yr5TK+vWF2yinQJ8=; b=LadFAiepQr6FcLTpl9sDt5IX0DIEGYy7VS20HjUfC2jUnhldYirOXXuc31gFqu8Gruu2rybSGNNrWT+2kcnEbt3O5JIIcjxAzhl3rp002TMRWQwX/ZCiYDz2UGllvlBtHRRRXGoTj7vq1EWc0/VF0Wbyv2dYcCBMNw2VdYqTHG9bWeExwJYlTjW2uD4fbXUlzqUkA1WwVXHAB6M1UAxb9xb/c1egegulY/ya9cVAuUn4+Iel6yV5HOTZ4IgbGdba4a5VlRsQ39WSFisWRDIcGDaUV3AGMiDd9YzKSSXc+pPaqyyElk6H8KA8mdD/38y7iZ+p3JX+9iGOjSmILXFMuQ== 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=peLw63kd4sSBry4xOsagwJYg5O9yr5TK+vWF2yinQJ8=; b=g5Yr/jradRpXAZXXEfR9po+b8OIV91QlUPQ7qMmQ+EUnw2IEopotWkerwY3A0zITIhGFep3cFtz3eOZPxM18rk+By2Th6cmB28UK/biMA5XKh2FR470e/8+9FUxQC2M7dsnyUDw5Vo+d5Li5yJc/GE7WrdQRQvDEq7ZMfDxTdIU= 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 DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:33:00 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:33:00 +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 V2 6/7] arm64: dts: imx93: add src node Date: Thu, 26 May 2022 20:34:10 +0800 Message-Id: <20220526123411.270083-7-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: 9b507803-bc3f-4d7e-b864-08da3f13deb8 X-MS-TrafficTypeDiagnostic: DB9PR04MB8363: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: 4jO9OuYMsDMInK1T5QGIuvKKbUXwQbsBFP4iZCbynToem/Y1HOPk9BopSKarGzok7Hs+ZmslovTgJtWtfAYxafiYuePRtIUSZPKHj+zvovHScvZTJe0yLpFZ4i8kY4K20dt8jcKBYqPOjj5ds0rM4C4i1u19oZWD3l2P2G83RUNqkZhjbkd3d8xmIhXrl2gWmMHysKdSEL3Hx0DbQlnM3D8ORtCD3kopl8BtLclMsGHitk/S+zaA4kqnmcygoLWM39R3eI5sIrdQiVR/7PKoL5hDkXT2W7Cs3/si3VJs4NffJkXVp5L3z4ub9xMeFWAb5VZcbBtO4HSeNd7bh2uM/7aIVqGHpRkAQ+6gk/OEKNsIx9lrCcC8TTIZaDQC55VPSE8VbJ4rIXBP7Q4AjMNBDHnekJ6IH/VW6+wNji2I8dQqyjpovKvCYiWqEd5kA1ynVCeKAGGVAx4HrJTHSV2LEu/BWar9qKkgwodYjLGv6qknDMIIaG0nHvc8IkjTPpCTaAL6x2IC8NnzyHr157UN7oKUr4oFVBfN6kpneGuEDZVjkrtK7YpHW9B6+A9CdMWi80PPozQ792WCT0WEe1yPU+pE9WfPlWQ/dAyUTYBCnoo0MYN1Cox5wJfZll62SxifYQvqr4FOKerX9kA2MZoV4MH6oNbr0Fr+lPUYypSZAe8oT4h6kzwuFMzDpuqnlpxh8fCY+BEFYiErXuMj87isAA== 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)(508600001)(38350700002)(6486002)(186003)(2906002)(26005)(6512007)(66476007)(66946007)(83380400001)(66556008)(4326008)(38100700002)(7416002)(86362001)(5660300002)(2616005)(1076003)(8676002)(316002)(8936002)(6506007)(52116002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?vSV9qlX0OVp4iMdhdVbaVQHP6EQpJwD6qbSMv9Ks4IWNL1/Mb4wfx8g/i0hY?= =?us-ascii?Q?0A3SoP929iJoSP4vRvV/fPat3Pg3e9Mn9GpHgysMGxoPNaRaIor3OPr/26uR?= =?us-ascii?Q?GMmMsCK26SIiEXpRelqof3kPc+B4CLhSb8p3h1K0J7Jrgx4laCBITlm94N27?= =?us-ascii?Q?NTone/TraO/nvgWyY2U9efd+9H2y4Ux13pL7W1MErkdAqa7KTlM9VCyAaYBJ?= =?us-ascii?Q?R56W/pdzO/wRz3JC47f+0ZotqUShoZQ++SqEr1Q17jqCN8iLIm72wXe1cnGy?= =?us-ascii?Q?K35y8eR6WojHeSy47YBbchsb+NsgXNcogEvVBT4uCyemDIJGgeaZAMcDzTRp?= =?us-ascii?Q?IU3zMO3XjZ+BH7Ah4ukAZr7ys68rLeeSgwoqjQF9bTBBklhwoBFo07OtjHdX?= =?us-ascii?Q?5wbI01n77uSCtlA8Xs7yFwbxOQWwk0nVFX0BTZscRrkiZ2E9UyDXtXjeN65W?= =?us-ascii?Q?kykBWU6AYdyezvv8phcC4mHRx+ZeC3J7tbgXBs3meOjXpteOBr6byr0lpZyD?= =?us-ascii?Q?jkFeK43H/kSGNuXLeTIKreOtqZBmAkX/Wm/+XXCZnXSiLjtYHdFJKKGkNbfH?= =?us-ascii?Q?kl1S/6N3cNWHulSfuwiX2JYvO2aPqA0hGo1iY9cxvIIyHqRGK+vlJn1xgj83?= =?us-ascii?Q?ntenQjPCmxdZZpbYh4y+9tr7A+OfS3KSW7OxY8DXNDZ0lWVUYXYqfqW+8bvn?= =?us-ascii?Q?4xW4tOvLHTLN7BvUUESmC8IwzY/mDmFE1/tWxoVg7b9nCxwg1Rrx+sfbEaSC?= =?us-ascii?Q?jAYEtrfuPMr3b8xwlb8ELXCNQUIMiNYzYc6HepQ3F58oigY+MxqqO3kA15Pz?= =?us-ascii?Q?B9zMNg47dgrbxgmDnoCCC7jO5cE6LzXsMVzypWKGu7ksn9q5YEm5IcZjj4cs?= =?us-ascii?Q?a1VEveYMRNc7xuqa8k8TcoZvIMzhIXPqJK5G6u0J9fAwfIWUmGNDirxADbe6?= =?us-ascii?Q?AGR7U7V72tJSyXkXd8oFLoO5JzJS2cml3csapo6/a07plNXgXjAjzNUrMVYM?= =?us-ascii?Q?7LdUUJSxVPVbcdIAMW5PjfRn79NIYkeIyLJfZ8W140E/K+XIr6aOZAwI2Ahy?= =?us-ascii?Q?2cPcQAwljr9pELAX1J+vbJpapAPV4gfggqY0yWbV3scrSAKe1/i5/bU6bHhu?= =?us-ascii?Q?HfSfsfWCMaEr7iJHlM2AmkwmgJ4W2sQ7o80pZdE9zbAcyGyKOi1dbwJUd88Q?= =?us-ascii?Q?KZOPaqfsHFVkarkTKbUZbDxhtMrQGYoy4WOfv/Xk3UtlxhgziZTBRrViYowU?= =?us-ascii?Q?j1zRuVtwEonINaP/2O4SiLvSM2MwowXlATDvsUm/ldrUvnyciRW+Cj4DdesW?= =?us-ascii?Q?eowz4BdAv+FdCmJcQ8c0TZKbHSoDYmMzEqzIorDg9rA8wOI/Bzh5RllFcocw?= =?us-ascii?Q?bKnswZzIT2HrEOvcOCQ12xHE8ZJ7RdMKNq9z/YYksFqYT0tVI3NDTKrSDssu?= =?us-ascii?Q?UO8H61epzzWNKn0HfYt3wzPXHfXXdVhXw+3vPUSh88G9KG93VxTYmwJxG6Eo?= =?us-ascii?Q?84lIJtZhhcSu9rFr6eto7IlvsRSgipnOCgpE/tAFOquX+3TRsf3kx4IZNpuE?= =?us-ascii?Q?NV18O5k+c4Q3r9Hcpogfeoyp4nwENeh1zIiXpL5pyWOK3csivjTaowQ8z0Mo?= =?us-ascii?Q?+f/Z/XMkFTdfUqymOcmmmHbPK1c6EkcfohhPSmsIawF7PrEz7CrXaSruJS/F?= =?us-ascii?Q?p6yesFh5vOdkxz2q5+qHpdI5SOFsQPiYoxCwNEEkjMEb44g7rWrORiqwWsKt?= =?us-ascii?Q?WDVFr6ABcw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9b507803-bc3f-4d7e-b864-08da3f13deb8 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:33:00.3039 (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: oFDkSPvAyKy0ZlkldSWC2tsDV6tsRcWOKa8T60b3YfLqKIaWND1cq2Wi0bZXR0UxiLA3w7mhr0IpjJBQL/0ZoA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 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..f7d4f769db00 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>; + + slice { + #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 Wed Apr 29 00:33:10 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 039F2C433F5 for ; Thu, 26 May 2022 12:34:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347477AbiEZMeB (ORCPT ); Thu, 26 May 2022 08:34:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37506 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347386AbiEZMda (ORCPT ); Thu, 26 May 2022 08:33:30 -0400 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2079.outbound.protection.outlook.com [40.107.20.79]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B6863A46C; Thu, 26 May 2022 05:33:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z9SjXiB4jexnX3Y+Br54t7RbH/IrY8T7KyKwSDncaGqpOFM5I24/EOMeEcIPRnxQs4l+HyeMqRwntDiyxv+xZKPkiOjYx2YUz0WIDoZyM/EyYyJpdKzP+0j0yfX2cLOIFsHE1rzTD8GD+TZhfThuXMUnCsyYem9gJrZBjA84rUIITTQb0SRlyk4VGBAyrLfI9a8xMbGypvi2Ak6xCCAWp2YazouLlIdEH6mwsDvQS30luUufiqTy/EdKgq9oPU3jR1XZmtN9fzcDCIIbzIfbVGLo4kOObSwjAig2epJtJx0fQv9f+ReE1dZThjsXcw2u0zH7Nm4pbriwW+W7qMeeWQ== 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=QXgwknCxgnC4sPJlycjjKQde5pOXYa0eLqTitX+1NVM=; b=Mvm9JobClanhhFSf0VMq8Lqa4KPpy80O4dTQVQgwbE4NLYvrIuNQaE4bgQkMnK4IBvGylTE+rianC+Y94j23DtB+pXwMKJbVbyMDIfxCtp1z04ss+fsozIjawcNMNZFps7S9c4/pfcajnudfotR7WAnIgyxAuH1Eaci7EN/OdaMrAeXHBoBG5/TUib7/hiQcMhhBASCYV8tywnd57aYXiRNvocoL782HduMrTdoYDsKJKohcRcje1Od9oGcwAdKaMCzItqySRbs6/xbna1BTGQeATssYDoQXeHMj6luNexW4v5w4kfI1ebt5zDnhwSyLNwx0H0NE2cRKoVs4tmqIpA== 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=QXgwknCxgnC4sPJlycjjKQde5pOXYa0eLqTitX+1NVM=; b=ZyAAANHNF3P6RwHAo9yLIIPPnffpIayRgrCGZ2T1/qMMuSwb4lcSb4yKHw0/cGhtsRrrS/v8PHJb37RkELO9M/Xf3U3xaaLslBLLg+7xMhkc9FrCqmKPAk2UFNAw5ibTXfpJR6rhE1skL2PkyIEEyRdaN1/tBHCRBmWcgIh+hHE= 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 DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Thu, 26 May 2022 12:33:05 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%7]) with mapi id 15.20.5293.013; Thu, 26 May 2022 12:33:05 +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 V2 7/7] arm64: dts: imx93: add mediamix blk ctrl node Date: Thu, 26 May 2022 20:34:11 +0800 Message-Id: <20220526123411.270083-8-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220526123411.270083-1-peng.fan@oss.nxp.com> References: <20220526123411.270083-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0013.apcprd06.prod.outlook.com (2603:1096:4:186::18) 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: 226b3bf0-cb2d-4eea-91e8-08da3f13e181 X-MS-TrafficTypeDiagnostic: DB9PR04MB8363: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: qdxS9bM2vEA4H0YhDOrNETj7f8IfNmDg4ud/yHSEWW+87ezxYNmPyIzz0IQ+HnB0N/R+ZJ2e/MVrgsvAxC70K0MahpU+021Ep3wUrpWsUpxICTxq4bcbd4QrRjL5x5LRZp2rMSFiEKvDW+GlxSCrt1MM10zGhTv539WuS4qVlwEN/c3UOxunJzzENAU4tRcj/40C+dTUY6alv694AgIl2A6GfAWMCnUAZ2dyVSrzLW/RGr7EEj1KCPHoFPszbgMrLHSwUZI0wOy9ClDCGRNIWce/dWLDC3SrV98y6Z3pwofSFj2niV/Jf9Qljjk7D3iI3zNbLS8RS7S9xbYeZnVyS4wAbpKC/+HmziLlyZInUmd40mAfKpTESTirF/Kn/rQpq7gOHLOuAT6CBOPy9/ZjiFcXkMYt+jtgw/ZeUnxHiO6gmzMMXaOk6qdJWb8blB7QjIXzOFLNWloSevoOtnaIx84BTqPXihRnsTki/M0d7DYXTq6u1Z5qVnvcl5XVN1Rfmlbkw7fFZXrGiF5TXe8GpGd57XiyzLUalPHCx8NI/yX6oO78uoXEkAJHTNwiIk5kXhj3XKy+Wy+EePzu9wl79JlzrcATeXvAOS0hnuIc5v8DDsaCMu7iy7zIgFcXowszpJH9czxST6aIbMm+QD288IndaanuTLFiqZ70J6PwRTTgMsFH+YU1RBR4reVnvW2cVtw4WNGrypP/otJj73Zr2Q== 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)(508600001)(38350700002)(6486002)(186003)(2906002)(26005)(6512007)(66476007)(66946007)(83380400001)(66556008)(4326008)(38100700002)(7416002)(86362001)(5660300002)(2616005)(1076003)(8676002)(316002)(8936002)(6506007)(52116002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ck5YCj+Kt0oS/eGWzWLKc7WHb1ZYmYWcFChL+V/Z/VZUNSPs8sd9ZuQA0lun?= =?us-ascii?Q?m4LRbE7XjGYNMIRQ3lOjyWgdDlW+4AA/5vF3VvzBGOE3rYp0o53r1SEVt8gJ?= =?us-ascii?Q?V6RUvF6lUSLRFVTFP7ngHSpLt6HuIbTHX5O1XXQq6qkuRAlANstEGGaSouSI?= =?us-ascii?Q?mgNYFZ+gd/UdyRWXl7lsF9Uw5zx624ZpaAsy+iXkUyIla2I5SJ0VYnBlxWRq?= =?us-ascii?Q?R5rk6N/iGuLb7XECkIxZgQhST8zFL9FwVsE2F8xDsNA684zDk7hZsaj68/WF?= =?us-ascii?Q?cgrFbBBkm4RCQg+hOeKDmmYD8iApfk0mKsVP/avQ1MfuhQjEI2Dw9wIijiAS?= =?us-ascii?Q?oN8h2NoV/3b1a4uh26s3w5g6D3cExOTwGV2vIoXnb7Q0FtYDparvUvNcvyCZ?= =?us-ascii?Q?fpYSQDTyBDIgYCWqd3eXnQyExJla/3Fuo6fGxD7C4EAPZqHglTnd11l4yX8s?= =?us-ascii?Q?uXqz9CtIGOdicoRmWHtw4OYQLPK+Gm0cIXdq3YkomTraOrvgHJZc9o4I6xM+?= =?us-ascii?Q?hQZvPXiEwBofNEOgnf+lX03NRnmNE1bx6KhkVno03L6kQnasELJfaMswPCX2?= =?us-ascii?Q?lWiZ07EgK1pA5q0PhUUquliQZhMHwN7+WbuQSLleU4ER9GlxK2w43EK59cUN?= =?us-ascii?Q?XKx6WvP1vl5nCELQ7B4jyW4tUkzsif0o1+obUciThkVo1PtssQM2Y3zhChyE?= =?us-ascii?Q?EGIQJlMGYfLEJDjhg/9aX1auwFIV3NZfxzm0FQQuu45/mS6zlkdq//ErcVJm?= =?us-ascii?Q?im7gkwHlIxiZxzbKFTtyFQNJLxRWhv7EwYvOmCsKMJ6/EeSpMeg1nDvKGS/O?= =?us-ascii?Q?u/t2mIE6j0D2AzFSQy/Lnt0H6LBVcGicMUz9WRmD1kntKIEwmO8WB4Faeyff?= =?us-ascii?Q?5WOuGhvhS1pVHg4+LlkDGXuQ48OZmBNa8CRC4h3dzE+qR+JXgJfMc3czJjpC?= =?us-ascii?Q?WAVPYlR14FcnLd5ZNSpNUWl2iFEfef/qhKrgKb037KRal2CJvSzypp0S/Hja?= =?us-ascii?Q?JiEMgNd1r1i1PnxLcd5p0GdkeWIIw0RpjEC4bN0kWb3GyPQqe9ld4cfPlzsJ?= =?us-ascii?Q?ibdGiRn3CYFP6A1X47x+yj9KD8MPaKBRj1qhwkydOKHvMk4JqjjQZjK7sHPN?= =?us-ascii?Q?E8fGmSDuX03blEMu6IU9nwRiwNgQzv5WAmVBPCfWmd/SZ/2L2LJdR0FPWRQ1?= =?us-ascii?Q?n6yZNtIgZWIecE84CZH0JPtlNfOljNHMSAXhyMRhCaK19Gjcp/j6/eFP+0lI?= =?us-ascii?Q?jPLYrSUscaU47BQvnWDSGiPi6MepmvUc99WDgWFVWiFuTgz735UFeKxiaunU?= =?us-ascii?Q?BT2Q8LykcEWIXBQ+B1N6QaC9o98SPxcO6tdnq6jZWPowfI+8nEOmIW2vzlbd?= =?us-ascii?Q?3A4wntTgDFLw0aDFT7zk+APurKXheNZej1151pF+WA4Cj7aklDUmJ7f9z1Rx?= =?us-ascii?Q?Mj7+BpJAeD+uy6Z+3cXXZRDlDSDnJOlIKF+ZVzz/SRa59rtld1AhiNWYKvBR?= =?us-ascii?Q?rgtCGN6fpjrZ2u7fhq1GXeYNMuP0AM7a1rMKM/6xNQthnluvYRS/jDsgsfz8?= =?us-ascii?Q?cmLoS58nZuAUXPL955wOHaUlRvlplbw34tPQLXjxFSDDaMESIY91oWabofTW?= =?us-ascii?Q?J6/6LrriHbVlFifMQPCqblCuhshT7OPlI71xQpXj2zR33SubStcKd45QToCH?= =?us-ascii?Q?oqcE2Qt5QcpYQylCNYlF7zkAEMz6M0AXsfk/042kfrRKUKTasX7scHUqyw74?= =?us-ascii?Q?RKq9VHm/8Q=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 226b3bf0-cb2d-4eea-91e8-08da3f13e181 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2022 12:33:04.9779 (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: vxMhLlU1SeUITmF9G4hBYy6FM/3N6rHf7SPJo/rAcmIH+HMHP/2yRZI7rj2a9cC0uTtvJV8hstH1MtKzGDtraA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 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 f7d4f769db00..493d4be710e7 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