Received: by 2002:a05:6358:16cc:b0:ea:6187:17c9 with SMTP id r12csp8147125rwl; Fri, 30 Dec 2022 23:59:36 -0800 (PST) X-Google-Smtp-Source: AMrXdXu+WyxXxWGyr6wd5utpkvp8QJWVx1bde5h2S5f3zLZXxkgQU5BeK5iIulPAHCSB4eG1MDD5 X-Received: by 2002:a17:902:f78e:b0:186:a43b:a5 with SMTP id q14-20020a170902f78e00b00186a43b00a5mr40170452pln.13.1672473576706; Fri, 30 Dec 2022 23:59:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672473576; cv=none; d=google.com; s=arc-20160816; b=eyt/8xA51GYurV5rwmZCLS/bALsSakiq7eFgrONGlMSsabDkSjmMGpnM+iLCAH2t3L 57OE9m+NRX+1VWJPMzRUHa5CqGtNz1RhghmJ8sUM7EHUF2aLGm7FHH+4Snf6H0JyzrzW 93sBZOK9p+hRbP+Oj5+MCB4yNvjMvYy8JONFGvIyw8irJXdjwf6/YwtZ1ABbNq75pegT jAxeCSQ63F2jGxVbGDHotfBs3IQIF1DuOqD2AqZpFvemMbyETEJH0DuzOoNGUgjwDJV6 nTTuyyW37cx2XWpIuzM49kWy+bmOhZ4ZKYmq2cXu+Y123sMhGMsr0T+uy0kgItwbbikR SXzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=RZ8t1qrjz/XAwU8aO0emJ4kWsGqXmaiDhZKx5c4GJkA=; b=Ty5fWG9iXCtib/zSBBpABnk7uEuxRNwBSDhkcGeCObmnAfM2HubkjS0HTYLHX6t3tT gsSSwgQM2qeElc+LU6xAGwQ0L4IowSK57pLzNEdTMASCOe1zV2BayOsjwu1Y8sQTeqpr osu0gHr74HE838Yh6Ev/Hd//nW3cyQMqTx+GyTIUCzPx7npLaiAKJ0V4xcm0uO6tGury fdPZ2mLeZ//R5KxdRTxbhA2iu/lVOjdHTPFxG+IMgg+/yAsOcILpuCvJUaGX9DvHEYC5 67YcWY6WGITuQ5ohx2sxztnrY7n/XWpVt0u1tv2VVsa5S14cSLYT7ntLT7E4Od5/TauR 9bJQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f5-20020a170902860500b001928b2cb4f3si8068867plo.352.2022.12.30.23.59.28; Fri, 30 Dec 2022 23:59:36 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235391AbiLaH6C (ORCPT + 62 others); Sat, 31 Dec 2022 02:58:02 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43440 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231673AbiLaH5f (ORCPT ); Sat, 31 Dec 2022 02:57:35 -0500 Received: from smtp.smtpout.orange.fr (smtp-29.smtpout.orange.fr [80.12.242.29]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7B0B3BE17 for ; Fri, 30 Dec 2022 23:57:32 -0800 (PST) Received: from pop-os.home ([86.243.100.34]) by smtp.orange.fr with ESMTPA id BWk7pnAnoSTJGBWk7p3vlM; Sat, 31 Dec 2022 08:57:30 +0100 X-ME-Helo: pop-os.home X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Sat, 31 Dec 2022 08:57:30 +0100 X-ME-IP: 86.243.100.34 From: Christophe JAILLET To: Hector Martin , Sven Peter , Alyssa Rosenzweig , Wim Van Sebroeck , Guenter Roeck Cc: linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Christophe JAILLET , asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-watchdog@vger.kernel.org Subject: [PATCH] watchdog: apple: Use devm_clk_get_enabled() helper Date: Sat, 31 Dec 2022 08:57:22 +0100 Message-Id: <6f312af6160d1e10b616c9adbd1fd8f822db964d.1672473415.git.christophe.jaillet@wanadoo.fr> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The devm_clk_get_enabled() helper: - calls devm_clk_get() - calls clk_prepare_enable() and registers what is needed in order to call clk_disable_unprepare() when needed, as a managed resource. This simplifies the code and avoids the need of a dedicated function used with devm_add_action_or_reset(). Signed-off-by: Christophe JAILLET --- drivers/watchdog/apple_wdt.c | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/drivers/watchdog/apple_wdt.c b/drivers/watchdog/apple_wdt.c index 16aca21f13d6..eddeb0fede89 100644 --- a/drivers/watchdog/apple_wdt.c +++ b/drivers/watchdog/apple_wdt.c @@ -136,11 +136,6 @@ static int apple_wdt_restart(struct watchdog_device *wdd, unsigned long mode, return 0; } -static void apple_wdt_clk_disable_unprepare(void *data) -{ - clk_disable_unprepare(data); -} - static struct watchdog_ops apple_wdt_ops = { .owner = THIS_MODULE, .start = apple_wdt_start, @@ -162,7 +157,6 @@ static int apple_wdt_probe(struct platform_device *pdev) struct apple_wdt *wdt; struct clk *clk; u32 wdt_ctrl; - int ret; wdt = devm_kzalloc(dev, sizeof(*wdt), GFP_KERNEL); if (!wdt) @@ -172,19 +166,9 @@ static int apple_wdt_probe(struct platform_device *pdev) if (IS_ERR(wdt->regs)) return PTR_ERR(wdt->regs); - clk = devm_clk_get(dev, NULL); + clk = devm_clk_get_enabled(dev, NULL); if (IS_ERR(clk)) return PTR_ERR(clk); - - ret = clk_prepare_enable(clk); - if (ret) - return ret; - - ret = devm_add_action_or_reset(dev, apple_wdt_clk_disable_unprepare, - clk); - if (ret) - return ret; - wdt->clk_rate = clk_get_rate(clk); if (!wdt->clk_rate) return -EINVAL; -- 2.34.1