From patchwork Tue Jul 28 09:03:18 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 11688683 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6AA4F14B7 for ; Tue, 28 Jul 2020 09:09:07 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 42AB220829 for ; Tue, 28 Jul 2020 09:09:07 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="k0cZngUu"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=nxp.com header.i=@nxp.com header.b="peeWj8Lr" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 42AB220829 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=qHlL18h6ozOH8oUGgrEbmNRIsi/+WdikDaTaksmqkTA=; b=k0cZngUuek+dN51UCI8KmtckJa 1nEDths5bUhW5xYi9FoMrSwFjgEyyeFDENFNUZr3+DGAX+4WN0JVbsHD3R0vYrQrtzhZpB+HQcmcT zK0QnzDnwu4Ta0/WzRduoTwG7VpBqFewVqHF9dAYPSCV/gq6DdnT3xQ9QaD5gk/86kCDXUR0xclNV czVyjOlJEL9lMUO+U4xL9MFpIfRzHjlSWJVAvEf7YHKNohYlRpHwI4A1Wqvran+IzlXpBYYtAp8Gl X5gfjIlLjX/746/HN+AN4zM4wt83mTCZzLpbESRNIfBL/MqzqAaiJ8Kt/ZzH4UpuuCZL1nOzlAY8g vrxxfqBg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k0LaL-0004dU-UR; Tue, 28 Jul 2020 09:07:45 +0000 Received: from mail-eopbgr80050.outbound.protection.outlook.com ([40.107.8.50] helo=EUR04-VI1-obe.outbound.protection.outlook.com) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k0LaK-0004ck-1h for linux-arm-kernel@lists.infradead.org; Tue, 28 Jul 2020 09:07:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HsCGC6uOFH2+kJmJKy5E7MVC9QhgaPhHmhwZwXIBhTMN53KA7VgnjMyDeD4GA1h11D6ZlqAhR1YeecxQtg0J4ZOu9pSfWYWwzSEFMmXF90XVGEljcRObBRWgt98LoV0Lx4QdReic6AFXxC3/rxqPAKoS7MjPw8fA7nhTcS5gZmrS1o6BvpTPIvmGvWKq5aWc/Zgon5ZzBlsMAcvCkYViF1f/W97vXF2PVpA7ATktKZ7ralml6OD8mFaTFo0lAwuFTUCfr/1VE9FcEPxTvXNZ0XILMnj1knfIpjI9ZI3g3N7qGydXh/0UnfwGP+/9sERdMtO8KqKg5+auLsMsBQFZew== 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-SenderADCheck; bh=SXhqZnnpVSFLJo6rcmxZJV22XmGvRN08duHIrJwYT+o=; b=DL6WvfE2YAdVJLLeAWw8g3eshpS5w3Yz4usm6uZTdx2UhFIJnqRtB6rG1oNMdeWFB8yRwiBpcWOLpiT/KFSd6aQZWzzBY8di9uWeCy+EH9n6R3B4Vry6WnI6I6XBfiw1+ZnhYjSfzS0k0wIjY/amc0b5fXOGYZFeeXiRTy3Qxo5AvgHnnzr63HsQki799bTOzr8DFCJBgsY+ckF/nqtg8oIlVHp61McuWo1nshDCsbgIWx/Ri5FLawXI2bleH8HL4YW4mtvqbJEaxuUoHeZAF/gy+PfgWj3mA78bB+sS0cGcGEY3ntdJWZcfTt6jzDQU9NQqMUeLRZAV9PBbXzdvaQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SXhqZnnpVSFLJo6rcmxZJV22XmGvRN08duHIrJwYT+o=; b=peeWj8Lrdpsu57ea/ChRs9FAncEo5DLGmhr2ZJNL0fLbS4RPQNoOvrSXJ5o0auyN8kGZzlyya4GyzWZVDjg9eiNLcbZV+XRz9NmYVt1QFGXakfIQre5SujtTlgf2w056sShJm0m/cL7mSmD5aCOwEdnaeEuW/4biO88ZQL+PkO4= Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=nxp.com; Received: from DB6PR0402MB2760.eurprd04.prod.outlook.com (2603:10a6:4:a1::14) by DB7PR04MB5466.eurprd04.prod.outlook.com (2603:10a6:10:8a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.24; Tue, 28 Jul 2020 09:07:39 +0000 Received: from DB6PR0402MB2760.eurprd04.prod.outlook.com ([fe80::2d36:b569:17c:7701]) by DB6PR0402MB2760.eurprd04.prod.outlook.com ([fe80::2d36:b569:17c:7701%4]) with mapi id 15.20.3216.033; Tue, 28 Jul 2020 09:07:39 +0000 From: peng.fan@nxp.com To: sboyd@kernel.org, shawnguo@kernel.org, s.hauer@pengutronix.de, festevam@gmail.com, abel.vesa@nxp.com Subject: [PATCH v2 1/2] clk: imx: imx8m: avoid memory leak Date: Tue, 28 Jul 2020 17:03:18 +0800 Message-Id: <1595926999-14934-1-git-send-email-peng.fan@nxp.com> X-Mailer: git-send-email 2.7.4 X-ClientProxiedBy: SG2PR06CA0174.apcprd06.prod.outlook.com (2603:1096:1:1e::28) To DB6PR0402MB2760.eurprd04.prod.outlook.com (2603:10a6:4:a1::14) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (119.31.174.67) by SG2PR06CA0174.apcprd06.prod.outlook.com (2603:1096:1:1e::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.20.3216.22 via Frontend Transport; Tue, 28 Jul 2020 09:07:35 +0000 X-Mailer: git-send-email 2.7.4 X-Originating-IP: [119.31.174.67] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 29c925b3-ebb2-4423-243e-08d832d5ad99 X-MS-TrafficTypeDiagnostic: DB7PR04MB5466: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:113; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ayKgpjYNsu9ahjgAvf8WcR1a0b+29LZBDyBR4BSzPaKNW8g7nZopGhyV5Dj80bSN6Ws6nXCuk8OFui3m3HmoZLeYpW++9Fe3Ebkti0sEwWWbvRMgxU/kpYtCXupFF21FMmfWdNTo6pSgtXZljPcMcfJ8wwcLBKg/0X0uYluqp2WkBZNL6lnp2qFuJMHOmONVHoi75ZVLirwKodwIBr+n+2CSiL95EXeVq8+7MEdji0d9NfyvJOeyQGPnW0UuWPBspjDx0kRZumcDagr4yMAE3uNlzQg2xcwiFtt21ZC6zZq7bmthqjOyOCKDS1+kaw1mLOrMKg5fP5zsnH3bGB8+7pSaZw/mTsNd5+xO6joCbb4LG61f8qb1gyWkfxdhTca8Chxcbj8PwVBHEjyvkNoFcafWtR2mOn2FJ31MJNZ2234= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB6PR0402MB2760.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(376002)(136003)(396003)(346002)(39860400002)(366004)(8936002)(6666004)(478600001)(316002)(2906002)(6486002)(8676002)(52116002)(36756003)(4326008)(26005)(9686003)(69590400007)(86362001)(83380400001)(6506007)(5660300002)(6512007)(66556008)(66476007)(66946007)(16526019)(186003)(2616005)(956004)(32563001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: 4Vn4OkK+WV7Xm3Xf/T/pOQocl3Ndm6/F2MGSk6wKecuwDHDSm/g+yt4J7SEtBE/eMXjcENfVn6fTE01PLQdllYVbOXvKQE0mejTPULFf9QSO8ThbHsjC2+xqyY4mhWEKlk5Ap/iCPwhjQxKs0qwOoB0/W0NDUBq3P0naC+aOTim65JUhH5JWVfS1KqVZvLawAznJL9iU3tmDX3BWNxYb+tXYmD76PJv+upcNfbqtR+a1zD+LAxC40SVdvwDNDdZDzJRG68RY07vfUKNT5W+WHpIKIC5TmdAFOoZIVpMKuFHoAoNju3c4EhGsj+0IOSHPhem8xzlow2C5z7XOTEBwCCC80EACegZMvj2ZdMSsDhChNP0WFhuOZzgatpi7yJv3fmjyr2EL5hln/WQ3UyDQ/Eo4hwrcYFHgBURT7J6BSVLtvcH+VbSAtinW6VLLqrIv21y8NFOAAOzLum4mQNg+9/9pNY0o9O1exZrIInEnot3/NKIrhjyHA51FLqkXyBtb X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 29c925b3-ebb2-4423-243e-08d832d5ad99 X-MS-Exchange-CrossTenant-AuthSource: DB6PR0402MB2760.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jul 2020 09:07:39.6591 (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: LylAU2Woy60P57DTQTrvX2FY3wppM17L6JUUoKV9V1LNbRq8WV2G0qzYswrYV5UspUCKZ8GLErA9icjQVfcltA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB5466 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200728_050744_113939_FBD1B400 X-CRM114-Status: GOOD ( 14.90 ) X-Spam-Score: -0.9 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [40.107.8.50 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [40.107.8.50 listed in wl.mailspike.net] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.0 MSGID_FROM_MTA_HEADER Message-Id was added by a relay X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peng Fan , Anson.Huang@nxp.com, linux-kernel@vger.kernel.org, linux-imx@nxp.com, kernel@pengutronix.de, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org From: Peng Fan Use devm_kzalloc() to avoid memory leak when probe fail. Signed-off-by: Peng Fan Reviewed-by: Stephen Boyd --- V2: Add () to functions in commit log drivers/clk/imx/clk-imx8mm.c | 3 +-- drivers/clk/imx/clk-imx8mn.c | 15 +++++---------- drivers/clk/imx/clk-imx8mp.c | 2 +- drivers/clk/imx/clk-imx8mq.c | 3 +-- 4 files changed, 8 insertions(+), 15 deletions(-) diff --git a/drivers/clk/imx/clk-imx8mm.c b/drivers/clk/imx/clk-imx8mm.c index b793264c21c6..b43dbe305e7a 100644 --- a/drivers/clk/imx/clk-imx8mm.c +++ b/drivers/clk/imx/clk-imx8mm.c @@ -306,8 +306,7 @@ static int imx8mm_clocks_probe(struct platform_device *pdev) void __iomem *base; int ret, i; - clk_hw_data = kzalloc(struct_size(clk_hw_data, hws, - IMX8MM_CLK_END), GFP_KERNEL); + clk_hw_data = devm_kzalloc(dev, struct_size(clk_hw_data, hws, IMX8MM_CLK_END), GFP_KERNEL); if (WARN_ON(!clk_hw_data)) return -ENOMEM; diff --git a/drivers/clk/imx/clk-imx8mn.c b/drivers/clk/imx/clk-imx8mn.c index 213cc37b3173..4189f7f6980e 100644 --- a/drivers/clk/imx/clk-imx8mn.c +++ b/drivers/clk/imx/clk-imx8mn.c @@ -299,8 +299,7 @@ static int imx8mn_clocks_probe(struct platform_device *pdev) void __iomem *base; int ret, i; - clk_hw_data = kzalloc(struct_size(clk_hw_data, hws, - IMX8MN_CLK_END), GFP_KERNEL); + clk_hw_data = devm_kzalloc(dev, struct_size(clk_hw_data, hws, IMX8MN_CLK_END), GFP_KERNEL); if (WARN_ON(!clk_hw_data)) return -ENOMEM; @@ -318,10 +317,8 @@ static int imx8mn_clocks_probe(struct platform_device *pdev) np = of_find_compatible_node(NULL, NULL, "fsl,imx8mn-anatop"); base = of_iomap(np, 0); of_node_put(np); - if (WARN_ON(!base)) { - ret = -ENOMEM; - goto unregister_hws; - } + if (WARN_ON(!base)) + return -ENOMEM; hws[IMX8MN_AUDIO_PLL1_REF_SEL] = imx_clk_hw_mux("audio_pll1_ref_sel", base + 0x0, 0, 2, pll_ref_sels, ARRAY_SIZE(pll_ref_sels)); hws[IMX8MN_AUDIO_PLL2_REF_SEL] = imx_clk_hw_mux("audio_pll2_ref_sel", base + 0x14, 0, 2, pll_ref_sels, ARRAY_SIZE(pll_ref_sels)); @@ -407,10 +404,8 @@ static int imx8mn_clocks_probe(struct platform_device *pdev) np = dev->of_node; base = devm_platform_ioremap_resource(pdev, 0); - if (WARN_ON(IS_ERR(base))) { - ret = PTR_ERR(base); - goto unregister_hws; - } + if (WARN_ON(IS_ERR(base))) + return PTR_ERR(base); /* CORE */ hws[IMX8MN_CLK_A53_DIV] = imx8m_clk_hw_composite_core("arm_a53_div", imx8mn_a53_sels, base + 0x8000); diff --git a/drivers/clk/imx/clk-imx8mp.c b/drivers/clk/imx/clk-imx8mp.c index ca747712400f..f6ec7b2b8038 100644 --- a/drivers/clk/imx/clk-imx8mp.c +++ b/drivers/clk/imx/clk-imx8mp.c @@ -447,7 +447,7 @@ static int imx8mp_clocks_probe(struct platform_device *pdev) return PTR_ERR(ccm_base); } - clk_hw_data = kzalloc(struct_size(clk_hw_data, hws, IMX8MP_CLK_END), GFP_KERNEL); + clk_hw_data = devm_kzalloc(dev, struct_size(clk_hw_data, hws, IMX8MP_CLK_END), GFP_KERNEL); if (WARN_ON(!clk_hw_data)) { iounmap(anatop_base); return -ENOMEM; diff --git a/drivers/clk/imx/clk-imx8mq.c b/drivers/clk/imx/clk-imx8mq.c index a64aace213c2..0106a33c24a4 100644 --- a/drivers/clk/imx/clk-imx8mq.c +++ b/drivers/clk/imx/clk-imx8mq.c @@ -288,8 +288,7 @@ static int imx8mq_clocks_probe(struct platform_device *pdev) void __iomem *base; int err, i; - clk_hw_data = kzalloc(struct_size(clk_hw_data, hws, - IMX8MQ_CLK_END), GFP_KERNEL); + clk_hw_data = devm_kzalloc(dev, struct_size(clk_hw_data, hws, IMX8MQ_CLK_END), GFP_KERNEL); if (WARN_ON(!clk_hw_data)) return -ENOMEM; From patchwork Tue Jul 28 09:03:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 11688685 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3E0C46C1 for ; Tue, 28 Jul 2020 09:09:09 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 09DBB20759 for ; Tue, 28 Jul 2020 09:09:09 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="am0flwnn"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=nxp.com header.i=@nxp.com header.b="soVI1NoR" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 09DBB20759 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=6gZqB8fWULMGfVwNqaB9UPYOQM5q/dorbajseguevdQ=; b=am0flwnn7hdcJ2XcRTC92CqUr O3dzBLz27LRXTNrPgC4AQVf75xUhq4fZ+ynsyIcudIL8KdbhUuT9jkx7OXQYKfykHh3nBtMbjTpqz 70up1feJ/ixdMlUrfdSOG3zaptLD4ljrwWpzyJH4JjYN3YjkF0RfK5UeLFP+dtL0vx1x/OtryG9dg cFPo5edBWrPo6H0uP9a0nD7igGkBIRczMcihwmJJlPkcMMR4l02aQgosUd9MsxDZADNr2mAFyDMqI XAH9W3OMFtdp/+wSC3FQgixZ3omiRirEZlr0SneOYSFM20cI1j95eOcAjzIib+UGINdNwO93EZCkj Klz96Hzpg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k0LaT-0004f1-AK; Tue, 28 Jul 2020 09:07:53 +0000 Received: from mail-eopbgr80044.outbound.protection.outlook.com ([40.107.8.44] helo=EUR04-VI1-obe.outbound.protection.outlook.com) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k0LaM-0004dR-RF for linux-arm-kernel@lists.infradead.org; Tue, 28 Jul 2020 09:07:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ij8HeKCjv1XegyOHGi+5Alj7IlRUt1M3KBOMrWj7KDTDJff9AGJpbU6Gg7ToB5qKU3jMWGDGi9JtUPpKcdcROIZ0bFRMP4hM96TCBC8+1So6h5P7IUR98mToPR642lWiDja8gRn9Zm7WOEVdl0vzjD2PmElbAkymW+lLahrfB6ZxWR9xiyR2UKiTH6vA6hmRDc+uBx5MBXL5cwzVVHaK6Mr/QyVptN+C2KM2+kZeHAeU792ZFRBG33b26d4oEU9DAQ/7lL8O1dG0fcMttMrGzeqzgg/Qcsn7GmtAZPrtrs6bxIHPpmfmE3diUCUklU7mGP85QRFjZ6IDJC5fKcBJBw== 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-SenderADCheck; bh=2pBQfuFfMMUxAbNqrQ4N53MfGP2GBD766xtZz7WkBD0=; b=ERAwdYbn9sWWXMKAHocLqgG79+D3n5IdV62wYJzHKPtVQOfDfuvR7iY1zXTGz8Lh2NH96hrvczrZ4NDJvGJ/p/QSjiuhTDjr1WmkJkSDRHpiyTFg4dJWdFkFkqQf4cDecjcoFVlD+wEF8Lg+K00KaDk2cgCxTetn7VGKOwBqA7JF8mZl4bn+C4DQ7tpgi41EQiZnKKObUDgDLWuk5WM+2gaXjk1YRVB+9V6/C7M7y9gKck2DeHJUx5QAmwXVIG3oNevY86DqKwWWoF+UHsGUq1NBR3VEBh/L1mDdBbUmSuzJgT21ZbMQu9SySdZtJUHx0223o1cZWXLJwIJQn7XANQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2pBQfuFfMMUxAbNqrQ4N53MfGP2GBD766xtZz7WkBD0=; b=soVI1NoR9A7Io4tF7pBWzz0TTrC/EARykXwPEqJiXbSK39401iaThTBKGRHvPHpEruksE1EJvXaXHyI0eAXQ34bK78pGGYX9cCfkRcJsEe82N9JfF/9/vHtJRz7LE5VIM2uqCxSOJWs3N7zEnx5XYW+LYztDDTxkSBaz1ke5Gr0= Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=nxp.com; Received: from DB6PR0402MB2760.eurprd04.prod.outlook.com (2603:10a6:4:a1::14) by DB7PR04MB5466.eurprd04.prod.outlook.com (2603:10a6:10:8a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.24; Tue, 28 Jul 2020 09:07:43 +0000 Received: from DB6PR0402MB2760.eurprd04.prod.outlook.com ([fe80::2d36:b569:17c:7701]) by DB6PR0402MB2760.eurprd04.prod.outlook.com ([fe80::2d36:b569:17c:7701%4]) with mapi id 15.20.3216.033; Tue, 28 Jul 2020 09:07:43 +0000 From: peng.fan@nxp.com To: sboyd@kernel.org, shawnguo@kernel.org, s.hauer@pengutronix.de, festevam@gmail.com, abel.vesa@nxp.com Subject: [PATCH v2 2/2] clk: imx: imx8m: use devm_of_clk_add_hw_provider() Date: Tue, 28 Jul 2020 17:03:19 +0800 Message-Id: <1595926999-14934-2-git-send-email-peng.fan@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1595926999-14934-1-git-send-email-peng.fan@nxp.com> References: <1595926999-14934-1-git-send-email-peng.fan@nxp.com> X-ClientProxiedBy: SG2PR06CA0174.apcprd06.prod.outlook.com (2603:1096:1:1e::28) To DB6PR0402MB2760.eurprd04.prod.outlook.com (2603:10a6:4:a1::14) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (119.31.174.67) by SG2PR06CA0174.apcprd06.prod.outlook.com (2603:1096:1:1e::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.20.3216.22 via Frontend Transport; Tue, 28 Jul 2020 09:07:40 +0000 X-Mailer: git-send-email 2.7.4 X-Originating-IP: [119.31.174.67] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: f5756b5e-5f07-4f9a-80fd-08d832d5afeb X-MS-TrafficTypeDiagnostic: DB7PR04MB5466: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:176; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gicjUBPbjmxir+ML+FYwqWF+ltT2AnUzsjlDJthuDq59sURRlWkSorcE6Ku+xTqSsj6OMgXYCDAf7X8sCZ8lzhBg4nd4PfAkggavBc6shDUTYr2US7JBuFExWWSSjOLgrz78CS+i5Da6ps3+kjinyHDqn8CoIbG64FBdgaPobrRbL9BSrvzo8w0znmy3+YykgPQAB0RgfFmqBpk6ZVFs6C6yn53HL6sZZxIqrEInU+GjHv3vGYDIUMkHdPhLNWxHNq3xy98rLcBqNgZ9ZQd7MNHtDO7jKgzp1K1HnzfyD04bz8qyl9eDbpsl21PoG6sV2Jr6qDZRO81BwrM/XVIQ0LYSh6MFePTQZiBqcor0kJKVU1HF8CtTLk/pzlHzKe4VZzUcEUy31qidTtWHmR2PAb6o61g/15gT/nxS6wSsQ4w= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB6PR0402MB2760.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(376002)(136003)(396003)(346002)(39860400002)(366004)(8936002)(6666004)(478600001)(316002)(2906002)(6486002)(8676002)(52116002)(36756003)(4326008)(26005)(9686003)(69590400007)(86362001)(83380400001)(6506007)(5660300002)(6512007)(66556008)(66476007)(66946007)(16526019)(186003)(2616005)(956004)(32563001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: KZnTW4rrejXG4RdaANcGyoGnetzx2Nu/hlKpt4JALVmTRDHGww0U25Secm8rjtmoqaE7Uqgp+HPzwwpTyni/Aba+yMIUyxN1skKBfQYfP5zu83ehLMHIDygQKjhQF9uUcpvdv1vGvPYFd/O8e01xPcWRo29MSJsyBDDaIpySmP2ltDmGj6ihOTqFd54N0MiX2kPSpOtQu6RZxndHkRv0bRRXRVmpo0I8fV77Pyw3bffxcwSO4W7bXKjSdsIALR3Gin2BLzQWANd4wl5PgIRZLPSw77WsAJkOLJu8OVRw8xIyzYMu+KS0/59zO92T5wmKSowhofYN75HbkPO/F6j8lDo+4D6Gt2T5+pyk78jek0F1M81Sx9Beg4BtVyHk62pqNeS4xsY1g7p29PhWLL0BoX+E0lyg5AbvgxW5M+ZY4GIsL5siJWyl6C7BYoURhq+ZBLd43kJiftIdf5Z5OZEq54LvWQiVqVyaUGRbyouhVykDejjdkOE7JxY2eGq5t9YC X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: f5756b5e-5f07-4f9a-80fd-08d832d5afeb X-MS-Exchange-CrossTenant-AuthSource: DB6PR0402MB2760.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jul 2020 09:07:43.5693 (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: XM14TY01zaKUsOT0fnDA4/mrj5dixVmbWpmr8loObtSUuUyqJRCJzxLuFHlfm7wQxZZg7cBHLGtHiAC6M7bZXA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB5466 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200728_050747_005445_0007A3C5 X-CRM114-Status: GOOD ( 16.80 ) X-Spam-Score: -0.9 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [40.107.8.44 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [40.107.8.44 listed in wl.mailspike.net] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.0 MSGID_FROM_MTA_HEADER Message-Id was added by a relay X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peng Fan , Anson.Huang@nxp.com, linux-kernel@vger.kernel.org, linux-imx@nxp.com, kernel@pengutronix.de, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org From: Peng Fan Use devm_of_clk_add_hw_provider() to simplify code. To i.MX8MP, also add err handling. Signed-off-by: Peng Fan Reviewed-by: Stephen Boyd --- V2: Add () to functions in commit log drivers/clk/imx/clk-imx8mm.c | 9 ++------- drivers/clk/imx/clk-imx8mn.c | 9 ++------- drivers/clk/imx/clk-imx8mp.c | 8 ++++++-- drivers/clk/imx/clk-imx8mq.c | 9 ++------- 4 files changed, 12 insertions(+), 23 deletions(-) diff --git a/drivers/clk/imx/clk-imx8mm.c b/drivers/clk/imx/clk-imx8mm.c index b43dbe305e7a..fc2c1a0c9ff2 100644 --- a/drivers/clk/imx/clk-imx8mm.c +++ b/drivers/clk/imx/clk-imx8mm.c @@ -615,10 +615,10 @@ static int imx8mm_clocks_probe(struct platform_device *pdev) imx_check_clk_hws(hws, IMX8MM_CLK_END); - ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data); + ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, clk_hw_data); if (ret < 0) { dev_err(dev, "failed to register clks for i.MX8MM\n"); - goto unregister_hws; + return ret; } for (i = 0; i < ARRAY_SIZE(uart_clk_ids); i++) { @@ -630,11 +630,6 @@ static int imx8mm_clocks_probe(struct platform_device *pdev) imx_register_uart_clocks(uart_hws); return 0; - -unregister_hws: - imx_unregister_hw_clocks(hws, IMX8MM_CLK_END); - - return ret; } static const struct of_device_id imx8mm_clk_of_match[] = { diff --git a/drivers/clk/imx/clk-imx8mn.c b/drivers/clk/imx/clk-imx8mn.c index 4189f7f6980e..3620a419eb83 100644 --- a/drivers/clk/imx/clk-imx8mn.c +++ b/drivers/clk/imx/clk-imx8mn.c @@ -562,10 +562,10 @@ static int imx8mn_clocks_probe(struct platform_device *pdev) imx_check_clk_hws(hws, IMX8MN_CLK_END); - ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data); + ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, clk_hw_data); if (ret < 0) { dev_err(dev, "failed to register hws for i.MX8MN\n"); - goto unregister_hws; + return ret; } for (i = 0; i < ARRAY_SIZE(uart_clk_ids); i++) { @@ -577,11 +577,6 @@ static int imx8mn_clocks_probe(struct platform_device *pdev) imx_register_uart_clocks(uart_hws); return 0; - -unregister_hws: - imx_unregister_hw_clocks(hws, IMX8MN_CLK_END); - - return ret; } static const struct of_device_id imx8mn_clk_of_match[] = { diff --git a/drivers/clk/imx/clk-imx8mp.c b/drivers/clk/imx/clk-imx8mp.c index f6ec7b2b8038..43117f387460 100644 --- a/drivers/clk/imx/clk-imx8mp.c +++ b/drivers/clk/imx/clk-imx8mp.c @@ -432,7 +432,7 @@ static int imx8mp_clocks_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct device_node *np = dev->of_node; void __iomem *anatop_base, *ccm_base; - int i; + int ret, i; np = of_find_compatible_node(NULL, NULL, "fsl,imx8mp-anatop"); anatop_base = of_iomap(np, 0); @@ -741,7 +741,11 @@ static int imx8mp_clocks_probe(struct platform_device *pdev) imx_check_clk_hws(hws, IMX8MP_CLK_END); - of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data); + ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, clk_hw_data); + if (ret < 0) { + dev_err(dev, "failed to register hws for i.MX8MN\n"); + return ret; + } for (i = 0; i < ARRAY_SIZE(uart_clk_ids); i++) { int index = uart_clk_ids[i]; diff --git a/drivers/clk/imx/clk-imx8mq.c b/drivers/clk/imx/clk-imx8mq.c index 0106a33c24a4..7c0a84cc9501 100644 --- a/drivers/clk/imx/clk-imx8mq.c +++ b/drivers/clk/imx/clk-imx8mq.c @@ -600,10 +600,10 @@ static int imx8mq_clocks_probe(struct platform_device *pdev) imx_check_clk_hws(hws, IMX8MQ_CLK_END); - err = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data); + err = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, clk_hw_data); if (err < 0) { dev_err(dev, "failed to register hws for i.MX8MQ\n"); - goto unregister_hws; + return err; } for (i = 0; i < ARRAY_SIZE(uart_clk_ids); i++) { @@ -615,11 +615,6 @@ static int imx8mq_clocks_probe(struct platform_device *pdev) imx_register_uart_clocks(uart_hws); return 0; - -unregister_hws: - imx_unregister_hw_clocks(hws, IMX8MQ_CLK_END); - - return err; } static const struct of_device_id imx8mq_clk_of_match[] = {