From nobody Fri Jan 2 19:07:28 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 B258AE95A9D for ; Mon, 9 Oct 2023 09:23:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345960AbjJIJXB (ORCPT ); Mon, 9 Oct 2023 05:23:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58228 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345796AbjJIJWs (ORCPT ); Mon, 9 Oct 2023 05:22:48 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 70FD4A3 for ; Mon, 9 Oct 2023 02:22:41 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTD-0006sV-83; Mon, 09 Oct 2023 11:22:35 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTC-000NWN-5W; Mon, 09 Oct 2023 11:22:34 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTB-00C4op-Sc; Mon, 09 Oct 2023 11:22:33 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Maxime Coquelin , Alexandre Torgue , linux-gpio@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 01/20] pinctrl: stmfx: Improve error message in .remove()'s error path Date: Mon, 9 Oct 2023 10:38:37 +0200 Message-Id: <20231009083856.222030-2-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1448; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=oQvuwpLV6jEvG8nPX5IRlTZZ5eR2ugHk+8EMhpV4SKQ=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wAB8YUxAlLBbwC7CIKjUbWm11DxuAGLQFuF PnKvZq8Ol2JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8AAAKCRCPgPtYfRL+ TjJjCAC4Tdc4fTfh4VtpKisfvbBZZ0D+fqAmRlGB0zNqfrv706XALbviXa7gthDeHwPd4lv8wKr Ite+awd5fMyaGbl9XHLZ5gAHQ3JEjV6lPNk8v0CuXjFzEW82fkKMEJSL1Z+1aUG3IFE70SUBZDf 2Od7RaLozqLEEOO+6oerRQDP9UycvcJGkfXOwZ5ZZYOExGr51w3ex6RuIsYMEbniwO7//3JHVdP ZQpEEZvabqVPS+mx/fuF07qQlbpItj0UzV6FspmOKyC1ZVkXk+KMLjbrCzGEcYD5CzrbaKN3daX Yvrtl6ebPOFQICKlYIpv7t5owBQhbumI9X3ZqpTeaTE879qF X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The driver core has no handling for errors returned by the .remove() callback. The only action on error is a dev_warn() with generic error message that the returned value is returned. Replace it by a more specific and useful message. Then returning zero is the right thing to do, the only effect is to suppress the core's warning. This prepares the driver for the conversion to .remove_new(). Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-stmfx.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmf= x.c index 0974bbf57b54..d7ab82432a52 100644 --- a/drivers/pinctrl/pinctrl-stmfx.c +++ b/drivers/pinctrl/pinctrl-stmfx.c @@ -737,11 +737,17 @@ static int stmfx_pinctrl_probe(struct platform_device= *pdev) static int stmfx_pinctrl_remove(struct platform_device *pdev) { struct stmfx *stmfx =3D dev_get_drvdata(pdev->dev.parent); + int ret; =20 - return stmfx_function_disable(stmfx, - STMFX_FUNC_GPIO | - STMFX_FUNC_ALTGPIO_LOW | - STMFX_FUNC_ALTGPIO_HIGH); + ret =3D stmfx_function_disable(stmfx, + STMFX_FUNC_GPIO | + STMFX_FUNC_ALTGPIO_LOW | + STMFX_FUNC_ALTGPIO_HIGH); + if (ret) + dev_err(&pdev->dev, "Failed to disable pins (%pe)\n", + ERR_PTR(ret)); + + return 0; } =20 #ifdef CONFIG_PM_SLEEP --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 A2532E95A91 for ; Mon, 9 Oct 2023 09:23:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345971AbjJIJX3 (ORCPT ); Mon, 9 Oct 2023 05:23:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345860AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 82A00106 for ; Mon, 9 Oct 2023 02:22:45 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTC-0006sX-Q7; Mon, 09 Oct 2023 11:22:34 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTC-000NWQ-Cy; Mon, 09 Oct 2023 11:22:34 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTC-00C4ot-3k; Mon, 09 Oct 2023 11:22:34 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Tony Lindgren , Haojian Zhuang , linux-arm-kernel@lists.infradead.org, linux-omap@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 02/20] pinctrl: single: Drop if block with always false condition Date: Mon, 9 Oct 2023 10:38:38 +0200 Message-Id: <20231009083856.222030-3-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=844; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=YKE8P7L9V9D6eghladkosJamRCKd+b5UoH3TDoc6yRM=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wBrRbKaWaukJeLRndrn6pB3LKccfQJKwli0 16nUYkI9b6JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8AQAKCRCPgPtYfRL+ TtW7B/44yeQT6igw9tEP+D9fYA4PIKhJQgpUdOWoUs5fL0toneQALi3dmosp2c8vp33KXbG5Qgy 32gKGzf+3CTTwDt4cl8xQcZ70/Ohz/PcYkTUd7Gme7xu1aGLLK6+pkvaM3M52rKR34eRxypSYuy Ggkb4fFk0wsixK9fBpS3NiGHaMdNNUayaaHIBZJq86t8k95H9pAAQQwMds9td8bpVGZGGQuib89 TQUfrhk0wiNBGU4To6RwoELEpyMcGS5Pfa3TTeFMKp772k/RPGsfnCAUXWrc69WdEsJo+uASphm tAHS1lcCvheZbsA4qNTYqdhYXVk9XyCBDHT/GhiyL/tEioH4 X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org pcs_remove() is only called after pcs_probe() completed successfully. In this case platform_set_drvdata() was called with a non-NULL argument and so platform_get_drvdata() won't return NULL. Simplify by removing the if block with the always false condition. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-single.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-sin= gle.c index 461a7c02d4a3..f6c02c8b934d 100644 --- a/drivers/pinctrl/pinctrl-single.c +++ b/drivers/pinctrl/pinctrl-single.c @@ -1929,9 +1929,6 @@ static int pcs_remove(struct platform_device *pdev) { struct pcs_device *pcs =3D platform_get_drvdata(pdev); =20 - if (!pcs) - return 0; - pcs_free_resources(pcs); =20 return 0; --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 1269BE95A91 for ; Mon, 9 Oct 2023 09:24:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345839AbjJIJYE (ORCPT ); Mon, 9 Oct 2023 05:24:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58268 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345801AbjJIJWs (ORCPT ); Mon, 9 Oct 2023 05:22:48 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B551CC5 for ; Mon, 9 Oct 2023 02:22:42 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTD-0006sZ-By; Mon, 09 Oct 2023 11:22:35 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTC-000NWT-JS; Mon, 09 Oct 2023 11:22:34 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTC-00C4ox-AX; Mon, 09 Oct 2023 11:22:34 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Yangtao Li , Andy Shevchenko , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 03/20] pinctrl: ti: ti-iodelay: Drop if block with always false condition Date: Mon, 9 Oct 2023 10:38:39 +0200 Message-Id: <20231009083856.222030-4-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=917; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=ADcuWWwkM5/gkoFp6FtBWjwsKB9USL1JlIZt0PCZ89o=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wC2UY8AHx4VUIV+FUuHGT44H9qCxr8Sw/dU 8c6tnLh2GmJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8AgAKCRCPgPtYfRL+ TurFB/4kLIvktU36dHpqh45SEy0RA6rK+k31xiIn3waWC0qcGft0HgOWYcEVNw2TagvASbL80vz 4E0xrh2Op0jCl7twlM2P1nZvBV+9w26vr9EaVmSsjmfFEp5Grbde0adN03TW7CRCatfAmZsHDEm USTx3+8PNV537PLm8qrQ8bDHlTSdvaRsHd4Wa5caZ7+m9Y7kJLkqKddC7XASpiqY0J2zqOtdNk2 Bzk6lQLrMgZluxPjOJHU6hDq/hE/hJrRkbM1m0YZxm2PxIZoNdoBv1mnJZTGojOBhGJS+MYUVq3 0G0piGTFwOmz0p8cvRXZqjXs579tszkrgkXAg/A20Uub/e2M X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ti_iodelay_remove() is only called after ti_iodelay_probe() completed successfully. In this case platform_set_drvdata() was called with a non-NULL argument and so platform_get_drvdata() won't return NULL. Simplify by removing the if block with the always false condition. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/ti/pinctrl-ti-iodelay.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/pinctrl/ti/pinctrl-ti-iodelay.c b/drivers/pinctrl/ti/p= inctrl-ti-iodelay.c index c1477f657839..f3a273562095 100644 --- a/drivers/pinctrl/ti/pinctrl-ti-iodelay.c +++ b/drivers/pinctrl/ti/pinctrl-ti-iodelay.c @@ -903,9 +903,6 @@ static int ti_iodelay_remove(struct platform_device *pd= ev) { struct ti_iodelay_device *iod =3D platform_get_drvdata(pdev); =20 - if (!iod) - return 0; - if (iod->pctl) pinctrl_unregister(iod->pctl); =20 --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 1D398E95A91 for ; Mon, 9 Oct 2023 09:23:51 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346052AbjJIJXt (ORCPT ); Mon, 9 Oct 2023 05:23:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41848 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345842AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ADF42F9 for ; Mon, 9 Oct 2023 02:22:44 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTD-0006se-M8; Mon, 09 Oct 2023 11:22:35 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTC-000NWW-QH; Mon, 09 Oct 2023 11:22:34 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTC-00C4p1-HB; Mon, 09 Oct 2023 11:22:34 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Charles Keepax , Richard Fitzgerald , alsa-devel@alsa-project.org, patches@opensource.cirrus.com, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 04/20] pinctrl: cirrus: madera-core: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:40 +0200 Message-Id: <20231009083856.222030-5-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1757; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=26z5dwfBVv8uNLLkaBoXVqJ2/KKNhn+09EFI0ePmRQg=; b=owGbwMvMwMXY3/A7olbonx/jabUkhlTlPcyLrj76ufie/uJEWe5rEaxxUsbXZzfNSbtxO+Gg6 uwSm+M2nYzGLAyMXAyyYoos9o1rMq2q5CI71/67DDOIlQlkCgMXpwBMRFKe/X+hyM/6vsxPDw62 hMcmBvn6BOm82a06IVqFne2v4o0vCR+qM6dmZ/mvC00K3xc6QWnKrvbXRVaW9dK9j17p23wsuDP HbvGzpVmrIjIXSTYeyjvs+WZv1L3q3bpVjVlrTCPdbtq8eKkXf+Rp1LQvGnM6uJPPdTNfrLT1M0 sSm6D3iPF6rrmLwMtvdRNuWihMm+NYmPzUybBvVQAb3+LMk2ItuRWHb9zwMAqSNjcQf6he43MpM FLKRaDXLH22XIGMwOIovzdSfRZWzhNnq72sMOsK333QX6vpQUKZ4ZOJKpcMJs8pufn2yjrhHHE3 J5GMfoHbX8OiZj/RutK/Xa3o5hynl3ziendCZNtCNNcCAA== X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig Acked-by: Charles Keepax --- drivers/pinctrl/cirrus/pinctrl-madera-core.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/cirrus/pinctrl-madera-core.c b/drivers/pinctrl= /cirrus/pinctrl-madera-core.c index bb589922d8c5..898b197c3738 100644 --- a/drivers/pinctrl/cirrus/pinctrl-madera-core.c +++ b/drivers/pinctrl/cirrus/pinctrl-madera-core.c @@ -1084,19 +1084,17 @@ static int madera_pin_probe(struct platform_device = *pdev) return 0; } =20 -static int madera_pin_remove(struct platform_device *pdev) +static void madera_pin_remove(struct platform_device *pdev) { struct madera_pin_private *priv =3D platform_get_drvdata(pdev); =20 if (priv->madera->pdata.gpio_configs) pinctrl_unregister_mappings(priv->madera->pdata.gpio_configs); - - return 0; } =20 static struct platform_driver madera_pin_driver =3D { .probe =3D madera_pin_probe, - .remove =3D madera_pin_remove, + .remove_new =3D madera_pin_remove, .driver =3D { .name =3D "madera-pinctrl", }, --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 13E78E95A8E for ; Mon, 9 Oct 2023 09:23:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345734AbjJIJXw (ORCPT ); Mon, 9 Oct 2023 05:23:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58264 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345833AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4E26AF4 for ; Mon, 9 Oct 2023 02:22:44 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTD-0006sf-Fw; Mon, 09 Oct 2023 11:22:35 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTD-000NWa-1L; Mon, 09 Oct 2023 11:22:35 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTC-00C4p5-Oh; Mon, 09 Oct 2023 11:22:34 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Mika Westerberg , Andy Shevchenko , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 05/20] pinctrl: intel: cherryview: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:41 +0200 Message-Id: <20231009083856.222030-6-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=2108; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=S4F/Ao6mCu0ElcleKD+S+Fk5DRAS/72HcfKe390NuvY=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wE53vDr7UBK47ldXgIYZev2MHpu1X7uKNaB LRlAJOCz5qJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8BAAKCRCPgPtYfRL+ TrrlB/0cybM0pgGOwafLmSvV1Kuw38n2Xm2s8vDDjzm6cesAP4fVfeiXo7xwu1xOdRy45Xwr+G5 abP4ExhcNV8VZ1jdoZmBLZ5CIDHWJsRY2bJ6h3qKCEsZlp7ykzhAuxjqkyHR7INf++qDqNup8T+ h/pBWAIGXSlW+KZV1kxBC8Y0sLNrqc1omys7HzYK8a9KXu2TliWtA0oQ83JTOTVMemXygIke9B6 ZWFPGYI/CNF2Xis/9Z1xD1D4urmYWN/vvFapXov3kVisLWVrvOfbMm5qkOK4uJgaJ96Mqfiecbg zg2HkJf3RLXXXNK+DMLN5dvoHOtZ55iyU6wIy17EN5Iwy/n9 X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig Acked-by: Mika Westerberg --- drivers/pinctrl/intel/pinctrl-cherryview.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c b/drivers/pinctrl/i= ntel/pinctrl-cherryview.c index 81ee949b946d..1f923a895987 100644 --- a/drivers/pinctrl/intel/pinctrl-cherryview.c +++ b/drivers/pinctrl/intel/pinctrl-cherryview.c @@ -1728,7 +1728,7 @@ static int chv_pinctrl_probe(struct platform_device *= pdev) return 0; } =20 -static int chv_pinctrl_remove(struct platform_device *pdev) +static void chv_pinctrl_remove(struct platform_device *pdev) { struct intel_pinctrl *pctrl =3D platform_get_drvdata(pdev); const struct intel_community *community =3D &pctrl->communities[0]; @@ -1736,8 +1736,6 @@ static int chv_pinctrl_remove(struct platform_device = *pdev) acpi_remove_address_space_handler(ACPI_HANDLE(&pdev->dev), community->acpi_space_id, chv_pinctrl_mmio_access_handler); - - return 0; } =20 static int chv_pinctrl_suspend_noirq(struct device *dev) @@ -1835,7 +1833,7 @@ MODULE_DEVICE_TABLE(acpi, chv_pinctrl_acpi_match); =20 static struct platform_driver chv_pinctrl_driver =3D { .probe =3D chv_pinctrl_probe, - .remove =3D chv_pinctrl_remove, + .remove_new =3D chv_pinctrl_remove, .driver =3D { .name =3D "cherryview-pinctrl", .pm =3D pm_sleep_ptr(&chv_pinctrl_pm_ops), --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 91545E95A9A for ; Mon, 9 Oct 2023 09:23:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345909AbjJIJXF (ORCPT ); Mon, 9 Oct 2023 05:23:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58268 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345773AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4C940F2 for ; Mon, 9 Oct 2023 02:22:44 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTD-0006sq-ML; Mon, 09 Oct 2023 11:22:35 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTD-000NWd-8p; Mon, 09 Oct 2023 11:22:35 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTC-00C4p9-Vt; Mon, 09 Oct 2023 11:22:34 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Mika Westerberg , Andy Shevchenko , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 06/20] pinctrl: intel: lynxpoint: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:42 +0200 Message-Id: <20231009083856.222030-7-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1761; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=fsWrpmMKU/rWYOktZJIIlG/sX3wfJlY9nv6zFWW4epw=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wFI8hfY+1w3twniM/3CdxJLG0rAcTAt0xJF 0qOyf/xxIyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8BQAKCRCPgPtYfRL+ TghlCACZDDI0PkhZyjCfCHJ0oqnMoOlO09LfV3fC5w9nMJGRtsyksabDJwhBx983q4n/99/S8xK ywSo9xqhRmu7U1TVeL2sySStoniBDvRChCr4b0dXEEEoqIS+oxraQSqvL7fOTm3Y1unpnZlLnkV VVWCFZTUI1Zq1wtfwctxP4o6Kbsi6hrp/2cydsHJ2VP7Z7LEhJkhHjpAuvpi3rbeI93fn8kwtKW AkPmk7TGjz9odn1RnyYK7X4DTdQUZkyF7PEwhxyUprZj9g2uCU0ZTUrUQhMxKaYVPt5znxy1HVo pUcfO8/APURWonW/z7OfVzxfbdcYq/LQGRlMiqSgxkymvVoc X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig Acked-by: Mika Westerberg --- drivers/pinctrl/intel/pinctrl-lynxpoint.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/intel/pinctrl-lynxpoint.c b/drivers/pinctrl/in= tel/pinctrl-lynxpoint.c index c3732a9f0658..f0725edcab3b 100644 --- a/drivers/pinctrl/intel/pinctrl-lynxpoint.c +++ b/drivers/pinctrl/intel/pinctrl-lynxpoint.c @@ -846,10 +846,9 @@ static int lp_gpio_probe(struct platform_device *pdev) return 0; } =20 -static int lp_gpio_remove(struct platform_device *pdev) +static void lp_gpio_remove(struct platform_device *pdev) { pm_runtime_disable(&pdev->dev); - return 0; } =20 static int lp_gpio_runtime_suspend(struct device *dev) @@ -890,7 +889,7 @@ MODULE_DEVICE_TABLE(acpi, lynxpoint_gpio_acpi_match); =20 static struct platform_driver lp_gpio_driver =3D { .probe =3D lp_gpio_probe, - .remove =3D lp_gpio_remove, + .remove_new =3D lp_gpio_remove, .driver =3D { .name =3D "lp_gpio", .pm =3D pm_ptr(&lp_gpio_pm_ops), --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 24714E95A8E for ; Mon, 9 Oct 2023 09:23:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345901AbjJIJW6 (ORCPT ); Mon, 9 Oct 2023 05:22:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345707AbjJIJWs (ORCPT ); Mon, 9 Oct 2023 05:22:48 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DE255DF for ; Mon, 9 Oct 2023 02:22:40 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTD-0006sy-Sw; Mon, 09 Oct 2023 11:22:35 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTD-000NWi-Fw; Mon, 09 Oct 2023 11:22:35 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTD-00C4pD-71; Mon, 09 Oct 2023 11:22:35 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 07/20] pinctrl: nomadik: abx500: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:43 +0200 Message-Id: <20231009083856.222030-8-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1861; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=x2KWQ8ND+eDvRay0aKLtZDCZD1SPAhsCIdQmVEps4lo=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wHsl1vdO0V+6YWoS08CB0bmd/UjRDek9bRC dXtf5HfDhCJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8BwAKCRCPgPtYfRL+ TjeFCACbpMBmj7EOf+G1UFGYv3PxitszRTnu9lWkhurVE7IsmkEsb+WQq7EsN0hE+S5AIKjcuHX eoDGCNbRLj0Y50C6P3zDeCdwe91dtx7eugvi3xsOkeEFdmIqB8MIdgr+l9InqnIw/fWHDXY38Ac wshhoqeRZF3E3vuMDy97fhtAZKauXplJ8Z8FMVnPmUyCZiJQ4TZxqRwrc0r/ogUtzIJHxJaDaDs wBtk2i0BAlzXEiMmXBez1UkMLh15Xwxc8qlfANnoJn3TAQCqegPHFSKSfRC7dGfjghsH+7yPQn+ 4rO4837lZEUGxc0AH2HPL4f8ZfbZyXoPAWwZhB1QAdXu+SB1 X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/nomadik/pinctrl-abx500.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/nomadik/pinctrl-abx500.c b/drivers/pinctrl/nom= adik/pinctrl-abx500.c index 6b90051af206..233857d54403 100644 --- a/drivers/pinctrl/nomadik/pinctrl-abx500.c +++ b/drivers/pinctrl/nomadik/pinctrl-abx500.c @@ -1079,12 +1079,11 @@ static int abx500_gpio_probe(struct platform_device= *pdev) * abx500_gpio_remove() - remove Ab8500-gpio driver * @pdev: Platform device registered */ -static int abx500_gpio_remove(struct platform_device *pdev) +static void abx500_gpio_remove(struct platform_device *pdev) { struct abx500_pinctrl *pct =3D platform_get_drvdata(pdev); =20 gpiochip_remove(&pct->chip); - return 0; } =20 static struct platform_driver abx500_gpio_driver =3D { @@ -1093,7 +1092,7 @@ static struct platform_driver abx500_gpio_driver =3D { .of_match_table =3D abx500_gpio_match, }, .probe =3D abx500_gpio_probe, - .remove =3D abx500_gpio_remove, + .remove_new =3D abx500_gpio_remove, }; =20 static int __init abx500_gpio_init(void) --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 5471CE95A97 for ; Mon, 9 Oct 2023 09:22:51 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345815AbjJIJWu (ORCPT ); Mon, 9 Oct 2023 05:22:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36398 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345778AbjJIJWn (ORCPT ); Mon, 9 Oct 2023 05:22:43 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C9968DE for ; Mon, 9 Oct 2023 02:22:40 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTE-0006tB-3J; Mon, 09 Oct 2023 11:22:36 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTD-000NWm-MM; Mon, 09 Oct 2023 11:22:35 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTD-00C4pH-DG; Mon, 09 Oct 2023 11:22:35 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Basavaraj Natikar , Shyam Sundar S K , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 08/20] pinctrl: amd: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:44 +0200 Message-Id: <20231009083856.222030-9-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1768; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=V7AnU5mBt80bO3f/bU7N6FqQ85j+a4pI1X5vE/2OSgI=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wI1+nZs515nJnjZmZdqHxhOhVNRVBbcm892 LSzhWR+GvSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8CAAKCRCPgPtYfRL+ Ttf7CACi6wQsY9DE8xhf2gF61QGcptRTb8H5D+pStx06n6zNcoRco2+PjJF/HNZLUjDok4IzKX2 8DI/1L7yRW3qkHLxoNRi1z0zce0ceVr+TuATh7388F8TrHbv4AbYmw0hOqsiUuXlzZmBxCqzDdG 9inVO+L0dGBOTU0+pv0WUCi7kD/SK7+wZX4NI/pKmkt4q+lc4R2geO6dB+OunvBfV863gD0uraX 5fPv/KpusCfa6MH+qqmzfF2W2T5wtMIbL1v1QiixCXkw2wOhaz0nsDgdSojQAlGlonoH6aQ0g98 yxLQF4/pjNT18Y9Y8O/2GwgEEUKDkJiM5lziHxMEUu/hf5NH X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-amd.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-amd.c b/drivers/pinctrl/pinctrl-amd.c index 74241b2ff21e..fb58acb843d9 100644 --- a/drivers/pinctrl/pinctrl-amd.c +++ b/drivers/pinctrl/pinctrl-amd.c @@ -1166,7 +1166,7 @@ static int amd_gpio_probe(struct platform_device *pde= v) return ret; } =20 -static int amd_gpio_remove(struct platform_device *pdev) +static void amd_gpio_remove(struct platform_device *pdev) { struct amd_gpio *gpio_dev; =20 @@ -1174,8 +1174,6 @@ static int amd_gpio_remove(struct platform_device *pd= ev) =20 gpiochip_remove(&gpio_dev->gc); acpi_unregister_wakeup_handler(amd_gpio_check_wake, gpio_dev); - - return 0; } =20 #ifdef CONFIG_ACPI @@ -1197,7 +1195,7 @@ static struct platform_driver amd_gpio_driver =3D { #endif }, .probe =3D amd_gpio_probe, - .remove =3D amd_gpio_remove, + .remove_new =3D amd_gpio_remove, }; =20 module_platform_driver(amd_gpio_driver); --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 8A86AE95A8E for ; Mon, 9 Oct 2023 09:22:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345795AbjJIJWq (ORCPT ); Mon, 9 Oct 2023 05:22:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36348 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345707AbjJIJWl (ORCPT ); Mon, 9 Oct 2023 05:22:41 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CB565CF for ; Mon, 9 Oct 2023 02:22:39 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTE-0006tV-Cz; Mon, 09 Oct 2023 11:22:36 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTE-000NWs-0L; Mon, 09 Oct 2023 11:22:36 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTD-00C4pL-NR; Mon, 09 Oct 2023 11:22:35 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Jesper Nilsson , Lars Persson , linux-arm-kernel@axis.com, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 09/20] pinctrl: artpec6: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:45 +0200 Message-Id: <20231009083856.222030-10-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1758; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=REwHugWByH9MZiAq/xaUHUffBTFsuoloAV+rOifD5WE=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wJ0B8jigP3Dxi7n9R6rd5K2RcM9kcrzEbQ3 oJLJrwV1AyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8CQAKCRCPgPtYfRL+ TjIfB/41KqJBdmph4C1MLpdcUe6c+RY3hCISKnr2/I2/lax9Tbb+w4xBwLLzqqNgdxopKbkGJEe 1uO2DLLNtbS6jFO+p9j0dJR47AR3ZYlIx0IlDrTsFBHFqSeCJZKn2VwyeNGwc+myk8VQniU0cJ3 ++SAUQqPTYzSOuO1LZXT1RPQexyt6bcMa/8p0T4/aOdQKGSta0+GEBcK1KyjJ6ktgKM/Av+DwUH E47opsIFgA7KXx9HkDDsxo+cj6pKu9KIcf8ubfLG4c61M6mB9OCvsea8NYQcOyzdN39TNndY0BA t/zFFA+FkJKmtFyo+p1HrKlBvSqRs85XfxEm9Tat9R7vsZP0 X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig Acked-by: Jesper Nilsson --- drivers/pinctrl/pinctrl-artpec6.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-artpec6.c b/drivers/pinctrl/pinctrl-ar= tpec6.c index d6c9f9dcff97..dd93f124e0a0 100644 --- a/drivers/pinctrl/pinctrl-artpec6.c +++ b/drivers/pinctrl/pinctrl-artpec6.c @@ -970,13 +970,11 @@ static int artpec6_pmx_probe(struct platform_device *= pdev) return 0; } =20 -static int artpec6_pmx_remove(struct platform_device *pdev) +static void artpec6_pmx_remove(struct platform_device *pdev) { struct artpec6_pmx *pmx =3D platform_get_drvdata(pdev); =20 pinctrl_unregister(pmx->pctl); - - return 0; } =20 static const struct of_device_id artpec6_pinctrl_match[] =3D { @@ -990,7 +988,7 @@ static struct platform_driver artpec6_pmx_driver =3D { .of_match_table =3D artpec6_pinctrl_match, }, .probe =3D artpec6_pmx_probe, - .remove =3D artpec6_pmx_remove, + .remove_new =3D artpec6_pmx_remove, }; =20 static int __init artpec6_pmx_init(void) --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 89E52E95A97 for ; Mon, 9 Oct 2023 09:22:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345662AbjJIJWm (ORCPT ); Mon, 9 Oct 2023 05:22:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36294 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345695AbjJIJWj (ORCPT ); Mon, 9 Oct 2023 05:22:39 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 99CFF97 for ; Mon, 9 Oct 2023 02:22:38 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTE-0006td-KC; Mon, 09 Oct 2023 11:22:36 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTE-000NWw-7o; Mon, 09 Oct 2023 11:22:36 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTD-00C4pP-Uy; Mon, 09 Oct 2023 11:22:35 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 10/20] pinctrl: as3722: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:46 +0200 Message-Id: <20231009083856.222030-11-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1797; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=MPWtYbMOQgZR7mlnb/mgL+Kp5Cn22AjikhRP10lPHcU=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wKE74xmYD8QqeyqKDdAd0aRFg6ar601wE4U 3O0gprgCImJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8CgAKCRCPgPtYfRL+ TigkB/0ezfjZNnv82AK92u26hpU28QyX4rIKqnS5KQojWwblAi+52ppN5+EMlbRRrFGYY5wSBn4 TnVuCrRpr6YUxKBV7pz7p490x5ndIbSoG2wc3Y0AXYrp9XbqC4bqPLq4mQ+9jfG3MKEC25+WbyF /N4Q5VRsfG5fuV5jlzoXjNzTr97EzrLIVmpy8UTVLLBHJl9lz1SpLYObXzJPtPwtcrBAg5KLuWn hIb4IhnvbcAahYVYJOl+49L09sxhggWJFA1jqK1ZQCSJN46A4o0WbeL0RKpHJ2srBnCTvjJZuvO tM6KKRWDc4dB+lNZ28YbuKUFaS09UNJJsveOHajkwX6taoPs X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-as3722.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/pinctrl-as3722.c b/drivers/pinctrl/pinctrl-as3= 722.c index f0e5d87ac50b..84b47a6cc3a6 100644 --- a/drivers/pinctrl/pinctrl-as3722.c +++ b/drivers/pinctrl/pinctrl-as3722.c @@ -587,12 +587,11 @@ static int as3722_pinctrl_probe(struct platform_devic= e *pdev) return ret; } =20 -static int as3722_pinctrl_remove(struct platform_device *pdev) +static void as3722_pinctrl_remove(struct platform_device *pdev) { struct as3722_pctrl_info *as_pci =3D platform_get_drvdata(pdev); =20 gpiochip_remove(&as_pci->gpio_chip); - return 0; } =20 static const struct of_device_id as3722_pinctrl_of_match[] =3D { @@ -607,7 +606,7 @@ static struct platform_driver as3722_pinctrl_driver =3D= { .of_match_table =3D as3722_pinctrl_of_match, }, .probe =3D as3722_pinctrl_probe, - .remove =3D as3722_pinctrl_remove, + .remove_new =3D as3722_pinctrl_remove, }; module_platform_driver(as3722_pinctrl_driver); =20 --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 65568E95A8E for ; Mon, 9 Oct 2023 09:23:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345858AbjJIJXd (ORCPT ); Mon, 9 Oct 2023 05:23:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41806 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345852AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5CBA610D for ; Mon, 9 Oct 2023 02:22:46 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTE-0006ts-SJ; Mon, 09 Oct 2023 11:22:36 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTE-000NWz-F4; Mon, 09 Oct 2023 11:22:36 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTE-00C4pT-5l; Mon, 09 Oct 2023 11:22:36 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Heiko Stuebner , linux-gpio@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 11/20] pinctrl: rockchip: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:47 +0200 Message-Id: <20231009083856.222030-12-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1992; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=1r75hWhFIwS3Xxx1rg10xcxelpQqUr47pBcp8katCvo=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wLOmza0DUzIsCY9zfipvZ36aTSt6DU6kjvl EYs+uaL1TSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8CwAKCRCPgPtYfRL+ TnXnB/9xI3Eby3413pFsFuP6EKG8aPL42C5OSRsytr3PhPLwgGp3LeX4/f2CzGzcQvQ1x/iXOLl mnhbwlPcElww+ahQoXDEsvpW4wLsNmZjTbrttMB+eHZ4TdXWn8dW6qsnosiATY3xSAgYsVn3UF8 t+K1fNRR9o5yOWL5uTaH06nXwmqZ2ZTFt3Kghc4NpMcJw5QeI0e89NdlHfR7lgUCFbLXgRUFkJa oCxEl53LUOeQSti/1W5K5dL7lAeLhX3H87pGo0fDnnXDfS9tEfty6ZoAXQTzp9sBf5oi8e13aYb qRGs+RIDCz2PyhmyH+dx8TTA+OCZH1VE4pVnXA+OpmzaD+1y X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig Reviewed-by: Heiko Stuebner --- drivers/pinctrl/pinctrl-rockchip.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-rockchip.c b/drivers/pinctrl/pinctrl-r= ockchip.c index 45e416f68e74..3bedf36a0019 100644 --- a/drivers/pinctrl/pinctrl-rockchip.c +++ b/drivers/pinctrl/pinctrl-rockchip.c @@ -3429,7 +3429,7 @@ static int rockchip_pinctrl_probe(struct platform_dev= ice *pdev) return 0; } =20 -static int rockchip_pinctrl_remove(struct platform_device *pdev) +static void rockchip_pinctrl_remove(struct platform_device *pdev) { struct rockchip_pinctrl *info =3D platform_get_drvdata(pdev); struct rockchip_pin_bank *bank; @@ -3450,8 +3450,6 @@ static int rockchip_pinctrl_remove(struct platform_de= vice *pdev) } mutex_unlock(&bank->deferred_lock); } - - return 0; } =20 static struct rockchip_pin_bank px30_pin_banks[] =3D { @@ -3982,7 +3980,7 @@ static const struct of_device_id rockchip_pinctrl_dt_= match[] =3D { =20 static struct platform_driver rockchip_pinctrl_driver =3D { .probe =3D rockchip_pinctrl_probe, - .remove =3D rockchip_pinctrl_remove, + .remove_new =3D rockchip_pinctrl_remove, .driver =3D { .name =3D "rockchip-pinctrl", .pm =3D &rockchip_pinctrl_dev_pm_ops, --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 F1A5FE95A8E for ; Mon, 9 Oct 2023 09:23:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346049AbjJIJXg (ORCPT ); Mon, 9 Oct 2023 05:23:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41794 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345780AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4A66610B for ; Mon, 9 Oct 2023 02:22:46 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTF-0006u0-3A; Mon, 09 Oct 2023 11:22:37 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTE-000NX4-MJ; Mon, 09 Oct 2023 11:22:36 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTE-00C4pX-D2; Mon, 09 Oct 2023 11:22:36 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Tony Lindgren , Haojian Zhuang , linux-arm-kernel@lists.infradead.org, linux-omap@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 12/20] pinctrl: single: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:48 +0200 Message-Id: <20231009083856.222030-13-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1718; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=a/v66eHU5Uj0mdLHd/QFQaWVOjMQuym5mHOAFMrvkQo=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wMpQfffOI+H9Vi/B/d91YEdLm5ZWEcXq4/D AEvGVfpkcyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8DAAKCRCPgPtYfRL+ TqL0CAC3v82p5Lv7oN5Wy3K6FJmKhHnhom34PdJZSWq78xBLF1KufxJbcTFiyVO+Zsmp3afdWvu 714iTYS+1erVsGJ/c6pHn28JHuYEgo/K7nQfx1RBmWyGbsv/4tYf1JRHq/+OiJM3oKqJqVnRYka KyACUXPnItwsfQA8UU6jMRbGgEXWzW2nYgj63NTwEmbYOLYq7QRl3SnRdxxCf8ZQgVGDC0xSWsu 4wW5IXkcRWvcvi0r7k2o3npSnzmZepMhoDomj8c0eBdAPKoR5TV9mS3QDxcuBUCuinyadge+OY4 sBbvV5GdCjcOGe3S2ZO0mjb2PNnds/PboCOBcR7knUT0rTys X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-single.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-sin= gle.c index f6c02c8b934d..1f915269d347 100644 --- a/drivers/pinctrl/pinctrl-single.c +++ b/drivers/pinctrl/pinctrl-single.c @@ -1925,13 +1925,11 @@ static int pcs_probe(struct platform_device *pdev) return ret; } =20 -static int pcs_remove(struct platform_device *pdev) +static void pcs_remove(struct platform_device *pdev) { struct pcs_device *pcs =3D platform_get_drvdata(pdev); =20 pcs_free_resources(pcs); - - return 0; } =20 static const struct pcs_soc_data pinctrl_single_omap_wkup =3D { @@ -1979,7 +1977,7 @@ MODULE_DEVICE_TABLE(of, pcs_of_match); =20 static struct platform_driver pcs_driver =3D { .probe =3D pcs_probe, - .remove =3D pcs_remove, + .remove_new =3D pcs_remove, .driver =3D { .name =3D DRIVER_NAME, .of_match_table =3D pcs_of_match, --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 0D491E95A8E for ; Mon, 9 Oct 2023 09:23:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345832AbjJIJXQ (ORCPT ); Mon, 9 Oct 2023 05:23:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41868 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345865AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6015C10E for ; Mon, 9 Oct 2023 02:22:46 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTF-0006uH-DO; Mon, 09 Oct 2023 11:22:37 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTF-000NX9-0B; Mon, 09 Oct 2023 11:22:37 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTE-00C4pb-NE; Mon, 09 Oct 2023 11:22:36 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Maxime Coquelin , Alexandre Torgue , linux-gpio@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 13/20] pinctrl: stmfx: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:49 +0200 Message-Id: <20231009083856.222030-14-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1870; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=PgpMnVQndSD56U26Qe9f+HDWSOr4u9++3LxM4ikfokI=; b=owGbwMvMwMXY3/A7olbonx/jabUkhlTlPXxTYpbahPY0vU5SKpNnd1LLWngypTvykl6VQwL3b 92rOS87GY1ZGBi5GGTFFFnsG9dkWlXJRXau/XcZZhArE8gUBi5OAZgI71T2/0mqOXml5U71y83+ 5QtO/ybMIN1Q/Kpu5roQhzqhieruz96ncFc1unAsXL7/9ZeuytoWT9YvaomGezbrXRT6GFx2SzK obD/Pu6MeE1gLZtddeOywgHm6cXzLnb7939X3c9SFmK8u+2y4dNI8rq9326eoLDs553hjocupl2 wOjZueGDy4rr01LSjIoFf1uYzRLcFplSeYInlNag5XeAULK37gnn7gtu+D8oBEo/sq3YdXXP5f8 CG9M6bqq17Km+wl3j36FV5nDjT/LuuyMnfaxP7qtt8jkRdy59P23uadXGjZ0GAv/KCq+j77Amfz tv5OgYNz1+fss0pU19aLbv3yod8ibzbHf16OQDVTkb0A X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-stmfx.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmf= x.c index d7ab82432a52..6313be370eb7 100644 --- a/drivers/pinctrl/pinctrl-stmfx.c +++ b/drivers/pinctrl/pinctrl-stmfx.c @@ -734,7 +734,7 @@ static int stmfx_pinctrl_probe(struct platform_device *= pdev) return 0; } =20 -static int stmfx_pinctrl_remove(struct platform_device *pdev) +static void stmfx_pinctrl_remove(struct platform_device *pdev) { struct stmfx *stmfx =3D dev_get_drvdata(pdev->dev.parent); int ret; @@ -746,8 +746,6 @@ static int stmfx_pinctrl_remove(struct platform_device = *pdev) if (ret) dev_err(&pdev->dev, "Failed to disable pins (%pe)\n", ERR_PTR(ret)); - - return 0; } =20 #ifdef CONFIG_PM_SLEEP @@ -856,7 +854,7 @@ static struct platform_driver stmfx_pinctrl_driver =3D { .pm =3D &stmfx_pinctrl_dev_pm_ops, }, .probe =3D stmfx_pinctrl_probe, - .remove =3D stmfx_pinctrl_remove, + .remove_new =3D stmfx_pinctrl_remove, }; module_platform_driver(stmfx_pinctrl_driver); =20 --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 7D633E95A9B for ; Mon, 9 Oct 2023 09:22:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345786AbjJIJWo (ORCPT ); Mon, 9 Oct 2023 05:22:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36364 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345745AbjJIJWk (ORCPT ); Mon, 9 Oct 2023 05:22:40 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9C312C6 for ; Mon, 9 Oct 2023 02:22:39 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTF-0006uJ-JM; Mon, 09 Oct 2023 11:22:37 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTF-000NXC-6U; Mon, 09 Oct 2023 11:22:37 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTE-00C4pf-Tc; Mon, 09 Oct 2023 11:22:36 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 14/20] pinctrl: tb10x: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:50 +0200 Message-Id: <20231009083856.222030-15-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1762; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=DKr3s0/IU/9sggic3G90VxKYmkp4LOaBG2R8uqmIaBI=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wPHaUEnsZbOMDT1bwDG9HhpL7Mrhfl6NcXM XP1WUpvkImJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8DwAKCRCPgPtYfRL+ TqOkB/4+mvvSTSCbIkonA1f363duBm9ycbAcAL+Qj6k7tBYZT9yRJi1bt8NK7NGDgWUOJRKVDVt iU29qId7bbp5GSMZsDVj3RCQVISSzx8K5mGddUCpF2HCbJ3GsMh2Y1nq6DeWLAy4qEYqp/8jUAo Kj6wLoJaD5pyOuDOqZ0AJBhGbmNlUQcNz0EWkeqkVT/LGyTy9Xc94XQZZ1vQL2+vdRinKxTRvnR TPNDuXVMA/cYQOUvAlmTVC20vg23+XoxtE2AIL4hFxRBuvBvcJcU44n0zQZ5MeLBdomrnV1ZRPo 633k1yS3UHwHRNGH5q7O7VW3j6jHRdGca620Oyg9s6g7fN9Q X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/pinctrl-tb10x.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-tb10x.c b/drivers/pinctrl/pinctrl-tb10= x.c index ab49bd708969..c3b76e6511ac 100644 --- a/drivers/pinctrl/pinctrl-tb10x.c +++ b/drivers/pinctrl/pinctrl-tb10x.c @@ -804,13 +804,11 @@ static int tb10x_pinctrl_probe(struct platform_device= *pdev) return ret; } =20 -static int tb10x_pinctrl_remove(struct platform_device *pdev) +static void tb10x_pinctrl_remove(struct platform_device *pdev) { struct tb10x_pinctrl *state =3D platform_get_drvdata(pdev); =20 mutex_destroy(&state->mutex); - - return 0; } =20 =20 @@ -822,7 +820,7 @@ MODULE_DEVICE_TABLE(of, tb10x_pinctrl_dt_ids); =20 static struct platform_driver tb10x_pinctrl_pdrv =3D { .probe =3D tb10x_pinctrl_probe, - .remove =3D tb10x_pinctrl_remove, + .remove_new =3D tb10x_pinctrl_remove, .driver =3D { .name =3D "tb10x_pinctrl", .of_match_table =3D of_match_ptr(tb10x_pinctrl_dt_ids), --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 A08A6E95A91 for ; Mon, 9 Oct 2023 09:23:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345961AbjJIJXU (ORCPT ); Mon, 9 Oct 2023 05:23:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58272 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345892AbjJIJW6 (ORCPT ); Mon, 9 Oct 2023 05:22:58 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 635C0114 for ; Mon, 9 Oct 2023 02:22:47 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTF-0006uV-Pq; Mon, 09 Oct 2023 11:22:37 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTF-000NXG-Cw; Mon, 09 Oct 2023 11:22:37 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTF-00C4pj-3q; Mon, 09 Oct 2023 11:22:37 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Andy Gross , Bjorn Andersson , Konrad Dybcio , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 15/20] pinctrl: qcom: spmi-gpio: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:51 +0200 Message-Id: <20231009083856.222030-16-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1785; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=iUS4SwEkb7r81ttsiZuCAWGZ8BPSgfZwboQcZSPLTn8=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wQMOny6ci1vflQLeBPNgnGEOvIztvOzj2IO go4zjz8LpGJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8EAAKCRCPgPtYfRL+ TqlWB/4icqIp1ueWLdYJ0x2M3biO6YlUZ53y9wFVw/r0HWXI3KfVN2PuVBFCBgXpHxAcQ/8x746 yw1fM8SiMBH/xSuk4oJIqkenN3SNZo1LdJRh1D9DcAV550NqhNOY+cS2Psv5VeSxT9BYb/BqEKl EnLZSSIG2lqHuv7eZKZDewzkP0tsLOJBoIQqoEQIps7nrfgwokxfv6AH05yCxDY4P7e75IARECZ eaBLe8Ybr9RrvVOp69tdQ6SDnYACvUbgFYRQDsGYfJlgg8oWaEsY3PWNCSmJV1c0II1djf9W4F5 7ux4ZDhGCgaDR90Gg1HoHUKVrS5yyFDBWkm8x+Ami2TztYzH X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c b/drivers/pinctrl/qco= m/pinctrl-spmi-gpio.c index deded9c6fd7d..f4e2c88a7c82 100644 --- a/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c +++ b/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c @@ -1185,12 +1185,11 @@ static int pmic_gpio_probe(struct platform_device *= pdev) return ret; } =20 -static int pmic_gpio_remove(struct platform_device *pdev) +static void pmic_gpio_remove(struct platform_device *pdev) { struct pmic_gpio_state *state =3D platform_get_drvdata(pdev); =20 gpiochip_remove(&state->chip); - return 0; } =20 static const struct of_device_id pmic_gpio_of_match[] =3D { @@ -1265,7 +1264,7 @@ static struct platform_driver pmic_gpio_driver =3D { .of_match_table =3D pmic_gpio_of_match, }, .probe =3D pmic_gpio_probe, - .remove =3D pmic_gpio_remove, + .remove_new =3D pmic_gpio_remove, }; =20 module_platform_driver(pmic_gpio_driver); --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 E2073E81E16 for ; Mon, 9 Oct 2023 09:23:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346022AbjJIJXM (ORCPT ); Mon, 9 Oct 2023 05:23:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41802 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345857AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A3240110 for ; Mon, 9 Oct 2023 02:22:46 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTG-0006ut-2i; Mon, 09 Oct 2023 11:22:38 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTF-000NXK-Lv; Mon, 09 Oct 2023 11:22:37 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTF-00C4pn-Cm; Mon, 09 Oct 2023 11:22:37 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Bjorn Andersson , Andy Gross , Konrad Dybcio , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 16/20] pinctrl: qcom: spmi-mpp: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:52 +0200 Message-Id: <20231009083856.222030-17-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1767; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=vzs3F7Uou+X3yMekBIMHBzYB6Le6JQJjl2rEX4wo4hk=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wRHdTZkFmrB0K1w+Co1UvRWrgd7FyRrKniw iSqkGIF5ZGJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8EQAKCRCPgPtYfRL+ TllIB/9WEsCcLEKVnpUUTRCZBVoZtnBzyHbwYc5LVGsiTRl5TWNsYW0ZXAf4mRAud4cANi6doH9 GAn/d7W3siShHXxsPQFh3JUfURELWF0mUQCP2JiVT3sE7sGlIEa2+9zOiQHgLJPKesRaaHGd4lb zZWFIRJoTlumBk0/QmSrt2rEiW+CHaz8gDcZ2gP7r8jcwsYROmcVOoeQAL/p7fOPgbDvwDNpb4T n4sJJKNLX7Jvn3JFWrQUP+03db/VpQipjk2E8MVVARCY8rsqZnxMcKr3H/ji+0jN+L9smcQEJCm IIO+Pc0z55LK95bmF4l7EpLeBR/FTvvxaCKYNS4ubqApR0Qk X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/qcom/pinctrl-spmi-mpp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/qcom/pinctrl-spmi-mpp.c b/drivers/pinctrl/qcom= /pinctrl-spmi-mpp.c index fe0393829c20..d16ece90d926 100644 --- a/drivers/pinctrl/qcom/pinctrl-spmi-mpp.c +++ b/drivers/pinctrl/qcom/pinctrl-spmi-mpp.c @@ -971,12 +971,11 @@ static int pmic_mpp_probe(struct platform_device *pde= v) return ret; } =20 -static int pmic_mpp_remove(struct platform_device *pdev) +static void pmic_mpp_remove(struct platform_device *pdev) { struct pmic_mpp_state *state =3D platform_get_drvdata(pdev); =20 gpiochip_remove(&state->chip); - return 0; } =20 static const struct of_device_id pmic_mpp_of_match[] =3D { @@ -1001,7 +1000,7 @@ static struct platform_driver pmic_mpp_driver =3D { .of_match_table =3D pmic_mpp_of_match, }, .probe =3D pmic_mpp_probe, - .remove =3D pmic_mpp_remove, + .remove_new =3D pmic_mpp_remove, }; =20 module_platform_driver(pmic_mpp_driver); --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 78EF7E95A8E for ; Mon, 9 Oct 2023 09:23:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345990AbjJIJXm (ORCPT ); Mon, 9 Oct 2023 05:23:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41824 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345820AbjJIJW6 (ORCPT ); Mon, 9 Oct 2023 05:22:58 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B180711B for ; Mon, 9 Oct 2023 02:22:47 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTG-0006v1-9I; Mon, 09 Oct 2023 11:22:38 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTF-000NXO-SC; Mon, 09 Oct 2023 11:22:37 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTF-00C4pr-J3; Mon, 09 Oct 2023 11:22:37 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Andy Gross , Bjorn Andersson , Konrad Dybcio , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 17/20] pinctrl: qcom: ssbi-gpio: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:53 +0200 Message-Id: <20231009083856.222030-18-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1791; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=28+bfS44N/MplXkQ7tL5fBHkxWSovei9m4bBOfdvZTk=; b=owGbwMvMwMXY3/A7olbonx/jabUkhlTlPUJPvnCdeSfEnPErd++MeYkb5cx7z6wPNfmsceZA8 sJ5TXWBnYzGLAyMXAyyYoos9o1rMq2q5CI71/67DDOIlQlkCgMXpwBMhDuNg2H6bZ/Lv1JijevK pfJzzhk94p528L3dxQ5T+TPMi0riq9kPCdm8LcwxKS1g6Wt3uWB3l9PFvz1i/7p53CLxmSxP5+3 weM2bNH3OMlOZSebbTTnWFU8P7Dn/cvnGdOEEAY98tkQ36YCXdiK9Lq+q1Ux+TH/kar6VLfKTQu TTJ5sn31bOuuUzz5O5VIfTuKGsT6e+IfrLxAQVcfMn5SnTNJ5IK6TU/T4xq0VbuKU6v3OmTG5r/ ox+u0V9Si+51QNK2Bp7w364uTMWvNJIrTKdcslrWv9DnVO7/HpPbih9zXb3seDPQv7PfQdO1bvM CZz8PUo+6NDvrT9zIpl/CfxdI/pUcd/Vzhz72T/M1i0FAA== X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c b/drivers/pinctrl/qco= m/pinctrl-ssbi-gpio.c index e0d43d076c01..9cd5247ea574 100644 --- a/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c +++ b/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c @@ -853,13 +853,11 @@ static int pm8xxx_gpio_probe(struct platform_device *= pdev) return ret; } =20 -static int pm8xxx_gpio_remove(struct platform_device *pdev) +static void pm8xxx_gpio_remove(struct platform_device *pdev) { struct pm8xxx_gpio *pctrl =3D platform_get_drvdata(pdev); =20 gpiochip_remove(&pctrl->chip); - - return 0; } =20 static struct platform_driver pm8xxx_gpio_driver =3D { @@ -868,7 +866,7 @@ static struct platform_driver pm8xxx_gpio_driver =3D { .of_match_table =3D pm8xxx_gpio_of_match, }, .probe =3D pm8xxx_gpio_probe, - .remove =3D pm8xxx_gpio_remove, + .remove_new =3D pm8xxx_gpio_remove, }; =20 module_platform_driver(pm8xxx_gpio_driver); --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 911ACE95A8E for ; Mon, 9 Oct 2023 09:23:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345674AbjJIJXY (ORCPT ); Mon, 9 Oct 2023 05:23:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41808 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345893AbjJIJW6 (ORCPT ); Mon, 9 Oct 2023 05:22:58 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 241E3112 for ; Mon, 9 Oct 2023 02:22:47 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTG-0006vI-I4; Mon, 09 Oct 2023 11:22:38 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTG-000NXS-4q; Mon, 09 Oct 2023 11:22:38 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTF-00C4pv-S1; Mon, 09 Oct 2023 11:22:37 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Andy Gross , Bjorn Andersson , Konrad Dybcio , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 18/20] pinctrl: qcom: ssbi-mpp: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:54 +0200 Message-Id: <20231009083856.222030-19-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1775; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=SsYV2sgsr7TRLETWckrWLWBbUnJpb3Z9p/eiCeOFjYo=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wT3rSpr1DOqqnrcxvuvs6vVTLJ+V1OTMu3R BiQ9k2k4wGJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8EwAKCRCPgPtYfRL+ TufRB/9rDhQgknJt/0gZukbSFaLF3GDSd6FbDP4NDJm/W5NtDI6yBh8sVvW+ipkChaYtBTlYuMJ CyRf5hTQyXEJlTUEY2sAvNHTakFfdiD8e9m349Rqec+HJN6Pmt5PAQFrJkwq/ki/+Aodp6pr9wG /sjglQ4RUhcpcbsxaAZs5HR9FG6twy1HJ53gx5cIipuOvnNjow1WVxoUIBMLHDN3jBC52VjvL+h 0sVOeA5d8EDbHJ+AdWHFSzR5Y0iLTX6gGTPstwJvjaZ4SKxyrcH2hxGKb33DeeQYFECAe2c5F0f H4Cvqij42TB0aicPrqkL2C3Gg2inW3TtF2K/vaR10wZ31rEO X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c b/drivers/pinctrl/qcom= /pinctrl-ssbi-mpp.c index 985d1a0ee8f8..3aee6835a2de 100644 --- a/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c +++ b/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c @@ -936,13 +936,11 @@ static int pm8xxx_mpp_probe(struct platform_device *p= dev) return ret; } =20 -static int pm8xxx_mpp_remove(struct platform_device *pdev) +static void pm8xxx_mpp_remove(struct platform_device *pdev) { struct pm8xxx_mpp *pctrl =3D platform_get_drvdata(pdev); =20 gpiochip_remove(&pctrl->chip); - - return 0; } =20 static struct platform_driver pm8xxx_mpp_driver =3D { @@ -951,7 +949,7 @@ static struct platform_driver pm8xxx_mpp_driver =3D { .of_match_table =3D pm8xxx_mpp_of_match, }, .probe =3D pm8xxx_mpp_probe, - .remove =3D pm8xxx_mpp_remove, + .remove_new =3D pm8xxx_mpp_remove, }; =20 module_platform_driver(pm8xxx_mpp_driver); --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 3F76BE95A8E for ; Mon, 9 Oct 2023 09:23:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345997AbjJIJXp (ORCPT ); Mon, 9 Oct 2023 05:23:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58244 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345849AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 73335101 for ; Mon, 9 Oct 2023 02:22:45 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTG-0006vN-Nr; Mon, 09 Oct 2023 11:22:38 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTG-000NXW-B7; Mon, 09 Oct 2023 11:22:38 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTG-00C4pz-21; Mon, 09 Oct 2023 11:22:38 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Geert Uytterhoeven , linux-renesas-soc@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 19/20] pinctrl: renesas: rzn1: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:55 +0200 Message-Id: <20231009083856.222030-20-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1830; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=whu1K3F7uiPsNXc85/ItXxw8lSWdHF4ifU6FSRE1eb0=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wVKp/h4ZmXafNql0+fn8GJ8n3xLvUqunKyn 9hjgl1/LeSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8FQAKCRCPgPtYfRL+ Tno+B/4x6SoP3sqUW0skGY4krgmujz6/rJAcDeQTwBv7ti5toHbjFhYFTeyZWzj7JoS+XzO+pru EtVB6g8xRdV8pO8+t8pgjnNzHsNl8yZazWPyuye9g5D4pmKhH+yPlMBQtX3bua5Mqznb4tcc7nK R9I449F3w0NToI7rCRiNt/eEs1One16x8nDJfjH68YDJA7OsXH5Vi4k9m6tYwQxkpwOl1sGMxdh S/va6B43w9zNhP8dfWM/7q7Rpy9P9FAUfhAo4DYnwm5eMSUdXaKbeRSkiJT+pGtSv5o9PyTZPSY ewklrqHyUZK9oPohr3mtuZFOdwBYbxwipnmeVxla9eKGD+PB X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig Acked-by: Geert Uytterhoeven Acked-by: Linus Walleij Reviewed-by: Geert Uytterhoeven --- drivers/pinctrl/renesas/pinctrl-rzn1.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/renesas/pinctrl-rzn1.c b/drivers/pinctrl/renes= as/pinctrl-rzn1.c index 374b9f281324..4b2f107824fe 100644 --- a/drivers/pinctrl/renesas/pinctrl-rzn1.c +++ b/drivers/pinctrl/renesas/pinctrl-rzn1.c @@ -920,13 +920,11 @@ static int rzn1_pinctrl_probe(struct platform_device = *pdev) return ret; } =20 -static int rzn1_pinctrl_remove(struct platform_device *pdev) +static void rzn1_pinctrl_remove(struct platform_device *pdev) { struct rzn1_pinctrl *ipctl =3D platform_get_drvdata(pdev); =20 clk_disable_unprepare(ipctl->clk); - - return 0; } =20 static const struct of_device_id rzn1_pinctrl_match[] =3D { @@ -937,7 +935,7 @@ MODULE_DEVICE_TABLE(of, rzn1_pinctrl_match); =20 static struct platform_driver rzn1_pinctrl_driver =3D { .probe =3D rzn1_pinctrl_probe, - .remove =3D rzn1_pinctrl_remove, + .remove_new =3D rzn1_pinctrl_remove, .driver =3D { .name =3D "rzn1-pinctrl", .of_match_table =3D rzn1_pinctrl_match, --=20 2.40.1 From nobody Fri Jan 2 19:07:28 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 5383DE95A9D for ; Mon, 9 Oct 2023 09:23:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345782AbjJIJXJ (ORCPT ); Mon, 9 Oct 2023 05:23:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41808 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345834AbjJIJW5 (ORCPT ); Mon, 9 Oct 2023 05:22:57 -0400 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F31BCFE for ; Mon, 9 Oct 2023 02:22:44 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qpmTH-0006vZ-4e; Mon, 09 Oct 2023 11:22:39 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qpmTG-000NXa-Ht; Mon, 09 Oct 2023 11:22:38 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qpmTG-00C4q3-8r; Mon, 09 Oct 2023 11:22:38 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Linus Walleij Cc: Yangtao Li , Andy Shevchenko , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 20/20] pinctrl: ti: ti-iodelay: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:56 +0200 Message-Id: <20231009083856.222030-21-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1968; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=E5trTcRoNSwSyEuUHcMDaOFkPpFFcP6BQycpHwUzrnM=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wWYc+w238a15MR82zLPaznFyBypGE4m0Mmw nFuEvoswv6JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8FgAKCRCPgPtYfRL+ TlQ6B/sF69klNLh4E/ZW1+7VqRXSYhnFlh058WXmc5u+eyGTwVlcZveJj5Wcq5ZnMF4YQlwlnvu egigIqMUrsIX2itLv/9KzyKGwhpa8gc0K1gbHgO+ONIXeLh/3zZ356IqS7VhyHqlLbTAg1Lhdk3 9gsxd752UUJ2Dy0mCWNK4ac+eUnb6UWjKF5b6xeUxai2NtQT6hDFOcgyEhOqo+5k8NygG5ZleZB FQGLsYAafpXpagasU9NInkHJge1t5QTrWwj4AAFk50ounnR98wsW/Aw9XLSM1L5GuvbkOTiUFlQ QeXRcTCQv6IjBJI8MKFj3K1DBRaZ1ZpkyS/Vpdviq71he9oD X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pinctrl/ti/pinctrl-ti-iodelay.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/pinctrl/ti/pinctrl-ti-iodelay.c b/drivers/pinctrl/ti/p= inctrl-ti-iodelay.c index f3a273562095..0ac2548ca68d 100644 --- a/drivers/pinctrl/ti/pinctrl-ti-iodelay.c +++ b/drivers/pinctrl/ti/pinctrl-ti-iodelay.c @@ -896,10 +896,8 @@ static int ti_iodelay_probe(struct platform_device *pd= ev) /** * ti_iodelay_remove() - standard remove * @pdev: platform device - * - * Return: 0 if all went fine, else appropriate error value. */ -static int ti_iodelay_remove(struct platform_device *pdev) +static void ti_iodelay_remove(struct platform_device *pdev) { struct ti_iodelay_device *iod =3D platform_get_drvdata(pdev); =20 @@ -909,13 +907,11 @@ static int ti_iodelay_remove(struct platform_device *= pdev) ti_iodelay_pinconf_deinit_dev(iod); =20 /* Expect other allocations to be freed by devm */ - - return 0; } =20 static struct platform_driver ti_iodelay_driver =3D { .probe =3D ti_iodelay_probe, - .remove =3D ti_iodelay_remove, + .remove_new =3D ti_iodelay_remove, .driver =3D { .name =3D DRIVER_NAME, .of_match_table =3D ti_iodelay_of_match, --=20 2.40.1