From patchwork Sat May 4 00:48:55 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan (OSS)" X-Patchwork-Id: 13653721 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1B4B5C4345F for ; Sat, 4 May 2024 00:41:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Cc:To:In-Reply-To: References:Message-Id:Subject:Date:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=IdQmXi5zMQ8FLQu37V8sg1pQ0dDbMo2njVGCvKFD0g8=; b=lY/MAVHK9e6FbRMfE2ty61gd0J isJakxBmX/0nTocvmdSVi8g9GsizQvbZLVLrmgVlJbvnbNA4YOLd6ihK7QY75PV981SZQM8UyPExz h4tdmPwIsgnUS6ldwSXuPL9ziB3yHnIdXkZFGsiPqm9hO5D6QqAOEdVQXt7vS0vHN2WA/2dNKT3sK +UOCVE5AMOtKrrtSqEg2qDazLzoKRs95Q051irQVpCsCTtBdhRqNEWGof0eQoCJtKv/Cx5KNWuaGW flMVrxRMB9XMbK2BqjrMIX42XWRjqPpziXJXqAXmdTwr7bxAWwsYYu11ZOsicvdueVmes+5IDBx8D F2DOS9Lg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s33St-00000000sof-3LfE; Sat, 04 May 2024 00:41:23 +0000 Received: from mail-vi1eur02on20600.outbound.protection.outlook.com ([2a01:111:f403:2607::600] helo=EUR02-VI1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s33Sp-00000000sl4-132K for linux-arm-kernel@lists.infradead.org; Sat, 04 May 2024 00:41:20 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=m5qCufNfSAiYu0lHWeji7Zkyc1bhWYsxOUQ5pPMGHQwnFJdaunKLhhBYiVrUXUw3yxqfsUQiS68LXGXQ9qnSphdfXpsj+8h+w/8IooqNL2lqYMJBvbvihTaVM+51NJ/4li3iFNNM67mZswQSH5Las9fNw19u1musmWHM2xUFXz9eaepxcnrzYD2aIdXmSHVDgP3YwIA7hCFHWhOd0dvjmi1YKLnmRkn2t/2eCLIwB97k3cVwfe9MyS1VtVC6g147ylOehZO0iWlAcXuQXPxwtNbmNyB4kAdg16MQ+3O9zMjXcUQoe/ET1v8kizWVe9gtzhJqJaovxxqmrERT0GQhDA== 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=VGMI2AiGxzw3PtYdGfhqBPcJZuR1jYmB5HiZD5n8n9U=; b=E2ZfAVfjtrTq57DbWsgcsxAeDV6xx6RDmu3Od2CPEItisyuxlaJtWrr0MIgB8xWDPtB1rNx7vx7l2vznD7/ZFAr4/eaLMVnRcvhlQEXwct63UdiJeSHxWXCwCtOpLytxkpdaNxRorIuDQkNPbXN1+GLwBX8+Dk7j649fybdnLQQ7kqEsw6LxPkucyRX6QFgOqK+TPIDzs0mxpRSke3Nu56CaEWJm0HeK7JiRZVetIFKjHzw6h4ByxE2rxiPZDn2kvd3S5TVZcuZinIsYzv1CWnoPUumy0XAWCLWQpCJ5e3RU7xCBEqoW+LBVQjonuW1K2MSg0PspprXIAl+gS9CFag== 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=VGMI2AiGxzw3PtYdGfhqBPcJZuR1jYmB5HiZD5n8n9U=; b=beP4RVJXKfA0VyKIo9b5Fxhx+pYU039zLwUQQtw3nDTRCqJsx+VSMbFNNPLhRGUL+6wO2h4cT46jqpsc4bP8xTEpEVoqWPxX/hHkAtQz1RhR3WY2nz5xCu7TGUPEXMjMbYy++aAbAnHAhJuj9a47skkF9watz3UtOWe7GMNzruQ= 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 PA4PR04MB7726.eurprd04.prod.outlook.com (2603:10a6:102:ea::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.29; Sat, 4 May 2024 00:41:13 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::d30b:44e7:e78e:662d]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::d30b:44e7:e78e:662d%4]) with mapi id 15.20.7544.029; Sat, 4 May 2024 00:41:13 +0000 From: "Peng Fan (OSS)" Date: Sat, 04 May 2024 08:48:55 +0800 Subject: [PATCH 02/18] clk: imx: composite-93: keep root clock on when mcore enabled Message-Id: <20240504-imx-clk-v1-2-f7915489d58d@nxp.com> References: <20240504-imx-clk-v1-0-f7915489d58d@nxp.com> In-Reply-To: <20240504-imx-clk-v1-0-f7915489d58d@nxp.com> To: Abel Vesa , Michael Turquette , Stephen Boyd , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Jacky Bai , Ye Li , Dong Aisheng Cc: linux-clk@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Abel Vesa , Peng Fan , Chancel Liu X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1714783747; l=2275; i=peng.fan@nxp.com; s=20230812; h=from:subject:message-id; bh=nzd37ej6sCrJO2CX0AUOVMMELufbZrxk0WgiSw0tXHw=; b=ZpZQ4CTt9Q0v3CidAfPTOx0iAPeCEzp5sE1+Hz3Vbmoc4EdTbB04/h89bvHDFglwc2HIEwfYY cQiiBpsCKYKBEuMj2WkFEaqyBvuyFqV9EGT8SVQBO6XbVChNLFKuv7A X-Developer-Key: i=peng.fan@nxp.com; a=ed25519; pk=I4sJg7atIT1g63H7bb5lDRGR2gJW14RKDD0wFL8TT1g= X-ClientProxiedBy: SI1PR02CA0055.apcprd02.prod.outlook.com (2603:1096:4:1f5::16) 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-TrafficTypeDiagnostic: DU0PR04MB9417:EE_|PA4PR04MB7726:EE_ X-MS-Office365-Filtering-Correlation-Id: f7580939-a12b-43fc-4ad0-08dc6bd2e663 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|52116005|366007|1800799015|376005|921011|38350700005; X-Microsoft-Antispam-Message-Info: =?utf-8?q?zLnxJ2dz2+KPvsyWSoodz1EEhLjpMM1?= =?utf-8?q?l5E9V5v/qk8oy69UNbCs8L78Xm3LfLpu8PmKTcbmpWlbNYC2urDwxHXB8BYtGCXGz?= =?utf-8?q?bsGgU1RrqNCuA+TqoBBRoUjbXtGnsvlXZBwEXEe2Mq89p5CAAP6T5c18ShjNxavCV?= =?utf-8?q?t1anCzdZyF5UXz6bPEucvG1c/rzN4vdvgS5c/3GGOdj/2QPoHOlaQ/Y7Lwur/dkUL?= =?utf-8?q?DxM4J1XzCrBC0p/NyJgKc+5JzN930RJYpe90HGWkoI+kjiD3wFwJZ+aRBfz+4l+8w?= =?utf-8?q?7rD7ULwYp9/nfDBCYA7V+ktm4xoSRjR2tbE1OVuonGHH7v4bEcYu/RsI5Rj1oobJ4?= =?utf-8?q?hxrFiB+1jAdSHd1D7Aqxby8IatL1wevdn5SXMh+vw6J8iWbfuoR+koogdhC74rO1Z?= =?utf-8?q?9wbGWJdGIFJgjWtvc5ujHB3K30TcYjztDABx9YgZTbrW1Fuy/LuXCln3u0VlddgYd?= =?utf-8?q?HpoRPREag39M8PmdVTshSaMoqsN2lmxtn8DBXcUR7Fg7YzkP9GuEpTVyedxKm/sD3?= =?utf-8?q?WzKuAs644g/rQ3+UtBYsn0vXM7xAzS+LL43xWAISRxszP2lFlkCTcS66Lq5VPpwW9?= =?utf-8?q?bbY/6sMSDAfEZNZkUaMChV0/2vLu1UxufAL2c3kzUo1GSnFlSLI+6nXLeal+wLcOK?= =?utf-8?q?BZ8YyO1qIQ4nuyBnGwjltKhLuVToqIgenXWN8fiAiWbRrZCDNZgdws4kM2hwybQ5I?= =?utf-8?q?xAz2M6vA+ePXHZDqs/sMilcshoddLliemDq6eaiGmtPvMyw3XD8VtmySyvYq4LfdB?= =?utf-8?q?jG5cPge8c0kgVtlsy9e21gq4diQ5NZ02uDW+c523m/7ekVGCTBgRMIZmdkRSCJfkS?= =?utf-8?q?0uGj0rHghlJOYvSB88jAg1xp5QWRftdISgJyN0ZDGz5PW66mV+6MbrV876r7ZoPdH?= =?utf-8?q?Y4HzQ91D80H0KEN8W5MVEhBdkstDgJO8R93AZgG5+BKsTJnkeAnJPmPyDT3UFARuA?= =?utf-8?q?+PpafiDpK61KOm2e7QcI6ERcsPZFa3xwYxM7y+ffJWLYsBMNQnuSd6CwAI/Ub62xq?= =?utf-8?q?AgvbduA69U3cfCkoOMzfqoi1YLCLEibCeDaSswT4p07bqjPnwPXWxuZvzD0bbJcCu?= =?utf-8?q?HlJ6TqcBPySPSa73O9XKutXzj3fuO+oUrxSsYCpy3zoKrnoRoJQ5i6iEFHHO7Pdc9?= =?utf-8?q?pX5aXpFNDAl8R0fpr9iZMZ5g4VJDK51TGJrYIbNck2x77m2Exwon9coo5OVDLNLbZ?= =?utf-8?q?km4qRx+zGuaGut6+fm4DH3PLTrK7BAYo6G76cFGUtDODcu48GH9yGEgj5ROZ/zMZH?= =?utf-8?q?LOW9U1rnBHugG4C89MW0SxE8gZTaLMYrZxy3DZg/3ayoCcbOFeBpubz4=3D?= 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:(13230031)(7416005)(52116005)(366007)(1800799015)(376005)(921011)(38350700005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?OlWopRwU52UOLMlW0R8L7toravGu?= =?utf-8?q?NjXsJDZN5h3zS3hgQB7KHhMo4NJTt5AGCEdfdLB65A0JlUvndUpw0oxpu/6C8mKKu?= =?utf-8?q?+pxnaOPv5FerfCqp4gz87/ejfVs8CrKSz+JHfQqr3cnZFgSL6seRuVyaVRnKKG4Yr?= =?utf-8?q?6WNcdz46OnYNTLBbGr+Aum7rRQy3O4ximvM80xfNQ48V5n19FWu3wC9GKAj2QXz8h?= =?utf-8?q?oBT9OqznRzge2i8SyHl9l4m/M99i3VCyNeP1HjuGtUzERoYL1VOEcNFNTkU8CGjS8?= =?utf-8?q?ChHQLzJcxgXAynqefgnFb8Pvs2whesNfsI2w/cFoCMMwy+Uw8kt7gt0eZKyEcflC2?= =?utf-8?q?Qgr2AA1Goz2oS0cIetEJ/qU0RR5wgk7Vp7MpMW0qGsI0tSCLcMIOb1cIpWgLserDQ?= =?utf-8?q?D8Yx1AnSPhlCwYNq8hcqoNG9HjMZTK6K14aFqO+X3p633eQfLPJ/6MF+iLwHBNpTb?= =?utf-8?q?r05IzJCq0lwvpIH9lDjZU38qLC2125h2TDxjy5r/0Nfd6JEWwOlX2m1zI4R3COcAn?= =?utf-8?q?mPdPQqjh94LLXdz6JsAacfWuPkM5p0hk35UJIyTZUBNhqUU8vN1frNzhe1GAHIix0?= =?utf-8?q?4itMV7pcbOhCl2of7d5Ha6Z6J1wnuzUWZkFW7vIaxVud+o42rQ90dkJfECT2vaeLs?= =?utf-8?q?lFskWeO35vb8/6XIMGUc3Bvcm1vGh4Q8HaBslfTGrib6fVdoUwCTYhG4POs3Zdc95?= =?utf-8?q?voF0LuTf3A/rnoqhf/YOIUIAHfUSICE76hFvSKIp4laq/3ne+U/Qi9w3GDh55OAOO?= =?utf-8?q?OWX0m02zLbnmYQUWLJd+Mik6bLX4RX9huzRrM3SSjGN2U9mB/syuWt/k5yLZCxYTI?= =?utf-8?q?JXAVMmIYhM5N98Et2PaWnn5fZKprixw5ZsThtcOMGrEwHJkuoM6iuF/aNp4rgtXli?= =?utf-8?q?WwaxQJCTva1TQtqN/1AmcJXO3NEInFPSFmVHNsHYG1BxbyLN+wggno2zkY27KL2Vx?= =?utf-8?q?ZN1wAieRVu9jBXTzoVtS7fli3ZynLdX/DrMtKwJvOW5jb/yZRutIw4qFFPIRAdAQk?= =?utf-8?q?IvZZskTFSYK0pdU23i+b9/rtXB9XJeZ5DBZ4+kmxn1wuhzZJP4mIxk3v4JGtWFpTV?= =?utf-8?q?v/vCXVZGPectyw0uBSr4KvUhQ2hQTMabQDr5AZnVVNPKXcHMdttBX9ESfCyOZFMx5?= =?utf-8?q?APv8WNCV/bepiijbs+o+e/gLnWoZLBZ0qICr4kHkLpKEAeVBuLbwiMp5GKerOU8WE?= =?utf-8?q?vrH1Y10f0lyI+2Kj0+4a/yaqgOw5VIwKLofKvscFRd6Bp7edPEWbJlj4/awpDEgP9?= =?utf-8?q?o9WwiM2vZHBiiFRWd5os46fXCvn6Myjz1tgLAxWNtZcpt2i6Sv5OhKKJqKd3vI5Lv?= =?utf-8?q?YYlrw+/yKV/rhmO+XUc5BTlY1d57LcUDT9KZ3mIYFKZN+95vz7+79ylCrVkvVfeC3?= =?utf-8?q?8N+Kb5QRplsIcX0INJ8gNhg/Fu0CBYP03CPGfyvmduQOMP5103kKdRfnMxbppB5mt?= =?utf-8?q?tCLmQ4bYQkmkWvjp/EaBekNp2wNktV1j6cZ0gvl2U4MSeqte4CoSrBJcFBjf7fsYO?= =?utf-8?q?lE2IfO+z6AUx?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: f7580939-a12b-43fc-4ad0-08dc6bd2e663 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2024 00:41:13.3222 (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: K97XeFzAbgl18NZ6cn6eE1ibx4dlaLn3rfIKMM9//ajxpzvjYsyFoNXdhLvlkfdExgO1kXZAllDVAWuNd4M9WA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7726 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240503_174119_341402_D918D6A3 X-CRM114-Status: GOOD ( 13.22 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Jacky Bai Previously we assumed that the root clock slice is enabled by default when kernel boot up. But the bootloader may disable the clocks before jump into kernel. The gate ops should be registered rather than NULL to make sure the disabled clock can be enabled when kernel boot up. Refine the code to skip disable the clock if mcore booted. Fixes: a740d7350ff7 ("clk: imx: imx93: add mcore_booted module paratemter") Signed-off-by: Jacky Bai Reviewed-by: Peng Fan Tested-by: Chancel Liu Signed-off-by: Peng Fan --- drivers/clk/imx/clk-composite-93.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/drivers/clk/imx/clk-composite-93.c b/drivers/clk/imx/clk-composite-93.c index 81164bdcd6cc..6c6c5a30f328 100644 --- a/drivers/clk/imx/clk-composite-93.c +++ b/drivers/clk/imx/clk-composite-93.c @@ -76,6 +76,13 @@ static int imx93_clk_composite_gate_enable(struct clk_hw *hw) static void imx93_clk_composite_gate_disable(struct clk_hw *hw) { + /* + * Skip disable the root clock gate if mcore enabled. + * The root clock may be used by the mcore. + */ + if (mcore_booted) + return; + imx93_clk_composite_gate_endisable(hw, 0); } @@ -222,7 +229,7 @@ struct clk_hw *imx93_clk_composite_flags(const char *name, const char * const *p hw = clk_hw_register_composite(NULL, name, parent_names, num_parents, mux_hw, &clk_mux_ro_ops, div_hw, &clk_divider_ro_ops, NULL, NULL, flags); - } else if (!mcore_booted) { + } else { gate = kzalloc(sizeof(*gate), GFP_KERNEL); if (!gate) goto fail; @@ -238,12 +245,6 @@ struct clk_hw *imx93_clk_composite_flags(const char *name, const char * const *p &imx93_clk_composite_divider_ops, gate_hw, &imx93_clk_composite_gate_ops, flags | CLK_SET_RATE_NO_REPARENT); - } else { - hw = clk_hw_register_composite(NULL, name, parent_names, num_parents, - mux_hw, &imx93_clk_composite_mux_ops, div_hw, - &imx93_clk_composite_divider_ops, NULL, - &imx93_clk_composite_gate_ops, - flags | CLK_SET_RATE_NO_REPARENT); } if (IS_ERR(hw))