From patchwork Mon Jul 18 19:35:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= X-Patchwork-Id: 12921678 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 9F4C1C43334 for ; Mon, 18 Jul 2022 19:35:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236114AbiGRTfz (ORCPT ); Mon, 18 Jul 2022 15:35:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56130 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236144AbiGRTfq (ORCPT ); Mon, 18 Jul 2022 15:35:46 -0400 Received: from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7020E2AE2A for ; Mon, 18 Jul 2022 12:35:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; s=smtpauto.master; h=Content-Transfer-Encoding:Content-Type:MIME-Version: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: In-Reply-To:References; bh=zmjiiwp77EjOxJJTiAnpabvPiLF7EFe4D+cXiCK0FMM=; b=G0 1B7y669jScL6xX0w/UYUgpDn2SuzstOreU9ArTm/VdWgGHCTnaeQ8qEdqNuJ/ZoXlx3Xzn1HkN+xm 0Qt+JplnBP60vWF5OVRDNO48884iG9onJ+Cosm4vTDLRdY2N/Pu6VIvPh+f8iPnE+gEJ/jaJ1zjT0 zxewUd20QzCyzaiSSZuyAnegtEUi4Zfa/fm/1CP9EJQ2V3oaQzWdM+5k2srOCyb/lxz3setKG9DYj dKSQv+aOWR5tIkgT2BOcLEZPVdTd3+wNR3tjDlfNFB8Iu5UDcreOjdoT0I7/pYGlOss+e+2BHyS+N dnGZ8ZJKxb1yeR8pe9Cyuu05GshWp5HA==; Received: from ukleinek by master.debian.org with local (Exim 4.92) (envelope-from ) id 1oDWWh-0000MB-TT; Mon, 18 Jul 2022 19:35:31 +0000 From: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= To: Jonathan Cameron Cc: Lars-Peter Clausen , Andy Shevchenko , linux-iio@vger.kernel.org, Yves-Alexis Perez Subject: [PATCH 1/3] iio: humidity: dht11: Don't warn on memory allocation failure Date: Mon, 18 Jul 2022 21:35:18 +0200 Message-Id: <20220718193520.177648-1-ukleinek@debian.org> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=900; h=from:subject; bh=PgKOtVW9OSAs7yt0TmACBSMHRS7gc90s1dz7cKYwN1M=; b=owEBbQGS/pANAwAKAcH8FHityuwJAcsmYgBi1bXtce0asY7TqRzBxlR1FFtlR8nBBq3auet1M20S gr/GqhGJATMEAAEKAB0WIQR+cioWkBis/z50pAvB/BR4rcrsCQUCYtW17QAKCRDB/BR4rcrsCVTLCA CQNmOm2fneswMKtccOb3JRldvjWvmB/GWZVQar6CdhxC5+oVxKvJesjsCM9WPut9UVDvWU9L7cxyRY p+WMsM6ypvpnXQaB8ORCyYv7aLlyXLlpvC1EyXKzyCjctmGlbgZ6dLkzPJAouTiYAjhHrcQtzvInbu Ei0koXNHtfqEUEmkx/27g0Euw8a8tT5N4whEmcSuyXhit85X7V0D8GtATb0DPvtxQMzbH3RMrEneGb NzulP2RjQjiOy54jjFxqe73cXtHMdiFvXkKmR5CrSoPTXHhfve1nxIZjztTrI7NVGCvNWbsVRKlfd1 ze5T78hiOApGYxYO1yMwGrcxiLdFJl X-Developer-Key: i=ukleinek@debian.org; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org The kernel is already quite noisy if a memory allocation fails. So it's the usual policy to not add another message on the driver level. Drop the error message accordingly. Signed-off-by: Uwe Kleine-König --- drivers/iio/humidity/dht11.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) base-commit: f2906aa863381afb0015a9eb7fefad885d4e5a56 diff --git a/drivers/iio/humidity/dht11.c b/drivers/iio/humidity/dht11.c index c97e25448772..891b6bf0b4ca 100644 --- a/drivers/iio/humidity/dht11.c +++ b/drivers/iio/humidity/dht11.c @@ -295,10 +295,8 @@ static int dht11_probe(struct platform_device *pdev) struct iio_dev *iio; iio = devm_iio_device_alloc(dev, sizeof(*dht11)); - if (!iio) { - dev_err(dev, "Failed to allocate IIO device\n"); + if (!iio) return -ENOMEM; - } dht11 = iio_priv(iio); dht11->dev = dev; From patchwork Mon Jul 18 19:35:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= X-Patchwork-Id: 12921677 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 4EAEBC433EF for ; Mon, 18 Jul 2022 19:35:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236154AbiGRTfy (ORCPT ); Mon, 18 Jul 2022 15:35:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56128 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236145AbiGRTfq (ORCPT ); Mon, 18 Jul 2022 15:35:46 -0400 Received: from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6FEF62AC5D for ; Mon, 18 Jul 2022 12:35:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; s=smtpauto.master; h=Content-Transfer-Encoding:Content-Type:MIME-Version: References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID :Content-Description; bh=MERd46pXoxdAbyvpkZTMb9RFV8Sr8RDXilhnlJdQTmw=; b=Hv27 e3G5WMd/0DI5UGFMBWaHJn3X97WbAQhu/1e9pCAYU/mA85ZIZ8uAgxJIUEbF86qbcWO72OYSK2kv3 V6Q035wddgePxjU4TCH7sSpmjBWmCaEHO++HplG5+Rds5hUQ0gn0HFpFTECB+hQyrkoYPD/rvWGr0 Xhqlx+zG5kbdWdxQX2zCZhXB9T/j95Ln/GhQShc++l30uw8q7lh70qPT6/uxnAvWx5PQFRgVH/mkl B0OOGKRBzDr9TzUZswXl3fsJxS3V+hUc8oX7M97Riwn3wVJTYhQehX3UX2HUkHJTsPuKbIIPdjdsY gEEZNKrQJtBImel2lSY/Tvl6x8at7Q==; Received: from ukleinek by master.debian.org with local (Exim 4.92) (envelope-from ) id 1oDWWj-0000Mi-HJ; Mon, 18 Jul 2022 19:35:33 +0000 From: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= To: Jonathan Cameron Cc: Lars-Peter Clausen , Andy Shevchenko , linux-iio@vger.kernel.org, Yves-Alexis Perez Subject: [PATCH 2/3] iio: humidity: dht11: Emit error messages for probe failures Date: Mon, 18 Jul 2022 21:35:19 +0200 Message-Id: <20220718193520.177648-2-ukleinek@debian.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220718193520.177648-1-ukleinek@debian.org> References: <20220718193520.177648-1-ukleinek@debian.org> MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1568; h=from:subject; bh=9DQg2sf2ntMq7FMH0Xg0bGGvMeueWUkFFLpmrMWxG+4=; b=owEBbQGS/pANAwAKAcH8FHityuwJAcsmYgBi1bXyyFKGSnwJ5lZc1JlugtwuNDfJrA9n3VMXO/Gu QtCK9uGJATMEAAEKAB0WIQR+cioWkBis/z50pAvB/BR4rcrsCQUCYtW18gAKCRDB/BR4rcrsCRCFCA CYt38qXeRvEoBXJp3ArkF9TouHYHtnMnyxiwnGLgfLZz7AXhqhB7pt3W1DWkB6AYcz3zZJuL7SkyDV uh8fdToatAsukoENoDXja4rfuiQU3707hhXnRBR0r7hwXcfoFGGXRLlHyHekW5hz+jfEpVgoi+s9Fo 8S/Lv0V6ubii1N8vMUIYAsfFq4wKyle24NmmiJbKHz4n2rICLFmfZiyYvvrw1HvIdrH7zXpGoedgP3 cnxQgbxpn5HS4R3eFkltuIXs2zXwWiqUrWyxvpy846vF8qZ9f6X21MmUCVrD0Xh9PZUeAypm2vMIcI Z9SyowZsp9hVGgVqtp8r+Y3dPFCmOo X-Developer-Key: i=ukleinek@debian.org; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org There are two exit points in the driver's probe function that fail silently. From a user perspective this is unsatisfactory because the device is unusable but there is no hint in the kernel log about the actual problem which makes it unnecessarily hard to fix the problem. Make use of dev_err_probe() to emit a problem indication which also does the right thing if requesting the gpio return -EPROBE_DEFER. Signed-off-by: Uwe Kleine-König --- drivers/iio/humidity/dht11.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/iio/humidity/dht11.c b/drivers/iio/humidity/dht11.c index 891b6bf0b4ca..6182f4d2e9fc 100644 --- a/drivers/iio/humidity/dht11.c +++ b/drivers/iio/humidity/dht11.c @@ -302,7 +302,8 @@ static int dht11_probe(struct platform_device *pdev) dht11->dev = dev; dht11->gpiod = devm_gpiod_get(dev, NULL, GPIOD_IN); if (IS_ERR(dht11->gpiod)) - return PTR_ERR(dht11->gpiod); + return dev_err_probe(dev, PTR_ERR(dht11->gpiod), + "Failed to aquire GPIO\n"); dht11->irq = gpiod_to_irq(dht11->gpiod); if (dht11->irq < 0) { @@ -323,7 +324,11 @@ static int dht11_probe(struct platform_device *pdev) iio->channels = dht11_chan_spec; iio->num_channels = ARRAY_SIZE(dht11_chan_spec); - return devm_iio_device_register(dev, iio); + ret = devm_iio_device_register(dev, iio); + if (ret < 0) + return dev_err_probe(dev, ret, "Failed to register iio device\n"); + + return 0; } static struct platform_driver dht11_driver = { From patchwork Mon Jul 18 19:35:20 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= X-Patchwork-Id: 12921679 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 D422ECCA479 for ; Mon, 18 Jul 2022 19:35:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236145AbiGRTfz (ORCPT ); Mon, 18 Jul 2022 15:35:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56214 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236147AbiGRTfr (ORCPT ); Mon, 18 Jul 2022 15:35:47 -0400 Received: from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C19532B618 for ; Mon, 18 Jul 2022 12:35:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; s=smtpauto.master; h=Content-Transfer-Encoding:Content-Type:MIME-Version: References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID :Content-Description; bh=SIdmNXSfa6gB1XOb6gIhIL7va5y5vCKiNOUlJzW7zdw=; b=f1uh lzbLDJ5jefEBCcwuMxDUAFssJaDIUoT+Q0Hk85uCxg7w4pCi7hpH3sSvdZjZkoj2NxDYo4VM9CLuR PzmjzNdp1zGtR2NJGYQ8UujQpbHTzOYzRF6sAm4IrC8gnJKpAQNaB1U/twxOfAhCaqk5HfLx9yLXw 04DAv2k/E0mVZEn29RFw9G79g9Nz6cWcZIGuIWfRolQh0w3gIl5L7B1gk1cDiHa3bhlPJqemvSr+Z ppucje5cra6LRP05psfK2kXskwM7cbdPnviR6q24BKh8Sv52ECA2UWHuVGox8ABann+85+j+34yzo e7g9VTDwsI5hP/CE21SHfKeHoSWWYA==; Received: from ukleinek by master.debian.org with local (Exim 4.92) (envelope-from ) id 1oDWWl-0000Mv-Ci; Mon, 18 Jul 2022 19:35:35 +0000 From: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= To: Jonathan Cameron Cc: Lars-Peter Clausen , Andy Shevchenko , linux-iio@vger.kernel.org, Yves-Alexis Perez Subject: [PATCH 3/3] iio: humidity: dht11: Use dev_err_probe consistently Date: Mon, 18 Jul 2022 21:35:20 +0200 Message-Id: <20220718193520.177648-3-ukleinek@debian.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220718193520.177648-1-ukleinek@debian.org> References: <20220718193520.177648-1-ukleinek@debian.org> MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1016; h=from:subject; bh=8MEuuuYyCvXkoLOgdvdLyh2YrA5uX+fNsTrKnKSRfQ8=; b=owEBbQGS/pANAwAKAcH8FHityuwJAcsmYgBi1bX1LKtCdzeNG0jbekRNfLbZNmePYf0n058tZaS0 h+Vl0vyJATMEAAEKAB0WIQR+cioWkBis/z50pAvB/BR4rcrsCQUCYtW19QAKCRDB/BR4rcrsCTTeCA CGl/aGW6txY+q7/GleY6NliWzQF3NOe9NApiLI52tyqNEmqLK1CHoUmX+YmFFx/iyIpTT8VLAmqCbK SwIWXl+81Rd4Xy5mzgvPWPTxAiYhvagVOqquPtOCE1hHRl68vJzX+1RKTdbFPr6SVnDq3X4KLTeHv2 BqpbfvpvLi3UfDRSStndmrPK/BD6rjhzPsWVAIge+pID0iBklCp8r0nwg3a/bzpKKShN0EIyD50fuH Q3I5bLLBiVMgB7FFkP6i+FmHTte19jiOJ/ojaKZZ/LIjUYhhSFB1I79m1i8C2QdPhkWT8nAIbSEEFA bn1XXEj8KkcLhHZ/OyP/6SMsUDXr/J X-Developer-Key: i=ukleinek@debian.org; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org All but one error path use dev_err_probe() to emit a message. Use the same incarnation for the remaining exit point for consistency. Signed-off-by: Uwe Kleine-König --- drivers/iio/humidity/dht11.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/iio/humidity/dht11.c b/drivers/iio/humidity/dht11.c index 6182f4d2e9fc..50d2431c938b 100644 --- a/drivers/iio/humidity/dht11.c +++ b/drivers/iio/humidity/dht11.c @@ -306,10 +306,9 @@ static int dht11_probe(struct platform_device *pdev) "Failed to aquire GPIO\n"); dht11->irq = gpiod_to_irq(dht11->gpiod); - if (dht11->irq < 0) { - dev_err(dev, "GPIO %d has no interrupt\n", desc_to_gpio(dht11->gpiod)); - return -EINVAL; - } + if (dht11->irq < 0) + return dev_err_probe(dev, -EINVAL, "GPIO %d has no interrupt\n", + desc_to_gpio(dht11->gpiod)); dht11->timestamp = ktime_get_boottime_ns() - DHT11_DATA_VALID_TIME - 1; dht11->num_edges = -1;