From nobody Mon Dec 15 03:05:53 2025 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 69C3FE810A2 for ; Wed, 27 Sep 2023 08:11:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230330AbjI0ILu (ORCPT ); Wed, 27 Sep 2023 04:11:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33088 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230168AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 7E5A81B5 for ; Wed, 27 Sep 2023 01:10:54 -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 1qlPd8-0007vI-Rl; Wed, 27 Sep 2023 10:10:46 +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 1qlPd8-009I6r-9x; Wed, 27 Sep 2023 10:10:46 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd8-005BQ6-0m; Wed, 27 Sep 2023 10:10:46 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: Guenter Roeck , chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 01/27] platform/chrome: cros_ec_chardev: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:14 +0200 Message-Id: <20230927081040.2198742-2-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1833; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=Xe6M9G5oHpj29v0p0F+j+Zzzp8VU3j+XZbTFtKR2XC8=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NeiBb7JrW4zkLm/SiYb1HpuFi88VxguMriX 3i2w3k/Yj6JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjXgAKCRCPgPtYfRL+ TlPRB/9V/q+9Nu1bDmwLd4eMhIr7+4mEjxDJyZoypCumo78BRHLbXeRwy6q1aqMW/jZ9OLbUIQg aX5tkB3jkFdlCobZquUz+DBkjI375NRCmhSLCxxys2lhREZZnlfwdg3VOmFWM09apLwKa1t0XIe 06/g3lm7O6kJCiz72NP6qcPBtNfraWJ4OxIAAMKJLfsCfDQTzulmNEq0WneqTN/rl5fKiAJpIbx IV33lsVXIdtDxxRmmaFF0UpSpXbVmklUoYAmum5ZEHcDqKTIkOhCICFmtMHSiiKp/1DSQyFMUvz V1VvsWmO1bjFBo7IneI4dY5C9WfZA3FFhPjC7g18/zccoiv/ 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/platform/chrome/cros_ec_chardev.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_chardev.c b/drivers/platform/c= hrome/cros_ec_chardev.c index d6de5a294128..81950bb2c6da 100644 --- a/drivers/platform/chrome/cros_ec_chardev.c +++ b/drivers/platform/chrome/cros_ec_chardev.c @@ -396,13 +396,11 @@ static int cros_ec_chardev_probe(struct platform_devi= ce *pdev) return misc_register(&data->misc); } =20 -static int cros_ec_chardev_remove(struct platform_device *pdev) +static void cros_ec_chardev_remove(struct platform_device *pdev) { struct chardev_data *data =3D dev_get_drvdata(&pdev->dev); =20 misc_deregister(&data->misc); - - return 0; } =20 static struct platform_driver cros_ec_chardev_driver =3D { @@ -410,7 +408,7 @@ static struct platform_driver cros_ec_chardev_driver = =3D { .name =3D DRV_NAME, }, .probe =3D cros_ec_chardev_probe, - .remove =3D cros_ec_chardev_remove, + .remove_new =3D cros_ec_chardev_remove, }; =20 module_platform_driver(cros_ec_chardev_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 193CBE810A3 for ; Wed, 27 Sep 2023 08:11:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230273AbjI0ILM (ORCPT ); Wed, 27 Sep 2023 04:11:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33040 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230185AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 44A181A5 for ; Wed, 27 Sep 2023 01:10:53 -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 1qlPd8-0007vJ-Sw; Wed, 27 Sep 2023 10:10:46 +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 1qlPd8-009I6u-FO; Wed, 27 Sep 2023 10:10:46 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd8-005BQ9-65; Wed, 27 Sep 2023 10:10:46 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: Guenter Roeck , chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 02/27] platform/chrome: cros_ec_debugfs: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:15 +0200 Message-Id: <20230927081040.2198742-3-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1906; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=RVm8Wdz9Q6CnBZemItiakkOT9n5aPdyjBNWm3I6HY+c=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NfjPNWqXOBMQ5/PjYP/1aJLOB8pO9m/bGEH +7hRgy6jXuJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjXwAKCRCPgPtYfRL+ TnSXB/4qcuZlqjIVUNIEnCj/w7OquDZWxrEQqF1SMDmuOB+0yDri/5C8xlZccSRZNNvzmBykGrS b83hSmuFoc6kFspKloGJuiBqcTlKhnu+abCJMDIQ040C9XyXO8Oo0w7pMNrj4w89Jx5w1gvaDIT BeFMikNOlGDTobFQf94yy+i8MbhJwREQJt4muLSwg8a4cN3L7jZ/sWY118pcW9nizwI170I1EsT 2fiYscI0cBHRqcb1YLUkrcllUK/1wFHTKk7HCRbo5LIFl9Tcqbr78Vi7bnHpYJU+7r/IsAJwUQu X0/iATJXFUXFLO8y7lEu3BF8iRSxnNBAAmjZhMzKDT0+bMg1 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/platform/chrome/cros_ec_debugfs.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_debugfs.c b/drivers/platform/c= hrome/cros_ec_debugfs.c index c876120e0ebc..091fdc154d79 100644 --- a/drivers/platform/chrome/cros_ec_debugfs.c +++ b/drivers/platform/chrome/cros_ec_debugfs.c @@ -533,14 +533,12 @@ static int cros_ec_debugfs_probe(struct platform_devi= ce *pd) return ret; } =20 -static int cros_ec_debugfs_remove(struct platform_device *pd) +static void cros_ec_debugfs_remove(struct platform_device *pd) { struct cros_ec_dev *ec =3D dev_get_drvdata(pd->dev.parent); =20 debugfs_remove_recursive(ec->debug_info->dir); cros_ec_cleanup_console_log(ec->debug_info); - - return 0; } =20 static int __maybe_unused cros_ec_debugfs_suspend(struct device *dev) @@ -573,7 +571,7 @@ static struct platform_driver cros_ec_debugfs_driver = =3D { .probe_type =3D PROBE_PREFER_ASYNCHRONOUS, }, .probe =3D cros_ec_debugfs_probe, - .remove =3D cros_ec_debugfs_remove, + .remove_new =3D cros_ec_debugfs_remove, }; =20 module_platform_driver(cros_ec_debugfs_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 59FFFE810A3 for ; Wed, 27 Sep 2023 08:11:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230293AbjI0ILs (ORCPT ); Wed, 27 Sep 2023 04:11:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35238 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230198AbjI0ILA (ORCPT ); Wed, 27 Sep 2023 04:11:00 -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 F04F6CC4 for ; Wed, 27 Sep 2023 01:10:55 -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 1qlPd9-0007vL-1t; Wed, 27 Sep 2023 10:10:47 +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 1qlPd8-009I6x-Ka; Wed, 27 Sep 2023 10:10:46 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd8-005BQD-Ba; Wed, 27 Sep 2023 10:10:46 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: Guenter Roeck , chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 03/27] platform/chrome: cros_ec_lightbar: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:16 +0200 Message-Id: <20230927081040.2198742-4-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1998; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=Tfs5gi7h7v1Dwa3H1JCi2pH6aHZKCdFVdfdoZK+EHJA=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NgCQKHZFj5mqOwyG6uYKFEWnnxsQRTVtbJ1 /YmRJcnkKyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjYAAKCRCPgPtYfRL+ TgEwB/4iiOJeH8c8mxCUWtYw9NVWS834cnqPM7W8mzvLCpmz/PHR4fvj9Px95xRvwOn/gWJfVWY 0WJySnZFHYiQIZ8reBiJw3DqVIh4Ka7byTW7+8kaClQKd9HA/ZaDdD/xGpm37Xgg+GsH1Awaq/7 sAeVd3eLLzYDNQ9gisnGhwP/t4cM8/7l0Ar8Txf1OvpbmiPbXDvQFYtKAU74U5fC14uzxwwyRxX 5lr1Qn8xTvimqO6QJXGJlWB8xnkLCJJAbkug0UiVHXDGyd9axwUlgiwvNelul4yGeQY96ACVXQA 21HaoxUcIbf1ZkmsU0XZFgUvdAA+8P9/59MD48ZzjMkXoyMN 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/platform/chrome/cros_ec_lightbar.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_lightbar.c b/drivers/platform/= chrome/cros_ec_lightbar.c index 376425bbd8ff..6677cc6c4984 100644 --- a/drivers/platform/chrome/cros_ec_lightbar.c +++ b/drivers/platform/chrome/cros_ec_lightbar.c @@ -560,7 +560,7 @@ static int cros_ec_lightbar_probe(struct platform_devic= e *pd) return ret; } =20 -static int cros_ec_lightbar_remove(struct platform_device *pd) +static void cros_ec_lightbar_remove(struct platform_device *pd) { struct cros_ec_dev *ec_dev =3D dev_get_drvdata(pd->dev.parent); =20 @@ -569,8 +569,6 @@ static int cros_ec_lightbar_remove(struct platform_devi= ce *pd) =20 /* Let the EC take over the lightbar again. */ lb_manual_suspend_ctrl(ec_dev, 0); - - return 0; } =20 static int __maybe_unused cros_ec_lightbar_resume(struct device *dev) @@ -603,7 +601,7 @@ static struct platform_driver cros_ec_lightbar_driver = =3D { .probe_type =3D PROBE_PREFER_ASYNCHRONOUS, }, .probe =3D cros_ec_lightbar_probe, - .remove =3D cros_ec_lightbar_remove, + .remove_new =3D cros_ec_lightbar_remove, }; =20 module_platform_driver(cros_ec_lightbar_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 18B34E810A6 for ; Wed, 27 Sep 2023 08:11:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230269AbjI0ILJ (ORCPT ); Wed, 27 Sep 2023 04:11:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35214 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230188AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 36E4B1B0 for ; Wed, 27 Sep 2023 01:10:54 -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 1qlPd9-0007vd-6k; Wed, 27 Sep 2023 10:10:47 +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 1qlPd8-009I70-Q2; Wed, 27 Sep 2023 10:10:46 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd8-005BQH-Gr; Wed, 27 Sep 2023 10:10:46 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: Guenter Roeck , chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 04/27] platform/chrome: cros_ec_lpc: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:17 +0200 Message-Id: <20230927081040.2198742-5-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1943; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=UaQf0aOVJXiwdHwFWYo4P0yhmaqn5f73vpG9iCiRQPg=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+Nh8vWZtz/iFdllV5+D+P+cfjaMU6C4DQ7d0 /+1D3PLh0SJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjYQAKCRCPgPtYfRL+ Tp3FB/9lOQ/A452SjdzNZdgRv/RkGyVoKEua5t6iB3pV5YLNbs3o2QgaowqnxYbDooMVrzKIIOC ENs6k+iT0W+SnomZwuyUsry1H63YYawHFMk3OIgS/yJZRdyA3xaoOlqauVsYCqFYTFPgbqvH+Nw JY8zcKh6+bA6qQVBOWOyzXdSUf9+CCaWZn/xWS4XgseRDpKY5ZC7rdO2/CHUWip619zYnjGxbEL qwUuEAKtcQtvim/fRwpkazLjcI3WvTN2UgboVMcdMELLI2BTY5UiEPGRTf6xjDe04OvB91G+JF6 hDbptCQ6gTQTafv427EjajEyQZzOLqw5PCmZ95Cv9zODuDdi 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/platform/chrome/cros_ec_lpc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_lpc.c b/drivers/platform/chrom= e/cros_ec_lpc.c index 356572452898..897090f0f26e 100644 --- a/drivers/platform/chrome/cros_ec_lpc.c +++ b/drivers/platform/chrome/cros_ec_lpc.c @@ -460,7 +460,7 @@ static int cros_ec_lpc_probe(struct platform_device *pd= ev) return 0; } =20 -static int cros_ec_lpc_remove(struct platform_device *pdev) +static void cros_ec_lpc_remove(struct platform_device *pdev) { struct cros_ec_device *ec_dev =3D platform_get_drvdata(pdev); struct acpi_device *adev; @@ -471,8 +471,6 @@ static int cros_ec_lpc_remove(struct platform_device *p= dev) cros_ec_lpc_acpi_notify); =20 cros_ec_unregister(ec_dev); - - return 0; } =20 static const struct acpi_device_id cros_ec_lpc_acpi_device_ids[] =3D { @@ -580,7 +578,7 @@ static struct platform_driver cros_ec_lpc_driver =3D { .probe_type =3D PROBE_FORCE_SYNCHRONOUS, }, .probe =3D cros_ec_lpc_probe, - .remove =3D cros_ec_lpc_remove, + .remove_new =3D cros_ec_lpc_remove, }; =20 static struct platform_device cros_ec_lpc_device =3D { --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 9A2FDE810A2 for ; Wed, 27 Sep 2023 08:11:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230292AbjI0ILS (ORCPT ); Wed, 27 Sep 2023 04:11:18 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35278 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230163AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 7E3011B4 for ; Wed, 27 Sep 2023 01:10:54 -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 1qlPd9-0007vn-C3; Wed, 27 Sep 2023 10:10:47 +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 1qlPd8-009I74-VK; Wed, 27 Sep 2023 10:10:46 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd8-005BQL-ME; Wed, 27 Sep 2023 10:10:46 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: Guenter Roeck , chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 05/27] platform/chrome: cros_ec_sysfs: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:18 +0200 Message-Id: <20230927081040.2198742-6-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1817; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=3lSPxCFD1tq2Ndhu8Jm0oL7exa9/6adrI2DF9CzQxXU=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NjqLUjcpZ/13xJOpHxVYPPQ90yw5MvqynGX Z7ANlesk5mJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjYwAKCRCPgPtYfRL+ TvANB/wN94PSnE599Yi2EgxmuAfZ8Xt73/1wNxy0lVQ9MmStcdFSGyHLEX5clucwN0JZmgUyTCi +kTEfx8aga1vcRzMQzg5oj/5rIkyJQkKoCLzCyRVkXuerH1H6jAJGG3PYw1xSkuupahpUjxiAQm fkwvtCnsL4ECsZsnTCV6L1rOrqmY38vGcmwS2cMGJV5ijn1i6/WAmb0fpLd5uiy/JxLN1L4TpUs 08QwyB6JbNN0zg525GrajEFTFbjbKNqyMAx+b2t//GraRUc2Bp9z0qXQ6zF0d8WdRLsihGlzfsl EjYVVS/2oGW6WXR1QDIUVp+Y2Ed5Bn4tdgfBNQz/BSO7WmUe 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/platform/chrome/cros_ec_sysfs.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_sysfs.c b/drivers/platform/chr= ome/cros_ec_sysfs.c index 09e3bf5e8ec6..93e67ab4af06 100644 --- a/drivers/platform/chrome/cros_ec_sysfs.c +++ b/drivers/platform/chrome/cros_ec_sysfs.c @@ -340,13 +340,11 @@ static int cros_ec_sysfs_probe(struct platform_device= *pd) return ret; } =20 -static int cros_ec_sysfs_remove(struct platform_device *pd) +static void cros_ec_sysfs_remove(struct platform_device *pd) { struct cros_ec_dev *ec_dev =3D dev_get_drvdata(pd->dev.parent); =20 sysfs_remove_group(&ec_dev->class_dev.kobj, &cros_ec_attr_group); - - return 0; } =20 static struct platform_driver cros_ec_sysfs_driver =3D { @@ -354,7 +352,7 @@ static struct platform_driver cros_ec_sysfs_driver =3D { .name =3D DRV_NAME, }, .probe =3D cros_ec_sysfs_probe, - .remove =3D cros_ec_sysfs_remove, + .remove_new =3D cros_ec_sysfs_remove, }; =20 module_platform_driver(cros_ec_sysfs_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 93967E810A6 for ; Wed, 27 Sep 2023 08:11:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230334AbjI0ILZ (ORCPT ); Wed, 27 Sep 2023 04:11:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33080 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230191AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 7E62C1B6 for ; Wed, 27 Sep 2023 01:10:54 -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 1qlPd9-0007vx-Hi; Wed, 27 Sep 2023 10:10:47 +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 1qlPd9-009I78-4c; Wed, 27 Sep 2023 10:10:47 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd8-005BQP-Rv; Wed, 27 Sep 2023 10:10:46 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: Guenter Roeck , chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 06/27] platform/chrome: cros_ec_vbc: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:19 +0200 Message-Id: <20230927081040.2198742-7-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1801; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=pRAFLcjtBRkjAHFm0hdN5Z1Edd3V/IN+r+RHfA3N/cI=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NknKE5ENkvfTD1DnSisbqpVw7SmCWcyCB/y o/2TihxkEqJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjZAAKCRCPgPtYfRL+ TphwB/90LVptfTjJ6jikR/SzCxT9BZNEfHxziPKECJUhxG8bsif93ilg1HxOl+2mCRXa44k7z/J M84fKFNYRo8WFJs7J2HOQWAMiDtxcOsVNo/ts6rSI4qbuHJJsFITqtnHsZyWxViKWNiBtj4P9M9 HUanRLmZ2V+A3UfSypt3uk4/Opel6bK20O6U3KGaB1x22/HWnPk93y7RKPAwuFqpirhMmsWGD0R +Rfd97eGQQKVwRpkGJyT2cZiZbq7ACAGUv9JYCgVIsHpLDbKZx43Ddi/X349LJZZJeSkUvF5pHn BC6QZl3O1zz0JnsKRweYCxF4pMG3fM27dc+Jxe9KtJBZWZYy 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/platform/chrome/cros_ec_vbc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_ec_vbc.c b/drivers/platform/chrom= e/cros_ec_vbc.c index c859c862d7ac..2e4af10c7679 100644 --- a/drivers/platform/chrome/cros_ec_vbc.c +++ b/drivers/platform/chrome/cros_ec_vbc.c @@ -121,14 +121,12 @@ static int cros_ec_vbc_probe(struct platform_device *= pd) return ret; } =20 -static int cros_ec_vbc_remove(struct platform_device *pd) +static void cros_ec_vbc_remove(struct platform_device *pd) { struct cros_ec_dev *ec_dev =3D dev_get_drvdata(pd->dev.parent); =20 sysfs_remove_group(&ec_dev->class_dev.kobj, &cros_ec_vbc_attr_group); - - return 0; } =20 static struct platform_driver cros_ec_vbc_driver =3D { @@ -136,7 +134,7 @@ static struct platform_driver cros_ec_vbc_driver =3D { .name =3D DRV_NAME, }, .probe =3D cros_ec_vbc_probe, - .remove =3D cros_ec_vbc_remove, + .remove_new =3D cros_ec_vbc_remove, }; =20 module_platform_driver(cros_ec_vbc_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 93491E810A3 for ; Wed, 27 Sep 2023 08:11:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230200AbjI0ILj (ORCPT ); Wed, 27 Sep 2023 04:11:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35232 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230193AbjI0ILA (ORCPT ); Wed, 27 Sep 2023 04:11:00 -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 6B35B1BD for ; Wed, 27 Sep 2023 01:10:55 -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 1qlPd9-0007w7-Nv; Wed, 27 Sep 2023 10:10:47 +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 1qlPd9-009I7D-Ah; Wed, 27 Sep 2023 10:10:47 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd9-005BQT-1m; Wed, 27 Sep 2023 10:10:47 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Prashant Malani , Benson Leung , Tzung-Bi Shih Cc: chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 07/27] platform/chrome: cros_typec_switch: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:20 +0200 Message-Id: <20230927081040.2198742-8-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1884; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=apwdajEkBtcz1JyrpEsZ4Sy0crzZ/8cLvtcXTlSY44Q=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NlOZvTbEbzfEvNTwTHvGtIkJoSZGWTHt9rb yc/d3LGIRKJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjZQAKCRCPgPtYfRL+ TlUXB/4l0vgezcHrQ+T7WnUcbW5ahMqeimC7Cp1K+nnAcKjZnaC7Z0kznQrT4O5kdE9fdPJIblD FovOU+zgMs/AMd4bv9tFYBwwgVK8TWFsBSILh/h2hU1YJ0DBtRtYvWv3IjQPvTjSj9PLpVbUHZx /98pDno9jyifGThEAoB16/yLQMDK5JDN6qlCSTtLuTDmZf09dbsBpTd6O4K+P5oucwJOcithevI m7x2Wi8fY8Eqw8w3rlbvPiY7vfJz1b0rfcr3hat1yTn4BNhluGTMq1fuXdH2lfmYe49mKMXdCIA YjBnlei/N6jb6saikr4H+Sorw24Kp40LRS429Q54rpypTedD 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: Prashant Malani --- drivers/platform/chrome/cros_typec_switch.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/platform/chrome/cros_typec_switch.c b/drivers/platform= /chrome/cros_typec_switch.c index 0eefdcf14d63..07a19386dc4e 100644 --- a/drivers/platform/chrome/cros_typec_switch.c +++ b/drivers/platform/chrome/cros_typec_switch.c @@ -297,12 +297,11 @@ static int cros_typec_switch_probe(struct platform_de= vice *pdev) return cros_typec_register_switches(sdata); } =20 -static int cros_typec_switch_remove(struct platform_device *pdev) +static void cros_typec_switch_remove(struct platform_device *pdev) { struct cros_typec_switch_data *sdata =3D platform_get_drvdata(pdev); =20 cros_typec_unregister_switches(sdata); - return 0; } =20 #ifdef CONFIG_ACPI @@ -319,7 +318,7 @@ static struct platform_driver cros_typec_switch_driver = =3D { .acpi_match_table =3D ACPI_PTR(cros_typec_switch_acpi_id), }, .probe =3D cros_typec_switch_probe, - .remove =3D cros_typec_switch_remove, + .remove_new =3D cros_typec_switch_remove, }; =20 module_platform_driver(cros_typec_switch_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 C6CCAE810A3 for ; Wed, 27 Sep 2023 08:11:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230249AbjI0ILp (ORCPT ); Wed, 27 Sep 2023 04:11:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33124 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230174AbjI0ILA (ORCPT ); Wed, 27 Sep 2023 04:11:00 -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 F0115CC0 for ; Wed, 27 Sep 2023 01:10:55 -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 1qlPd9-0007wR-W6; Wed, 27 Sep 2023 10:10:48 +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 1qlPd9-009I7H-HW; Wed, 27 Sep 2023 10:10:47 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd9-005BQY-8S; Wed, 27 Sep 2023 10:10:47 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih Cc: chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 08/27] platform/chrome: cros_usbpd_logger: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:21 +0200 Message-Id: <20230927081040.2198742-9-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1915; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=OR3i3JXD2RroVrhEaYXFvH7Zyx63QW9KL3sGpWCOSHI=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NmcnjMJd1YF7F9Gmo1cKEwJETNMDNXQ8MpI +/rkZ4CkG2JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjZgAKCRCPgPtYfRL+ TsedCACLo1awQfxrjnzfeCY8rAFtLXItTZBOhX68W7MhGBIue8KMiomkwzPEc4QO2EGPuHyBJgc LEP/AZ56sPA9AGaWsxnQcswD0DN2d0rKTQZrMONwkPrnf2ba5avG+mhOLWbVs3FN4aAbx9gj8Sj M7ZbJnExojsGA6df6k1o5sZtaYh1vaOftfre8XIn7A1c2Tw0fv4BzUsrYYpA6Su2qhGNtvZrTi+ zEQ+8DaALtH/U6mOIGuLgjEBNwBVdzanKp9WBp+yamwv2JRQxcg7ZnwYEfIlCHT2TYtg69YwJfE rgkWghOhE7zWiSQg1zZPqW4RspRoLL2GDNfOtf9gFNq5Wciu 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/platform/chrome/cros_usbpd_logger.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/cros_usbpd_logger.c b/drivers/platform= /chrome/cros_usbpd_logger.c index d16931203d82..f618757f8b32 100644 --- a/drivers/platform/chrome/cros_usbpd_logger.c +++ b/drivers/platform/chrome/cros_usbpd_logger.c @@ -219,14 +219,12 @@ static int cros_usbpd_logger_probe(struct platform_de= vice *pd) return 0; } =20 -static int cros_usbpd_logger_remove(struct platform_device *pd) +static void cros_usbpd_logger_remove(struct platform_device *pd) { struct logger_data *logger =3D platform_get_drvdata(pd); =20 cancel_delayed_work_sync(&logger->log_work); destroy_workqueue(logger->log_workqueue); - - return 0; } =20 static int __maybe_unused cros_usbpd_logger_resume(struct device *dev) @@ -257,7 +255,7 @@ static struct platform_driver cros_usbpd_logger_driver = =3D { .pm =3D &cros_usbpd_logger_pm_ops, }, .probe =3D cros_usbpd_logger_probe, - .remove =3D cros_usbpd_logger_remove, + .remove_new =3D cros_usbpd_logger_remove, }; =20 module_platform_driver(cros_usbpd_logger_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 A7741E810A3 for ; Wed, 27 Sep 2023 08:11:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230285AbjI0ILP (ORCPT ); Wed, 27 Sep 2023 04:11:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33064 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230129AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 B88361B7 for ; Wed, 27 Sep 2023 01:10:54 -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 1qlPdA-0007xR-6v; Wed, 27 Sep 2023 10:10:48 +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 1qlPd9-009I7L-NV; Wed, 27 Sep 2023 10:10:47 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd9-005BQc-EN; Wed, 27 Sep 2023 10:10:47 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Prashant Malani , Benson Leung , Tzung-Bi Shih Cc: chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 09/27] platform/chrome: cros_usbpd_notify: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:22 +0200 Message-Id: <20230927081040.2198742-10-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=2938; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=hSEWunQsqDf9o0Gu7AfSQmYYAjV96zrpal7gSYkj2l4=; b=owGbwMvMwMXY3/A7olbonx/jabUkhlThx+mvgrMFV7z2kFm3lCWlqUUko8Tb9XNgf4xJXc53x 8o9hs86GY1ZGBi5GGTFFFnsG9dkWlXJRXau/XcZZhArE8gUBi5OAZgIXwoHww5lvfVq5s91rYw2 x50wyvB+cPb/0kUpLMvKcktr906p1+eKS/v37OqaWPWtN49Py+T57ZnAXm2zMOPi9zjJA4IiprL n5709uyBX45XgdLMtTtN2zcs4HL/MxcuxS+rShh0X/907rP/nY/f1YFa+Xu/fM7nqjAWrjUVs9n gWKD81/s80W+705U7RnY0ParolE8v/frYvrjnOvGCapJbmgU3Mp5rWp07ac3OeW4m7+/rsbYs2R 0i/OhGdpv+gz2NFV2af4mYTHXb+yBKbqdsL1c8HyGmo6Xas81hluPRByUouaW3zhe0O+zy3PeVv dv68KE9w1c8VaXeDJ8Snayxu6+05bmC1SlBGYI4Iz5qJAA== 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: Prashant Malani --- drivers/platform/chrome/cros_usbpd_notify.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/drivers/platform/chrome/cros_usbpd_notify.c b/drivers/platform= /chrome/cros_usbpd_notify.c index 10670b6588e3..aacad022f21d 100644 --- a/drivers/platform/chrome/cros_usbpd_notify.c +++ b/drivers/platform/chrome/cros_usbpd_notify.c @@ -134,15 +134,13 @@ static int cros_usbpd_notify_probe_acpi(struct platfo= rm_device *pdev) return 0; } =20 -static int cros_usbpd_notify_remove_acpi(struct platform_device *pdev) +static void cros_usbpd_notify_remove_acpi(struct platform_device *pdev) { struct device *dev =3D &pdev->dev; struct acpi_device *adev =3D ACPI_COMPANION(dev); =20 acpi_remove_notify_handler(adev->handle, ACPI_ALL_NOTIFY, cros_usbpd_notify_acpi); - - return 0; } =20 static const struct acpi_device_id cros_usbpd_notify_acpi_device_ids[] =3D= { @@ -157,7 +155,7 @@ static struct platform_driver cros_usbpd_notify_acpi_dr= iver =3D { .acpi_match_table =3D cros_usbpd_notify_acpi_device_ids, }, .probe =3D cros_usbpd_notify_probe_acpi, - .remove =3D cros_usbpd_notify_remove_acpi, + .remove_new =3D cros_usbpd_notify_remove_acpi, }; =20 #endif /* CONFIG_ACPI */ @@ -209,7 +207,7 @@ static int cros_usbpd_notify_probe_plat(struct platform= _device *pdev) return 0; } =20 -static int cros_usbpd_notify_remove_plat(struct platform_device *pdev) +static void cros_usbpd_notify_remove_plat(struct platform_device *pdev) { struct device *dev =3D &pdev->dev; struct cros_ec_dev *ecdev =3D dev_get_drvdata(dev->parent); @@ -218,8 +216,6 @@ static int cros_usbpd_notify_remove_plat(struct platfor= m_device *pdev) =20 blocking_notifier_chain_unregister(&ecdev->ec_dev->event_notifier, &pdnotify->nb); - - return 0; } =20 static struct platform_driver cros_usbpd_notify_plat_driver =3D { @@ -227,7 +223,7 @@ static struct platform_driver cros_usbpd_notify_plat_dr= iver =3D { .name =3D DRV_NAME, }, .probe =3D cros_usbpd_notify_probe_plat, - .remove =3D cros_usbpd_notify_remove_plat, + .remove_new =3D cros_usbpd_notify_remove_plat, }; =20 static int __init cros_usbpd_notify_init(void) --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 64A7DE810A4 for ; Wed, 27 Sep 2023 08:22:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230403AbjI0ILb (ORCPT ); Wed, 27 Sep 2023 04:11:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33000 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230192AbjI0IK7 (ORCPT ); Wed, 27 Sep 2023 04:10:59 -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 4CCD11BB for ; Wed, 27 Sep 2023 01:10:55 -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 1qlPdA-00080D-RB; Wed, 27 Sep 2023 10:10:48 +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 1qlPd9-009I7P-Vi; Wed, 27 Sep 2023 10:10:47 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd9-005BQg-MV; Wed, 27 Sep 2023 10:10:47 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih , Guenter Roeck , Brian Norris Cc: chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 10/27] platform/chrome/wilco_ec: core: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:23 +0200 Message-Id: <20230927081040.2198742-11-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1940; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=ErTBgUVBzAoUk5cH94Ob31zJEYM2LgwwmCXualZPhgg=; b=owGbwMvMwMXY3/A7olbonx/jabUkhlThxxmfEz5LascytexPrvRqs/8+7eD1S0ZyPJxbCj67h 3vmHnHsZDRmYWDkYpAVU2Sxb1yTaVUlF9m59t9lmEGsTCBTGLg4BWAiT4LY/8orBVcvZNkt+buI 93Dtqxz1Wh71Ah11/Z9M0ZmsrL4Pnn48tFCqS83TIjt0gmfo8p97GPWfPjzfZ+0fXBN3upwvzKH kqdH2ZUf/Lo2bZ/fw3IVnW7pUl22v0qlfd7+/X1qtN32vUk9n89V/wbGNaZFzZ00sSbobzfik5L Kl4K5pNz8X9buIPKrZprPfr+2zY4q+q4zZvNXO79vT5DotNa43HZryeun7GskPNSkpz1h2rBc3X Lv5M1P8BVNRfcbChXzvHuSWLZdjfis9L8MjsevK9cK/OQ6nZvRvfXuT1zv1LvMS5+Ssjo898Z2K pkf1uuNzAuateDCT76LknyvRdULhDiv3q195sDat/WkCAA== 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/platform/chrome/wilco_ec/core.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/platform/chrome/wilco_ec/core.c b/drivers/platform/chr= ome/wilco_ec/core.c index d6a994bdc182..9b59a1bed286 100644 --- a/drivers/platform/chrome/wilco_ec/core.c +++ b/drivers/platform/chrome/wilco_ec/core.c @@ -132,7 +132,7 @@ static int wilco_ec_probe(struct platform_device *pdev) return ret; } =20 -static int wilco_ec_remove(struct platform_device *pdev) +static void wilco_ec_remove(struct platform_device *pdev) { struct wilco_ec_device *ec =3D platform_get_drvdata(pdev); =20 @@ -142,7 +142,6 @@ static int wilco_ec_remove(struct platform_device *pdev) platform_device_unregister(ec->rtc_pdev); if (ec->debugfs_pdev) platform_device_unregister(ec->debugfs_pdev); - return 0; } =20 static const struct acpi_device_id wilco_ec_acpi_device_ids[] =3D { @@ -157,7 +156,7 @@ static struct platform_driver wilco_ec_driver =3D { .acpi_match_table =3D wilco_ec_acpi_device_ids, }, .probe =3D wilco_ec_probe, - .remove =3D wilco_ec_remove, + .remove_new =3D wilco_ec_remove, }; =20 module_platform_driver(wilco_ec_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 7C329E810A3 for ; Wed, 27 Sep 2023 08:12:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230332AbjI0IMg (ORCPT ); Wed, 27 Sep 2023 04:12:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33040 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230210AbjI0ILH (ORCPT ); Wed, 27 Sep 2023 04:11:07 -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 53B051BB for ; Wed, 27 Sep 2023 01:11:04 -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 1qlPdB-00081z-8y; Wed, 27 Sep 2023 10:10:49 +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 1qlPdA-009I7T-6z; Wed, 27 Sep 2023 10:10:48 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPd9-005BQk-Tu; Wed, 27 Sep 2023 10:10:47 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih , Zhengkang Huang , Dongliang Mu Cc: chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 11/27] platform/chrome/wilco_ec: debugfs: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:24 +0200 Message-Id: <20230927081040.2198742-12-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1771; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=bdoY/EtxbzwGac07X7QaXwCA5t1k2AQDGRrpm1QXcFY=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NqvJA6HQaG3wjrRzTg5qUXDxciOD4p/u8Io H+ZbLvmskiJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjagAKCRCPgPtYfRL+ Ti+cB/oDTY0N5rzLT7v1Lf+32NNSBMke3xMTEuFylY+/55IpS3H8pe0o6vOI7lxiG1ZAQFHzcdq xgG+BVpp+Knl/ZtIoU5KeOpLhVIxrHBN0Ct+2h6jKH0ibrwaAsJm9t5ps/8XaRF9kYr5UdtkDrv F0E2JTIfg28prv/MpX/AR5b3ceFq8tVw79lWPCP1fwMeJYX2DGJvdj+i7BvX2pZA7zCuLjnH2x8 WYaUlZPkPxZ5xqwf50GXR2e0RdfZszlF+GjUkU/gK1YQH7yOGSKG30uyPsdIQKSkSaZn6TKVSIm 53KsZkhiRVIlIO3FS14kTK/s0Z0f89vQucQdWt9DdxB9cJTi 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/platform/chrome/wilco_ec/debugfs.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/wilco_ec/debugfs.c b/drivers/platform/= chrome/wilco_ec/debugfs.c index 7a13f13b16cd..93c11f81ca45 100644 --- a/drivers/platform/chrome/wilco_ec/debugfs.c +++ b/drivers/platform/chrome/wilco_ec/debugfs.c @@ -260,11 +260,9 @@ static int wilco_ec_debugfs_probe(struct platform_devi= ce *pdev) return 0; } =20 -static int wilco_ec_debugfs_remove(struct platform_device *pdev) +static void wilco_ec_debugfs_remove(struct platform_device *pdev) { debugfs_remove_recursive(debug_info->dir); - - return 0; } =20 static struct platform_driver wilco_ec_debugfs_driver =3D { @@ -272,7 +270,7 @@ static struct platform_driver wilco_ec_debugfs_driver = =3D { .name =3D DRV_NAME, }, .probe =3D wilco_ec_debugfs_probe, - .remove =3D wilco_ec_debugfs_remove, + .remove_new =3D wilco_ec_debugfs_remove, }; =20 module_platform_driver(wilco_ec_debugfs_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 2B643E810A3 for ; Wed, 27 Sep 2023 08:11:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230206AbjI0ILn (ORCPT ); Wed, 27 Sep 2023 04:11:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33100 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230196AbjI0ILA (ORCPT ); Wed, 27 Sep 2023 04:11:00 -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 662001BC for ; Wed, 27 Sep 2023 01:10:55 -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 1qlPdB-00082w-94; Wed, 27 Sep 2023 10:10:49 +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 1qlPdA-009I7X-Cv; Wed, 27 Sep 2023 10:10:48 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdA-005BQo-3z; Wed, 27 Sep 2023 10:10:48 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Benson Leung , Tzung-Bi Shih , Greg Kroah-Hartman Cc: chrome-platform@lists.linux.dev, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 12/27] platform/chrome/wilco_ec: telemetry: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:25 +0200 Message-Id: <20230927081040.2198742-13-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1794; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=49ld1JhVzgaDQZfMoKqFWG6KmV/4hCWeK0rFORIEYVg=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+Nr8n7BQCGsykVZITS7s6/ahZU543slwD9v0 /FLaGic9FSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjawAKCRCPgPtYfRL+ TpZhB/4t7XGbohjP5wIzeFerTgLgJlW5MNt4VJYnj06gyfUWS4TSaP4k1wHzsVzKuAlD+8S770q +szZwk/iajBIUKZQrvw2kwA+xFZ+J+nF7FUDnbtjA1RQwY533GOe7pBriSGpL+IeINvpTh+RAHW fJpZaXLnEonUENT34a5g5jfKr3JwaCmgW+UNcNwxbQ+8SIZa0PgxUxoEe7/9wmA13kzf/4M7kXv 1ImWQwJgRC1kl7AfZP6SQqt2PbZwQrDNSEhw98E8q13MqZDZhGGXjnCnEXaxnToHUYkstyyDJkP /kxMrmy3+FTi3bveCg1RjTFr3nmmozjwhxo2d8r/dnXpO1Bv 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/platform/chrome/wilco_ec/telemetry.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/chrome/wilco_ec/telemetry.c b/drivers/platfor= m/chrome/wilco_ec/telemetry.c index 54708aa6c700..253098bace63 100644 --- a/drivers/platform/chrome/wilco_ec/telemetry.c +++ b/drivers/platform/chrome/wilco_ec/telemetry.c @@ -400,20 +400,18 @@ static int telem_device_probe(struct platform_device = *pdev) return 0; } =20 -static int telem_device_remove(struct platform_device *pdev) +static void telem_device_remove(struct platform_device *pdev) { struct telem_device_data *dev_data =3D platform_get_drvdata(pdev); =20 cdev_device_del(&dev_data->cdev, &dev_data->dev); ida_simple_remove(&telem_ida, MINOR(dev_data->dev.devt)); put_device(&dev_data->dev); - - return 0; } =20 static struct platform_driver telem_driver =3D { .probe =3D telem_device_probe, - .remove =3D telem_device_remove, + .remove_new =3D telem_device_remove, .driver =3D { .name =3D DRV_NAME, }, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 12192E810A2 for ; Wed, 27 Sep 2023 08:11:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230234AbjI0ILD (ORCPT ); Wed, 27 Sep 2023 04:11:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35232 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230175AbjI0IK6 (ORCPT ); Wed, 27 Sep 2023 04:10: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 DEAD512A for ; Wed, 27 Sep 2023 01:10:51 -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 1qlPdB-00083Z-EP; Wed, 27 Sep 2023 10:10:49 +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 1qlPdA-009I7a-Jm; Wed, 27 Sep 2023 10:10:48 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdA-005BQs-Am; Wed, 27 Sep 2023 10:10:48 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Cc: linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 13/27] platform/goldfish: goldfish_pipe: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:26 +0200 Message-Id: <20230927081040.2198742-14-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1905; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=QeacHySmLaSZwS4xv2VjUTNG5lxJx5Ahhg2kUai976k=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NskI5magjLJvAzI649X2BCIEtkDSx9kzDxw Pked5WH/TyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjbAAKCRCPgPtYfRL+ TvS7B/9uwhB8OnSp/LX4SLmiltKqjgHDbHyxd2lEVp/8ay4EsFwAYgYIp4sJ86zBenBFAeUT1hv mTnubm0CozLwHWyTaXvPGsK6QAvp+3WrW0eJQzhDucSxa+fO0RC2lgrnMsiW4GBFUCX2pCo9FGA gaakqKVWyZQsuVRYK2heRKEf25FYOmEwpImWPA4r5/vfIo9L55xjKsPkTaZ87os0gRtLBg4/vpX vdd1TjzXFA57MmvqXUZm9WgtmqCMUhfVKvF7tQSiuf/pOZ9GuRD1gamadVpDtMc8bFch9dlCREp 6+b7wmy1iBp3BnMnNyRrghmIM6A6n29geO9QpQGdOPJzEXGN 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 To: unlisted-recipients:; (no To-header on input) 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/platform/goldfish/goldfish_pipe.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/platform/goldfish/goldfish_pipe.c b/drivers/platform/g= oldfish/goldfish_pipe.c index 7737d56191d7..061aa9647c19 100644 --- a/drivers/platform/goldfish/goldfish_pipe.c +++ b/drivers/platform/goldfish/goldfish_pipe.c @@ -915,12 +915,11 @@ static int goldfish_pipe_probe(struct platform_device= *pdev) return goldfish_pipe_device_init(pdev, dev); } =20 -static int goldfish_pipe_remove(struct platform_device *pdev) +static void goldfish_pipe_remove(struct platform_device *pdev) { struct goldfish_pipe_dev *dev =3D platform_get_drvdata(pdev); =20 goldfish_pipe_device_deinit(pdev, dev); - return 0; } =20 static const struct acpi_device_id goldfish_pipe_acpi_match[] =3D { @@ -937,7 +936,7 @@ MODULE_DEVICE_TABLE(of, goldfish_pipe_of_match); =20 static struct platform_driver goldfish_pipe_driver =3D { .probe =3D goldfish_pipe_probe, - .remove =3D goldfish_pipe_remove, + .remove_new =3D goldfish_pipe_remove, .driver =3D { .name =3D "goldfish_pipe", .of_match_table =3D goldfish_pipe_of_match, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 B3141E810A2 for ; Wed, 27 Sep 2023 08:12:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230418AbjI0IMN (ORCPT ); Wed, 27 Sep 2023 04:12:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33278 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230190AbjI0ILD (ORCPT ); Wed, 27 Sep 2023 04:11:03 -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 C2B1DCE6 for ; Wed, 27 Sep 2023 01:10:59 -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 1qlPdB-000842-KG; Wed, 27 Sep 2023 10:10:49 +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 1qlPdA-009I7d-Px; Wed, 27 Sep 2023 10:10:48 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdA-005BQw-GX; Wed, 27 Sep 2023 10:10:48 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross , Vadim Pasternak Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 14/27] platform/mellanox: mlxbf-bootctl: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:27 +0200 Message-Id: <20230927081040.2198742-15-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1712; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=+Ir65hE13KMzfZwrYtgBOwv1Y990W+ZpXu4su6/aAis=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NtbwIJLSwu+ovYaCgB85EMrNNoExGsUEWKY 6yvz4UDZqOJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjbQAKCRCPgPtYfRL+ TgO1B/9lVJPfewfvrMAYbtIWl/9JsCA65yFxAjoW5m7TDXDyWVMWjotZ8pMTKxX+tb2u3mOwxki VjwCNniI3AjB5msfEMqnwoxbSEDo00zeVmwkYxTQDMJqmMMlnpfVoMAb62GZj21ly7WnDWbCABx xFtOEEjXLJcdAGuNKdibWtTKeU5U9W61cSshP/jfQ0/VGnOti3AsMTRGE/n/LM2rSkNVWpBnUVs SB3EvZIPIub/KgAoiOrCHzi8IwYSwkRWM6I19WU68zAb6OGJLMGw8QR2eCG8F1BJnhnql/isi2x JhD2phvWkXnbT2k3+HwLrDn/FrRsS826fmGoEw7CX6ZNPAqx 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/platform/mellanox/mlxbf-bootctl.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/mellanox/mlxbf-bootctl.c b/drivers/platform/m= ellanox/mlxbf-bootctl.c index 4ee7bb431b7c..1ac7dab22c63 100644 --- a/drivers/platform/mellanox/mlxbf-bootctl.c +++ b/drivers/platform/mellanox/mlxbf-bootctl.c @@ -1028,17 +1028,15 @@ static int mlxbf_bootctl_probe(struct platform_devi= ce *pdev) return ret; } =20 -static int mlxbf_bootctl_remove(struct platform_device *pdev) +static void mlxbf_bootctl_remove(struct platform_device *pdev) { sysfs_remove_bin_file(&pdev->dev.kobj, &mlxbf_bootctl_bootfifo_sysfs_attr); - - return 0; } =20 static struct platform_driver mlxbf_bootctl_driver =3D { .probe =3D mlxbf_bootctl_probe, - .remove =3D mlxbf_bootctl_remove, + .remove_new =3D mlxbf_bootctl_remove, .driver =3D { .name =3D "mlxbf-bootctl", .dev_groups =3D mlxbf_bootctl_groups, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 20A29E810A3 for ; Wed, 27 Sep 2023 08:12:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230458AbjI0IMX (ORCPT ); Wed, 27 Sep 2023 04:12:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33114 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230236AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 6A5A4192 for ; Wed, 27 Sep 2023 01:11:00 -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 1qlPdB-00084H-Vo; Wed, 27 Sep 2023 10:10:49 +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 1qlPdA-009I7h-W5; Wed, 27 Sep 2023 10:10:49 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdA-005BR0-Mr; Wed, 27 Sep 2023 10:10:48 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross , Vadim Pasternak Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 15/27] platform/mellanox: mlxbf-tmfifo: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:28 +0200 Message-Id: <20230927081040.2198742-16-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=CxjrzFzEkM6O7z80cNwT5EXT0bqldk5XDjLUTnuR0Y0=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NuMm1KeBgObA5wqP/oMc1QGazphFC29+aTn seP42tD4gqJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjbgAKCRCPgPtYfRL+ TjIwB/4xndkYpQ+BvWFG8bVLBguRWGmAkFUJDqI5N74Z2ObmukEKyraFnnmO1r1lJ2ii9Nk2lnn X8s7u/n9zMb41hlp5UfsvtmoW1yN2xj69NFrf0GL+7xtzlEHzdTgkSPQbT1nxfLIOzgfJlQiVzJ iONvs33bN909TfnUw0Ecg1J1X9kLNSCvMM5g97kzdJVqMPzTcvSRy8beyb/rA3yXWrUYVqmz7Yr qYvPnxl5RmgTAHmednfhLnZTYXJNO5jlMQU9IAaNiRwr7LrnXo/wy88P2/Y5IkYrIk31EktNflg tt95oGMo2opbb9SjOW7YpYGafkmHQXbcbFboYwjA23AcBh74 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/platform/mellanox/mlxbf-tmfifo.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/mellanox/mlxbf-tmfifo.c b/drivers/platform/me= llanox/mlxbf-tmfifo.c index f3696a54a2bd..69729ba8f505 100644 --- a/drivers/platform/mellanox/mlxbf-tmfifo.c +++ b/drivers/platform/mellanox/mlxbf-tmfifo.c @@ -1361,13 +1361,11 @@ static int mlxbf_tmfifo_probe(struct platform_devic= e *pdev) } =20 /* Device remove function. */ -static int mlxbf_tmfifo_remove(struct platform_device *pdev) +static void mlxbf_tmfifo_remove(struct platform_device *pdev) { struct mlxbf_tmfifo *fifo =3D platform_get_drvdata(pdev); =20 mlxbf_tmfifo_cleanup(fifo); - - return 0; } =20 static const struct acpi_device_id mlxbf_tmfifo_acpi_match[] =3D { @@ -1378,7 +1376,7 @@ MODULE_DEVICE_TABLE(acpi, mlxbf_tmfifo_acpi_match); =20 static struct platform_driver mlxbf_tmfifo_driver =3D { .probe =3D mlxbf_tmfifo_probe, - .remove =3D mlxbf_tmfifo_remove, + .remove_new =3D mlxbf_tmfifo_remove, .driver =3D { .name =3D "bf-tmfifo", .acpi_match_table =3D mlxbf_tmfifo_acpi_match, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 D9179E810A2 for ; Wed, 27 Sep 2023 08:12:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230384AbjI0IMC (ORCPT ); Wed, 27 Sep 2023 04:12:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33246 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230228AbjI0ILC (ORCPT ); Wed, 27 Sep 2023 04:11:02 -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 C13E9CE1 for ; Wed, 27 Sep 2023 01:10:58 -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 1qlPdC-00084s-5c; Wed, 27 Sep 2023 10:10:50 +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 1qlPdB-009I7k-6e; Wed, 27 Sep 2023 10:10:49 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdA-005BR4-Tm; Wed, 27 Sep 2023 10:10:48 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross , Vadim Pasternak Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 16/27] platform/mellanox: mlxreg-hotplug: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:29 +0200 Message-Id: <20230927081040.2198742-17-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1906; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=E1EtfCdvL5BCirg1ur2IQNU7vZ4qAkjOL+kP2gKTw5k=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NwG78MBx7tIkqC0uEqWcAFKkqlNa6mtOqO4 7ZcwyBcivqJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjcAAKCRCPgPtYfRL+ TueMB/9v6Xjw8xEB+p3Dh7cgTDM6mL9o/iJBzTm8P8CT94rpzvYE60KNf23G/De+bVPcqLc9e1L bnNli0nmcvP9RtX6OF12QVH/lTzK3x+ewvATcCyrBICqj2df1ltRMgQsRcIX6F3KzGBkFx/XddR UxMQ002pmDF1TUPn8YT/8ZFctwqzryeOzHMaM43Z0ai1BLU4c8G9PGer71+B8s6XX1FjJ8BykOa SxVron71EW1qP+ak5bSYRcCFfh/39pMKMYAqXDhDSoeSJo/VhI9P+zJZGFrNCmz/gz7pvYeF1e7 Z3tE2I16yy/r1BnVuTAXeoW+ahEo/rZaQ1s42A0UuavgpDPL 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/platform/mellanox/mlxreg-hotplug.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/mellanox/mlxreg-hotplug.c b/drivers/platform/= mellanox/mlxreg-hotplug.c index eb5ad35274dd..5c022b258f91 100644 --- a/drivers/platform/mellanox/mlxreg-hotplug.c +++ b/drivers/platform/mellanox/mlxreg-hotplug.c @@ -786,15 +786,13 @@ static int mlxreg_hotplug_probe(struct platform_devic= e *pdev) return 0; } =20 -static int mlxreg_hotplug_remove(struct platform_device *pdev) +static void mlxreg_hotplug_remove(struct platform_device *pdev) { struct mlxreg_hotplug_priv_data *priv =3D dev_get_drvdata(&pdev->dev); =20 /* Clean interrupts setup. */ mlxreg_hotplug_unset_irq(priv); devm_free_irq(&pdev->dev, priv->irq, priv); - - return 0; } =20 static struct platform_driver mlxreg_hotplug_driver =3D { @@ -802,7 +800,7 @@ static struct platform_driver mlxreg_hotplug_driver =3D= { .name =3D "mlxreg-hotplug", }, .probe =3D mlxreg_hotplug_probe, - .remove =3D mlxreg_hotplug_remove, + .remove_new =3D mlxreg_hotplug_remove, }; =20 module_platform_driver(mlxreg_hotplug_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 94043E810A2 for ; Wed, 27 Sep 2023 08:12:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230126AbjI0IM2 (ORCPT ); Wed, 27 Sep 2023 04:12:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35238 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230238AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 985641A8 for ; Wed, 27 Sep 2023 01:11:01 -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 1qlPdC-00085h-5f; Wed, 27 Sep 2023 10:10:50 +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 1qlPdB-009I7p-DJ; Wed, 27 Sep 2023 10:10:49 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdB-005BR8-40; Wed, 27 Sep 2023 10:10:49 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross , Vadim Pasternak Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 17/27] platform/mellanox: mlxreg-io: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:30 +0200 Message-Id: <20230927081040.2198742-18-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1748; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=W1A4okYNik1VMgJpJLoBZFEE+DlDZ2qN4h6QATaBCC4=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+Nxthg5Ec1AQ5v355kFCMJJ81EwvWpNdy6Ea fI7RfQySLyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjcQAKCRCPgPtYfRL+ Tg/qB/wJX8G3HE0qqXOb9ERJi68xtzC2i1a+W9RDR+4APiDhliH6rE7GesPvO/MumZIkUOuoviU gPDp9kYrqTBTiseLDrlp4InyXLXouMtVlmgN4Cvuuj6FpVhiW22T0pYdODxXmcrNPSnvYrqGrLF mB6tqWZnfiB/pvKbja0YrVQhrfminKhUgBlKSF2jGjky2VLwgyqgw6E34Kwfuf7iIk8ghivGUh1 K3cxZmsZ5l1P2pNUtwFTJE92rejSB5ojYAyKsMwBOaJP/qm0oQvYIUz7/FajJTyfwbywO1jJ9nk oJqOUqu4ZT0UCZjzmjozuS9cW2VJyoBp7WiygWy4sIp/TquW 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/platform/mellanox/mlxreg-io.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/mellanox/mlxreg-io.c b/drivers/platform/mella= nox/mlxreg-io.c index 83ba037408cd..ee7bd623ba44 100644 --- a/drivers/platform/mellanox/mlxreg-io.c +++ b/drivers/platform/mellanox/mlxreg-io.c @@ -263,13 +263,11 @@ static int mlxreg_io_probe(struct platform_device *pd= ev) return 0; } =20 -static int mlxreg_io_remove(struct platform_device *pdev) +static void mlxreg_io_remove(struct platform_device *pdev) { struct mlxreg_io_priv_data *priv =3D dev_get_drvdata(&pdev->dev); =20 mutex_destroy(&priv->io_lock); - - return 0; } =20 static struct platform_driver mlxreg_io_driver =3D { @@ -277,7 +275,7 @@ static struct platform_driver mlxreg_io_driver =3D { .name =3D "mlxreg-io", }, .probe =3D mlxreg_io_probe, - .remove =3D mlxreg_io_remove, + .remove_new =3D mlxreg_io_remove, }; =20 module_platform_driver(mlxreg_io_driver); --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 9F647E810A3 for ; Wed, 27 Sep 2023 08:12:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230433AbjI0IMR (ORCPT ); Wed, 27 Sep 2023 04:12:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33284 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230243AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 B8D3819F for ; Wed, 27 Sep 2023 01:11:00 -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 1qlPdC-00086H-Ct; Wed, 27 Sep 2023 10:10:50 +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 1qlPdB-009I7u-Jh; Wed, 27 Sep 2023 10:10:49 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdB-005BRC-AM; Wed, 27 Sep 2023 10:10:49 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross , Vadim Pasternak Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 18/27] platform/mellanox: mlxreg-lc: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:31 +0200 Message-Id: <20230927081040.2198742-19-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=2109; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=OgebHyJ1o+cakI4Sj28nDr13s9jhvV2dMgyHvpitWxQ=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NyGqwa6XJjBwLMBt7Pdf+hattOnrde7yDsd 71DtewBv0+JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjcgAKCRCPgPtYfRL+ Tp3SB/4jwksQ8EhV3Nuh3lkJZhSyHogXAPjwyPD1wGV7NPFab/t2cFXfYdlwFQt9SOHaQDXlbp0 0Y2o8ZOFaCG+oI87zAc9896w+T/BtGClnvhp43y8Cr5UY7+KNTyPZTypTbAitzAiZYs1r0FaArt f9VyJMWxxgEdlsNn1xPLwL6kVKBe1WEpWkVq2t+Ic/ciDZoDki34aSKZOMqHHykz6tcPQWubMtJ donb5xxPfH2aUfQ/ADU2x2iaxjWpnpAmnftznwesz3rDr1Jy01VYd4szC3TgcJQ66nsE0ELAfgF tnCsrHtc4PgmbF7tgenjfqda1H4xSoMhyhiksDXXXbvgHhbd 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/platform/mellanox/mlxreg-lc.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/platform/mellanox/mlxreg-lc.c b/drivers/platform/mella= nox/mlxreg-lc.c index 8d833836a6d3..43d119e3a473 100644 --- a/drivers/platform/mellanox/mlxreg-lc.c +++ b/drivers/platform/mellanox/mlxreg-lc.c @@ -907,7 +907,7 @@ static int mlxreg_lc_probe(struct platform_device *pdev) return err; } =20 -static int mlxreg_lc_remove(struct platform_device *pdev) +static void mlxreg_lc_remove(struct platform_device *pdev) { struct mlxreg_core_data *data =3D dev_get_platdata(&pdev->dev); struct mlxreg_lc *mlxreg_lc =3D platform_get_drvdata(pdev); @@ -921,7 +921,7 @@ static int mlxreg_lc_remove(struct platform_device *pde= v) * is nothing to remove. */ if (!data->notifier || !data->notifier->handle) - return 0; + return; =20 /* Clear event notification callback and handle. */ data->notifier->user_handler =3D NULL; @@ -940,13 +940,11 @@ static int mlxreg_lc_remove(struct platform_device *p= dev) i2c_put_adapter(data->hpdev.adapter); data->hpdev.adapter =3D NULL; } - - return 0; } =20 static struct platform_driver mlxreg_lc_driver =3D { .probe =3D mlxreg_lc_probe, - .remove =3D mlxreg_lc_remove, + .remove_new =3D mlxreg_lc_remove, .driver =3D { .name =3D "mlxreg-lc", }, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 8C288E810A2 for ; Wed, 27 Sep 2023 08:12:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230202AbjI0IMa (ORCPT ); Wed, 27 Sep 2023 04:12:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33294 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230245AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 C2EAC136 for ; Wed, 27 Sep 2023 01:11:00 -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 1qlPdC-00086t-Jn; Wed, 27 Sep 2023 10:10:50 +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 1qlPdB-009I7y-QL; Wed, 27 Sep 2023 10:10:49 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdB-005BRG-H4; Wed, 27 Sep 2023 10:10:49 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross , Vadim Pasternak Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 19/27] platform/mellanox: nvsw-sn2201: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:32 +0200 Message-Id: <20230927081040.2198742-20-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=2047; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=6XfHk0S7bPOzQoL6+8JJudU1CUxgDhv75KyTmedpZUw=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+NzWIGN/61OxNnBHOlQieO5BOjJVQ2TaOhNX iAEfMwuXiOJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjcwAKCRCPgPtYfRL+ TmI+B/4weiDZumoyGKba8bd4q0TK/I1+YV8rcG4ye97HqiBQ5ZF0vpggBZSSoHvyT3HyCccblJS wUZ/r1gPvOlJ2itBa+UySAtoAwwXKUEmP014qU4GGFN3pLL6u8kIKX11gkINJylWdAK0yZ747JT 55unsHgiUKSiqgeke7PiOy7lwuzwjrQktjbr7bf4WfjGm9cSXYmOxM7d6+USokuKWXAMrv+9Fbi JJhEN/aMGpxCxH5+R4m3E5g4JtGi/rqq7RhAkdEvHkWllgNNeqMu6NoIoSJTIyMfTrIU732GK+Q THruy2dF3ffrYZY4qibyYdJoT/EKNOLwdz69i5oH7HR9CX0H 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/platform/mellanox/nvsw-sn2201.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/mellanox/nvsw-sn2201.c b/drivers/platform/mel= lanox/nvsw-sn2201.c index 75b699676ca6..3ef655591424 100644 --- a/drivers/platform/mellanox/nvsw-sn2201.c +++ b/drivers/platform/mellanox/nvsw-sn2201.c @@ -1217,7 +1217,7 @@ static int nvsw_sn2201_probe(struct platform_device *= pdev) return nvsw_sn2201_config_pre_init(nvsw_sn2201); } =20 -static int nvsw_sn2201_remove(struct platform_device *pdev) +static void nvsw_sn2201_remove(struct platform_device *pdev) { struct nvsw_sn2201 *nvsw_sn2201 =3D platform_get_drvdata(pdev); =20 @@ -1239,8 +1239,6 @@ static int nvsw_sn2201_remove(struct platform_device = *pdev) /* Unregister I2C controller. */ if (nvsw_sn2201->pdev_i2c) platform_device_unregister(nvsw_sn2201->pdev_i2c); - - return 0; } =20 static const struct acpi_device_id nvsw_sn2201_acpi_ids[] =3D { @@ -1252,7 +1250,7 @@ MODULE_DEVICE_TABLE(acpi, nvsw_sn2201_acpi_ids); =20 static struct platform_driver nvsw_sn2201_driver =3D { .probe =3D nvsw_sn2201_probe, - .remove =3D nvsw_sn2201_remove, + .remove_new =3D nvsw_sn2201_remove, .driver =3D { .name =3D "nvsw-sn2201", .acpi_match_table =3D nvsw_sn2201_acpi_ids, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 C8CE8E810A4 for ; Wed, 27 Sep 2023 08:11:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230341AbjI0ILz (ORCPT ); Wed, 27 Sep 2023 04:11:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33234 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230226AbjI0ILC (ORCPT ); Wed, 27 Sep 2023 04:11:02 -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 B7B29CE0 for ; Wed, 27 Sep 2023 01:10:58 -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 1qlPdC-00087e-Ts; Wed, 27 Sep 2023 10:10:50 +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 1qlPdC-009I82-41; Wed, 27 Sep 2023 10:10:50 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdB-005BRK-Qc; Wed, 27 Sep 2023 10:10:49 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 20/27] platform/x86/intel: bytcrc_pwrsrc: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:33 +0200 Message-Id: <20230927081040.2198742-21-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1684; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=IkF+lDlwkjN6K0Pm182MURz1DLLLDEBB1BOOwDNN+eI=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N0lNm/++rcZ9gWDa7GNwRypiCKj8esDvynT KCcU7W4EoeJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjdAAKCRCPgPtYfRL+ TkW7B/9s2E//wds1uDhEk2MGJH2TzzUldIFG09J+/gHRo8cFr/zCPNzESt1KHw7RVz3uPyx142/ pKH8U1eWocchJGhZQYnZjJhxWK2p7H+7CGQ4oOmI09Uae6mAPkyvcepx3VGhlMH9Jq3Rmu8u7vX +l5L0LWDRv7oNHfEdIEkoWCjXqIZNpK6LrbHsfZFG9sTDSbKa8y1X5Qt5hQJfHODnHC/+3Y0776 py7RCpYIfPBjqux0SIVG4vEot8rL8UG5JYMvKAN+zAateFbIikZZLnO/fh6qY8fdLz479G4RbUI CDBR0cK+aViC04gtWxMtxLJjc9Mjm03PrK+YziQtXaC6ccC4 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/platform/x86/intel/bytcrc_pwrsrc.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/platform/x86/intel/bytcrc_pwrsrc.c b/drivers/platform/= x86/intel/bytcrc_pwrsrc.c index 8a022b90d12d..418b71af27ff 100644 --- a/drivers/platform/x86/intel/bytcrc_pwrsrc.c +++ b/drivers/platform/x86/intel/bytcrc_pwrsrc.c @@ -158,17 +158,16 @@ static int crc_pwrsrc_probe(struct platform_device *p= dev) return 0; } =20 -static int crc_pwrsrc_remove(struct platform_device *pdev) +static void crc_pwrsrc_remove(struct platform_device *pdev) { struct crc_pwrsrc_data *data =3D platform_get_drvdata(pdev); =20 debugfs_remove_recursive(data->debug_dentry); - return 0; } =20 static struct platform_driver crc_pwrsrc_driver =3D { .probe =3D crc_pwrsrc_probe, - .remove =3D crc_pwrsrc_remove, + .remove_new =3D crc_pwrsrc_remove, .driver =3D { .name =3D "crystal_cove_pwrsrc", }, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 7E888E810A2 for ; Wed, 27 Sep 2023 08:12:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230446AbjI0IMI (ORCPT ); Wed, 27 Sep 2023 04:12:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35278 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230229AbjI0ILC (ORCPT ); Wed, 27 Sep 2023 04:11:02 -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 B76F0193 for ; Wed, 27 Sep 2023 01:10:58 -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 1qlPdD-00088U-6A; Wed, 27 Sep 2023 10:10:51 +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 1qlPdC-009I86-Bi; Wed, 27 Sep 2023 10:10:50 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdC-005BRO-2L; Wed, 27 Sep 2023 10:10:50 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Vadim Pasternak , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 21/27] platform/x86: mlx-platform: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:34 +0200 Message-Id: <20230927081040.2198742-22-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1872; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=ILwP6aWMlmrtZMvtX94OUtej0Lbs5BrrWeR7MH34P5I=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N1hK4xqTWZzb0wX5RGhN9DfoJrNIMYbqrjv ZwMFb84pqmJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjdQAKCRCPgPtYfRL+ TnDNCAC1bBjNG/Jzg+Ikvd+wXLT+hFG5iiOSoxvDjI+umm43Idt+j8Ih/NrtB/JiJHTuqRxaUVe 74nsieW0qMgNMmWyxjnQ/3sX+dm4Yr80X0Vy2Qn0XpcSyDmmNBRpdbFnbJy/ubljDw+umb/TSj0 CZQdsqOlxmL3zTaAQlw/sH0xIep3cmF1e9eqJlxlRa/fwq7M8FLJ1BWJ4Yt0ssaicF7tPeeiodl GoY9CgsYX+16Im+rvThqd2q6OcuqBs7CJiyjcVjw/qAVQ0wSnLTMsDUD12VrUph304JMlFsuSQW bF0bzMem4yI2wkSw68GMlaE6EYel5Smxz/jIUppOJ3tuQmjF 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/platform/x86/mlx-platform.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/platform/x86/mlx-platform.c b/drivers/platform/x86/mlx= -platform.c index 3d96dbf79a72..03ccadee35d0 100644 --- a/drivers/platform/x86/mlx-platform.c +++ b/drivers/platform/x86/mlx-platform.c @@ -6606,7 +6606,7 @@ static int mlxplat_probe(struct platform_device *pdev) return err; } =20 -static int mlxplat_remove(struct platform_device *pdev) +static void mlxplat_remove(struct platform_device *pdev) { struct mlxplat_priv *priv =3D platform_get_drvdata(mlxplat_dev); =20 @@ -6617,7 +6617,6 @@ static int mlxplat_remove(struct platform_device *pde= v) mlxplat_pre_exit(priv); mlxplat_i2c_main_exit(priv); mlxplat_post_exit(); - return 0; } =20 static const struct acpi_device_id mlxplat_acpi_table[] =3D { @@ -6633,7 +6632,7 @@ static struct platform_driver mlxplat_driver =3D { .probe_type =3D PROBE_FORCE_SYNCHRONOUS, }, .probe =3D mlxplat_probe, - .remove =3D mlxplat_remove, + .remove_new =3D mlxplat_remove, }; =20 static int __init mlxplat_init(void) --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 D8F17E810A2 for ; Wed, 27 Sep 2023 08:12:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230250AbjI0IMd (ORCPT ); Wed, 27 Sep 2023 04:12:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33012 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230237AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 A7745199 for ; Wed, 27 Sep 2023 01:10:59 -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 1qlPdD-00088l-69; Wed, 27 Sep 2023 10:10:51 +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 1qlPdC-009I8B-Hp; Wed, 27 Sep 2023 10:10:50 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdC-005BRS-8f; Wed, 27 Sep 2023 10:10:50 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 22/27] platform/x86: sel3350-platform: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:35 +0200 Message-Id: <20230927081040.2198742-23-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1935; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=kGFT7lS86ctdmmkMpaZWg5zGeyf+eOIqmv/jUI2LUYo=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N2rxvqD+lA8wv6scmPkLhb0cJvvDgUq/DRH HywXQsx0qGJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjdgAKCRCPgPtYfRL+ ThxjCAC277WBTJ7ekvWUxkUJM+++B0FDDI0JW1ZCzWsDhRKXQ++9l2dq64Eqsc5CKqxZtsejGEr obgo10zU1xjeUNB9knrcx/+e5Qi8W9Uls0bwXxwIzFIc545sTE3rWjTO3pOQqDgRz4cOSFBH1Ea tCcY7JrSH3nh13VWr863FYmD8VTP88FfOzNZ72N7WDQI+WWL8F6PXHjAysggzy9E7fJUc8oEkMs l97t4x6qIrJ/pT1q1tZC0cPml5bAcuw3cu+NhkzcAtYWySHR3QvUtxaA3NSDHnYHBZihAfyVbG8 77HEsW+4M7RNYvoRBFIs2uDQg5HUFZqkNoDy4HXMFBRflF+/ 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/platform/x86/sel3350-platform.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/sel3350-platform.c b/drivers/platform/x86= /sel3350-platform.c index fa267d0d3778..d09e976e7148 100644 --- a/drivers/platform/x86/sel3350-platform.c +++ b/drivers/platform/x86/sel3350-platform.c @@ -218,15 +218,13 @@ static int sel3350_probe(struct platform_device *pdev) return rs; } =20 -static int sel3350_remove(struct platform_device *pdev) +static void sel3350_remove(struct platform_device *pdev) { struct sel3350_data *sel3350 =3D platform_get_drvdata(pdev); =20 platform_device_unregister(sel3350->leds_pdev); gpiod_remove_lookup_table(&sel3350_gpios_table); gpiod_remove_lookup_table(&sel3350_leds_table); - - return 0; } =20 static const struct acpi_device_id sel3350_device_ids[] =3D { @@ -237,7 +235,7 @@ MODULE_DEVICE_TABLE(acpi, sel3350_device_ids); =20 static struct platform_driver sel3350_platform_driver =3D { .probe =3D sel3350_probe, - .remove =3D sel3350_remove, + .remove_new =3D sel3350_remove, .driver =3D { .name =3D "sel3350-platform", .acpi_match_table =3D sel3350_device_ids, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 47E15E810A3 for ; Wed, 27 Sep 2023 08:12:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230291AbjI0IMr (ORCPT ); Wed, 27 Sep 2023 04:12:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33088 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230169AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 A77C619A for ; Wed, 27 Sep 2023 01:10:59 -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 1qlPdD-000892-Gs; Wed, 27 Sep 2023 10:10:51 +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 1qlPdC-009I8F-Pf; Wed, 27 Sep 2023 10:10:50 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdC-005BRV-GP; Wed, 27 Sep 2023 10:10:50 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Gerd Haeussler , Xing Tong Wu , Tobias Schaffner , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 23/27] platform/x86/siemens: simatic-ipc-batt: Simplify simatic_ipc_batt_remove() Date: Wed, 27 Sep 2023 10:10:36 +0200 Message-Id: <20230927081040.2198742-24-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=4474; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=uUXb4B5hrdHXmnbVK9GlXIsjnQhNbsw+/k4ukKVrWu0=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N4kwnW/Gz1Hb8gOU61vNE7HtCRpVAF86OF/ M/C+6XRZvCJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjeAAKCRCPgPtYfRL+ TtseCACj0gQGeWiU0bRMvJ1gQPadWXcVIyxZ4FslwgDU1A1vYNjJrY7VDOKI2mf0WkCbiKzXMbj SRZEgEzPHToBhNmn5N8wVr2myrOHnM3b+dGZOcayR8ivOixBtHJFOdcwDFGyO0jNy1HK3WJ3e4U Zk+4C+9r6OziCcGW8ng5UqLLqvUHX3blw/TmP7o9XLPNrdUpQv+VM6MVRwYLeDCEWfYPG6hgSdD piaO23kG367PShsCxsSOLsz9ajcC29glH3Jm+szb28udEIjW3+ruzGShE9Gt+aw0qoWYvnb/cHi nbm6wBjeqog2eVq5XEkcTNIGZKmGKABbarxe8m5DwNeOd+qA 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 Instead of unconditionally returning zero, let simatic_ipc_batt_remove() return no value. This is a preparation to convert the drivers using this function to struct platform_driver::remove_new(). Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c | 4 +++- .../platform/x86/siemens/simatic-ipc-batt-elkhartlake.c | 4 +++- drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c | 4 +++- drivers/platform/x86/siemens/simatic-ipc-batt.c | 7 ++++--- drivers/platform/x86/siemens/simatic-ipc-batt.h | 4 ++-- 5 files changed, 15 insertions(+), 8 deletions(-) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c b/d= rivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c index 8a67979d8f96..3e22a6bc9118 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c @@ -27,7 +27,9 @@ static struct gpiod_lookup_table simatic_ipc_batt_gpio_ta= ble_127e =3D { =20 static int simatic_ipc_batt_apollolake_remove(struct platform_device *pdev) { - return simatic_ipc_batt_remove(pdev, &simatic_ipc_batt_gpio_table_127e); + simatic_ipc_batt_remove(pdev, &simatic_ipc_batt_gpio_table_127e); + + return 0; } =20 static int simatic_ipc_batt_apollolake_probe(struct platform_device *pdev) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c b/= drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c index 607d033911a2..9e08c659f27d 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c @@ -27,7 +27,9 @@ static struct gpiod_lookup_table simatic_ipc_batt_gpio_ta= ble_bx_21a =3D { =20 static int simatic_ipc_batt_elkhartlake_remove(struct platform_device *pde= v) { - return simatic_ipc_batt_remove(pdev, &simatic_ipc_batt_gpio_table_bx_21a); + simatic_ipc_batt_remove(pdev, &simatic_ipc_batt_gpio_table_bx_21a); + + return 0; } =20 static int simatic_ipc_batt_elkhartlake_probe(struct platform_device *pdev) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c b/drive= rs/platform/x86/siemens/simatic-ipc-batt-f7188x.c index a66107e0fe1e..19c302a68911 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c @@ -47,7 +47,9 @@ static struct gpiod_lookup_table simatic_ipc_batt_gpio_ta= ble_bx_59a =3D { =20 static int simatic_ipc_batt_f7188x_remove(struct platform_device *pdev) { - return simatic_ipc_batt_remove(pdev, batt_lookup_table); + simatic_ipc_batt_remove(pdev, batt_lookup_table); + + return 0; } =20 static int simatic_ipc_batt_f7188x_probe(struct platform_device *pdev) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt.c b/drivers/plat= form/x86/siemens/simatic-ipc-batt.c index ef28c806b383..07cd4944de32 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt.c @@ -146,10 +146,9 @@ static const struct hwmon_chip_info simatic_ipc_batt_c= hip_info =3D { .info =3D simatic_ipc_batt_info, }; =20 -int simatic_ipc_batt_remove(struct platform_device *pdev, struct gpiod_loo= kup_table *table) +void simatic_ipc_batt_remove(struct platform_device *pdev, struct gpiod_lo= okup_table *table) { gpiod_remove_lookup_table(table); - return 0; } EXPORT_SYMBOL_GPL(simatic_ipc_batt_remove); =20 @@ -230,7 +229,9 @@ EXPORT_SYMBOL_GPL(simatic_ipc_batt_probe); =20 static int simatic_ipc_batt_io_remove(struct platform_device *pdev) { - return simatic_ipc_batt_remove(pdev, NULL); + simatic_ipc_batt_remove(pdev, NULL); + + return 0; } =20 static int simatic_ipc_batt_io_probe(struct platform_device *pdev) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt.h b/drivers/plat= form/x86/siemens/simatic-ipc-batt.h index 4545cd3e3026..89891db26a2c 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt.h +++ b/drivers/platform/x86/siemens/simatic-ipc-batt.h @@ -14,7 +14,7 @@ int simatic_ipc_batt_probe(struct platform_device *pdev, struct gpiod_lookup_table *table); =20 -int simatic_ipc_batt_remove(struct platform_device *pdev, - struct gpiod_lookup_table *table); +void simatic_ipc_batt_remove(struct platform_device *pdev, + struct gpiod_lookup_table *table); =20 #endif /* _SIMATIC_IPC_BATT_H */ --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 33035E810A2 for ; Wed, 27 Sep 2023 08:12:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230408AbjI0IML (ORCPT ); Wed, 27 Sep 2023 04:12:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33080 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230187AbjI0ILD (ORCPT ); Wed, 27 Sep 2023 04:11:03 -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 5B2AFCE4 for ; Wed, 27 Sep 2023 01:10:59 -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 1qlPdD-00089G-KC; Wed, 27 Sep 2023 10:10:51 +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 1qlPdD-009I8I-0h; Wed, 27 Sep 2023 10:10:51 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdC-005BRa-NJ; Wed, 27 Sep 2023 10:10:50 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Gerd Haeussler , Xing Tong Wu , Tobias Schaffner , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 24/27] platform/x86/siemens: simatic-ipc-batt: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:37 +0200 Message-Id: <20230927081040.2198742-25-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1897; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=U+EVuue4dcy4JngvRLYcxQ86hJmTobawp5GDBK/mQb4=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N52b9a1e/I3FLntCEoj7l2JDKoiPZ0brnVI lt0GXyKq5eJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjeQAKCRCPgPtYfRL+ TprgCACcjwpGAPSTmBGWtJNfSMfp6c8P0VwUD+Wg581erlXeDhKPJIGJpMRiPQL0GiL7Emy0NU0 +aqdvMWQiGS2YLJ8yHgnCetrGOep1+iXklzs8Yy95KhTeiZfFtU6V21ru58M8QLKBwFDBHo1S+x qgpup8xfuuehpLJpXCoqS4siXA81P6CCUIIwi96CpvD8w4xZJZTmLbyoYjaCcZ7/v8INlMRh6H1 EN82iqkFKozLBc+RXdpbRWhULLxAI2NDW4EtkDQoEEVGjH7B2Sdi8Egmk3XxDfo1P/FSU/Ol2c5 f0pjp//0eLuwjMMIEoauvMw9oAAW7X6MpU8LFGS+XB/FAt6B 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/platform/x86/siemens/simatic-ipc-batt.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt.c b/drivers/plat= form/x86/siemens/simatic-ipc-batt.c index 07cd4944de32..c6dd263b4ee3 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt.c @@ -227,11 +227,9 @@ int simatic_ipc_batt_probe(struct platform_device *pde= v, struct gpiod_lookup_tab } EXPORT_SYMBOL_GPL(simatic_ipc_batt_probe); =20 -static int simatic_ipc_batt_io_remove(struct platform_device *pdev) +static void simatic_ipc_batt_io_remove(struct platform_device *pdev) { simatic_ipc_batt_remove(pdev, NULL); - - return 0; } =20 static int simatic_ipc_batt_io_probe(struct platform_device *pdev) @@ -241,7 +239,7 @@ static int simatic_ipc_batt_io_probe(struct platform_de= vice *pdev) =20 static struct platform_driver simatic_ipc_batt_driver =3D { .probe =3D simatic_ipc_batt_io_probe, - .remove =3D simatic_ipc_batt_io_remove, + .remove_new =3D simatic_ipc_batt_io_remove, .driver =3D { .name =3D KBUILD_MODNAME, }, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 038B2E810A2 for ; Wed, 27 Sep 2023 08:12:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230156AbjI0IMl (ORCPT ); Wed, 27 Sep 2023 04:12:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33100 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230175AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 ED04CCE7 for ; Wed, 27 Sep 2023 01:10:59 -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 1qlPdD-00089k-MM; Wed, 27 Sep 2023 10:10:51 +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 1qlPdD-009I8M-7q; Wed, 27 Sep 2023 10:10:51 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdC-005BRe-Uh; Wed, 27 Sep 2023 10:10:50 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Gerd Haeussler , Xing Tong Wu , Tobias Schaffner , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 25/27] platform/x86/siemens: simatic-ipc-batt-apollolake: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:38 +0200 Message-Id: <20230927081040.2198742-26-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1984; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=oosda01/3Jzx9HSa7idBXZZBh6OciqDqaWd/R9AvMS4=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N6TedDwJ3l9N4cpk7cRihO9WdQtoO805D0r 0yEa41AqKSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjegAKCRCPgPtYfRL+ TszGCAC7fRixYt1LQeBFKAA18nMJFEEm3PcA0ruXY9bg1Iz1od9V6J7me1IOXCLjKHiaHYahIx3 2QTrA3SYMn3toK3hLnOZK7cpjJHNARp9XkiCfI5wZDubf1a6wNC4I5opa2NdE4bmzGFSYlznLu4 PNA6Uajs9BOkpSW8WjI/sLv9/6ali0hEY6rBTzcujyteWyLvtfLT8Q0Bp3z8EZow3ySgMSY3pY6 cfaxwmcJkdrMeqW64i+5ffxRm5RTOLEgKViWODaOZUTmP9AkLvwac8nxnHpez97cDtXmfBLgU37 c6kbaS5Cw5KIXdSpTZp07WkwzpNSHBBQHiVADnnlWsKARDxZ 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/platform/x86/siemens/simatic-ipc-batt-apollolake.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c b/d= rivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c index 3e22a6bc9118..31a139d87d9a 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.c @@ -25,11 +25,9 @@ static struct gpiod_lookup_table simatic_ipc_batt_gpio_t= able_127e =3D { }, }; =20 -static int simatic_ipc_batt_apollolake_remove(struct platform_device *pdev) +static void simatic_ipc_batt_apollolake_remove(struct platform_device *pde= v) { simatic_ipc_batt_remove(pdev, &simatic_ipc_batt_gpio_table_127e); - - return 0; } =20 static int simatic_ipc_batt_apollolake_probe(struct platform_device *pdev) @@ -39,7 +37,7 @@ static int simatic_ipc_batt_apollolake_probe(struct platf= orm_device *pdev) =20 static struct platform_driver simatic_ipc_batt_driver =3D { .probe =3D simatic_ipc_batt_apollolake_probe, - .remove =3D simatic_ipc_batt_apollolake_remove, + .remove_new =3D simatic_ipc_batt_apollolake_remove, .driver =3D { .name =3D KBUILD_MODNAME, }, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 84621E810A3 for ; Wed, 27 Sep 2023 08:12:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230201AbjI0IMU (ORCPT ); Wed, 27 Sep 2023 04:12:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33028 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230239AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 1239ACE9 for ; Wed, 27 Sep 2023 01:11:00 -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 1qlPdD-0008AS-W5; Wed, 27 Sep 2023 10:10:52 +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 1qlPdD-009I8R-Dx; Wed, 27 Sep 2023 10:10:51 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdD-005BRi-4g; Wed, 27 Sep 2023 10:10:51 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Gerd Haeussler , Xing Tong Wu , Tobias Schaffner , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 26/27] platform/x86/siemens: simatic-ipc-batt-elkhartlake: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:39 +0200 Message-Id: <20230927081040.2198742-27-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=2000; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=atKDlgH5RJpKWqL6VwqbwRwC4qoK6wHDECsivGMaAKw=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N7B83ZmEZGbV1cN3PT09dXprrKhuV4blhZP s19OFSZpM2JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjewAKCRCPgPtYfRL+ TslTB/47Z6/d9rro1h89YQz4mgs2/rhQEbsr8CzoF1mhAUWVk3qJxwDREL+8WcUcRH1Hvkuxous E/FCzpKFOFHlKjZkeDgSvFZy0WUr9Ci96pIS/IR5zqzc3KmhVCgCgmKa+lwc6x1LKI2JAjXanvL Jk7xNsvu32oQsC2rOhUiktn3F1FDmK+/4WV4xLLZY7X16HdDnJlh5ykzy0rwMzveHzyZ+XYx1yo 5FHvjvhg/nBFcH8mcuMtJ9emPl6D+Puz2cJXKQvkcpJdAyJyYgwyfnOtwDwxr2g1vjz/DTZ9Yt/ /XecXtw7nkfFLete3YlLL/bF1v/CHvu8jYIlH/+HAGsAKntZ 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/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c b/= drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c index 9e08c659f27d..a7676f224075 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.c @@ -25,11 +25,9 @@ static struct gpiod_lookup_table simatic_ipc_batt_gpio_t= able_bx_21a =3D { }, }; =20 -static int simatic_ipc_batt_elkhartlake_remove(struct platform_device *pde= v) +static void simatic_ipc_batt_elkhartlake_remove(struct platform_device *pd= ev) { simatic_ipc_batt_remove(pdev, &simatic_ipc_batt_gpio_table_bx_21a); - - return 0; } =20 static int simatic_ipc_batt_elkhartlake_probe(struct platform_device *pdev) @@ -39,7 +37,7 @@ static int simatic_ipc_batt_elkhartlake_probe(struct plat= form_device *pdev) =20 static struct platform_driver simatic_ipc_batt_driver =3D { .probe =3D simatic_ipc_batt_elkhartlake_probe, - .remove =3D simatic_ipc_batt_elkhartlake_remove, + .remove_new =3D simatic_ipc_batt_elkhartlake_remove, .driver =3D { .name =3D KBUILD_MODNAME, }, --=20 2.40.1 From nobody Mon Dec 15 03:05:53 2025 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 4516AE810A2 for ; Wed, 27 Sep 2023 08:22:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230032AbjI0IWo (ORCPT ); Wed, 27 Sep 2023 04:22:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33306 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230248AbjI0ILE (ORCPT ); Wed, 27 Sep 2023 04:11:04 -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 2E32FCEA for ; Wed, 27 Sep 2023 01:11:00 -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 1qlPdE-0008Bd-8B; Wed, 27 Sep 2023 10:10:52 +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 1qlPdD-009I8V-Kp; Wed, 27 Sep 2023 10:10:51 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1qlPdD-005BRm-BW; Wed, 27 Sep 2023 10:10:51 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Gerd Haeussler , Xing Tong Wu , Tobias Schaffner , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Mark Gross Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 27/27] platform/x86/siemens: simatic-ipc-batt-f7188x: Convert to platform remove callback returning void Date: Wed, 27 Sep 2023 10:10:40 +0200 Message-Id: <20230927081040.2198742-28-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230927081040.2198742-1-u.kleine-koenig@pengutronix.de> References: <20230927081040.2198742-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=1921; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=ppuhwm0gU6+2BGzuuvFr4fZQMjeNK1Hrm/CuJZG8tv4=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlE+N8ZBf0B8Ls8/0BGKt+T6Vq2yd6huAyrsjPr JIXMiX14lWJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZRPjfAAKCRCPgPtYfRL+ ThqLB/47y3ScJPN+FC65DzwCmtW7dqtILGPC5gzujTdltNJLOSqjhrG2ilqZlNjGAeZNAPYiPSq E2aRJ9nl/904GtO23D7r0F8XaE7e6XD5MtVVbxz+XTjE4tHefbuMwqjDW16t6OeLBHbrwpzdAV5 QCF5QrBAQr29dqLc8RpHhy2367CgLq1tqEf6h4P6u0YzD+dQWgNuvU4SiGeahSnDKSmw5bp4dPO gfFcncvsg29Sw4PSK7LcmCX+uApEiNOuih/OvcydlOti8FfI6APMwtNqKbNxKJsA7WjhbKEFD3W SyfvGzFAMQPrjKdGwzQbwbVLgdKWUhHyzFx664mOG9N0TR9T 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/platform/x86/siemens/simatic-ipc-batt-f7188x.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c b/drive= rs/platform/x86/siemens/simatic-ipc-batt-f7188x.c index 19c302a68911..5e77e05fdb5d 100644 --- a/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c +++ b/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.c @@ -45,11 +45,9 @@ static struct gpiod_lookup_table simatic_ipc_batt_gpio_t= able_bx_59a =3D { } }; =20 -static int simatic_ipc_batt_f7188x_remove(struct platform_device *pdev) +static void simatic_ipc_batt_f7188x_remove(struct platform_device *pdev) { simatic_ipc_batt_remove(pdev, batt_lookup_table); - - return 0; } =20 static int simatic_ipc_batt_f7188x_probe(struct platform_device *pdev) @@ -75,7 +73,7 @@ static int simatic_ipc_batt_f7188x_probe(struct platform_= device *pdev) =20 static struct platform_driver simatic_ipc_batt_driver =3D { .probe =3D simatic_ipc_batt_f7188x_probe, - .remove =3D simatic_ipc_batt_f7188x_remove, + .remove_new =3D simatic_ipc_batt_f7188x_remove, .driver =3D { .name =3D KBUILD_MODNAME, }, --=20 2.40.1