From patchwork Fri Jul 8 19:44:47 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Serge Semin X-Patchwork-Id: 12911833 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 smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 93AA0C43334 for ; Fri, 8 Jul 2022 19:45:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) id 46CDFC341C0; Fri, 8 Jul 2022 19:45:56 +0000 (UTC) Received: from mail.baikalelectronics.com (mail.baikalelectronics.com [87.245.175.230]) by smtp.kernel.org (Postfix) with ESMTP id 58A49C341C7 for ; Fri, 8 Jul 2022 19:45:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 smtp.kernel.org 58A49C341C7 Authentication-Results: smtp.kernel.org; dmarc=fail (p=reject dis=none) header.from=baikalelectronics.ru Authentication-Results: smtp.kernel.org; spf=fail smtp.mailfrom=baikalelectronics.ru Received: from mail (mail.baikal.int [192.168.51.25]) by mail.baikalelectronics.com (Postfix) with ESMTP id ECC1016C2; Fri, 8 Jul 2022 22:47:34 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 mail.baikalelectronics.com ECC1016C2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baikalelectronics.ru; s=mail; t=1657309655; bh=y1DTHsN+7ZchbtK1/LYzLBSRwhnzdXBFd3LNm99BTAA=; h=From:To:CC:Subject:Date:From; b=FDB1zz9tnFxVZr4QNMUvuIITGGGYdNFkPcxqq7S5RSQCGactRA4Cwe5XJ3EYbpIF9 L0jg21N0I/NlkS2xQKJYuUy5am69/h7qXT+4+PX2D2rAe9oa0IvI+5zF6DHwx+ENyN zmC2z3FD7UGoJe16WhC7ok5RXzik9McFmFLVW+uw= Received: from localhost (192.168.53.207) by mail (192.168.51.25) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 8 Jul 2022 22:45:48 +0300 From: Serge Semin To: Arnd Bergmann , Philipp Zabel List-Id: CC: Serge Semin , Serge Semin , Alexey Malahov , Pavel Parkhomenko , , Subject: [PATCH RESEND v4 1/2] bus: bt1-apb: Don't print error on -EPROBE_DEFER Date: Fri, 8 Jul 2022 22:44:47 +0300 Message-ID: <20220708194448.10700-1-Sergey.Semin@baikalelectronics.ru> MIME-Version: 1.0 X-ClientProxiedBy: MAIL.baikal.int (192.168.51.25) To mail (192.168.51.25) The Baikal-T1 APB bus driver correctly handles the deferred probe situation, but still pollutes the system log with a misleading error message. Let's fix that by using the dev_err_probe() method to print the log message in case of the clocks/resets request errors. Signed-off-by: Serge Semin --- Link: https://lore.kernel.org/lkml/20220610080103.10689-1-Sergey.Semin@baikalelectronics.ru/ Changelog v2: - Use the dev_err_probe() return value as the return status of the corresponding method. (@Philipp) Link: https://lore.kernel.org/lkml/20220610104030.28399-1-Sergey.Semin@baikalelectronics.ru Changelog v3: - Just resend. - Rebase onto the kernel v5.19-rcX. Link: https://lore.kernel.org/lkml/20220624211233.7529-1-Sergey.Semin@baikalelectronics.ru/ Changelog v4: - Just resend. --- drivers/bus/bt1-apb.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/bus/bt1-apb.c b/drivers/bus/bt1-apb.c index b25ff941e7c7..63b1b4a76671 100644 --- a/drivers/bus/bt1-apb.c +++ b/drivers/bus/bt1-apb.c @@ -175,10 +175,9 @@ static int bt1_apb_request_rst(struct bt1_apb *apb) int ret; apb->prst = devm_reset_control_get_optional_exclusive(apb->dev, "prst"); - if (IS_ERR(apb->prst)) { - dev_warn(apb->dev, "Couldn't get reset control line\n"); - return PTR_ERR(apb->prst); - } + if (IS_ERR(apb->prst)) + return dev_err_probe(apb->dev, PTR_ERR(apb->prst), + "Couldn't get reset control line\n"); ret = reset_control_deassert(apb->prst); if (ret) @@ -199,10 +198,9 @@ static int bt1_apb_request_clk(struct bt1_apb *apb) int ret; apb->pclk = devm_clk_get(apb->dev, "pclk"); - if (IS_ERR(apb->pclk)) { - dev_err(apb->dev, "Couldn't get APB clock descriptor\n"); - return PTR_ERR(apb->pclk); - } + if (IS_ERR(apb->pclk)) + return dev_err_probe(apb->dev, PTR_ERR(apb->pclk), + "Couldn't get APB clock descriptor\n"); ret = clk_prepare_enable(apb->pclk); if (ret) { From patchwork Fri Jul 8 19:44:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Serge Semin X-Patchwork-Id: 12911832 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 smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 783D2C433EF for ; Fri, 8 Jul 2022 19:45:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) id 3E447C341CD; Fri, 8 Jul 2022 19:45:56 +0000 (UTC) Received: from mail.baikalelectronics.com (mail.baikalelectronics.com [87.245.175.230]) by smtp.kernel.org (Postfix) with ESMTP id C59EDC341CB for ; Fri, 8 Jul 2022 19:45:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 smtp.kernel.org C59EDC341CB Authentication-Results: smtp.kernel.org; dmarc=fail (p=reject dis=none) header.from=baikalelectronics.ru Authentication-Results: smtp.kernel.org; spf=fail smtp.mailfrom=baikalelectronics.ru Received: from mail (mail.baikal.int [192.168.51.25]) by mail.baikalelectronics.com (Postfix) with ESMTP id D1E0316C3; Fri, 8 Jul 2022 22:47:35 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 mail.baikalelectronics.com D1E0316C3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baikalelectronics.ru; s=mail; t=1657309655; bh=Gjf4Wg6tDAxYDxNLlcgkoZo/rjD6uSfhRtCOK8F6Wrs=; h=From:To:CC:Subject:Date:In-Reply-To:References:From; b=TC7g4eYlnlpgV6Eb8c3K3boHFrX87ta016m1fE60SgQ3Cv6RkiaD15Xw6JNsUlHBR zRaeGzEG3PaVCfau56yxAMeHQZ+gdVSpxXRaTry55xe69L1/XaldXAavhb47OLSvre 5Uz7CtJ5NdkEf9QlWj4j7aeqFs9hDlgFvBhZ+qog= Received: from localhost (192.168.53.207) by mail (192.168.51.25) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 8 Jul 2022 22:45:48 +0300 From: Serge Semin To: Arnd Bergmann , Philipp Zabel List-Id: CC: Serge Semin , Serge Semin , Alexey Malahov , Pavel Parkhomenko , , Subject: [PATCH RESEND v4 2/2] bus: bt1-axi: Don't print error on -EPROBE_DEFER Date: Fri, 8 Jul 2022 22:44:48 +0300 Message-ID: <20220708194448.10700-2-Sergey.Semin@baikalelectronics.ru> In-Reply-To: <20220708194448.10700-1-Sergey.Semin@baikalelectronics.ru> References: <20220708194448.10700-1-Sergey.Semin@baikalelectronics.ru> MIME-Version: 1.0 X-ClientProxiedBy: MAIL.baikal.int (192.168.51.25) To mail (192.168.51.25) The Baikal-T1 AXI bus driver correctly handles the deferred probe situation, but still pollutes the system log with a misleading error message. Let's fix that by using the dev_err_probe() method to print the log message in case of the clocks/resets request errors. Signed-off-by: Serge Semin --- Link: https://lore.kernel.org/lkml/20220610080103.10689-1-Sergey.Semin@baikalelectronics.ru/ Changelog v2: - Use the dev_err_probe() return value as the return status of the corresponding method. (@Philipp) Link: https://lore.kernel.org/lkml/20220610104030.28399-2-Sergey.Semin@baikalelectronics.ru/ Changelog v3: - Just resend. - Rebase onto the kernel v5.19-rcX. Link: https://lore.kernel.org/lkml/20220624211233.7529-2-Sergey.Semin@baikalelectronics.ru/ Changelog v4: - Just resend. --- drivers/bus/bt1-axi.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/bus/bt1-axi.c b/drivers/bus/bt1-axi.c index e7a6744acc7b..70e49a6e5374 100644 --- a/drivers/bus/bt1-axi.c +++ b/drivers/bus/bt1-axi.c @@ -135,10 +135,9 @@ static int bt1_axi_request_rst(struct bt1_axi *axi) int ret; axi->arst = devm_reset_control_get_optional_exclusive(axi->dev, "arst"); - if (IS_ERR(axi->arst)) { - dev_warn(axi->dev, "Couldn't get reset control line\n"); - return PTR_ERR(axi->arst); - } + if (IS_ERR(axi->arst)) + return dev_err_probe(axi->dev, PTR_ERR(axi->arst), + "Couldn't get reset control line\n"); ret = reset_control_deassert(axi->arst); if (ret) @@ -159,10 +158,9 @@ static int bt1_axi_request_clk(struct bt1_axi *axi) int ret; axi->aclk = devm_clk_get(axi->dev, "aclk"); - if (IS_ERR(axi->aclk)) { - dev_err(axi->dev, "Couldn't get AXI Interconnect clock\n"); - return PTR_ERR(axi->aclk); - } + if (IS_ERR(axi->aclk)) + return dev_err_probe(axi->dev, PTR_ERR(axi->aclk), + "Couldn't get AXI Interconnect clock\n"); ret = clk_prepare_enable(axi->aclk); if (ret) {