Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp4206171pxu; Tue, 20 Oct 2020 10:43:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyo22AoybpKmSe0NeVxcTKZnT0NWt8f1o93E2UWRUBtxxrTFhDJ0d9rnY477yOlZdp+Wh0i X-Received: by 2002:a50:fe13:: with SMTP id f19mr4023433edt.178.1603215828889; Tue, 20 Oct 2020 10:43:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603215828; cv=none; d=google.com; s=arc-20160816; b=PbLiRIspLj442gAWIUXAwroHKxTmuXU2npwvWw0P5SIY5qvWVo6aWq4mPiSR1tWzq/ ucZ6I+smEVnB/AuchH4IEQLjhGmwXb/JO2ha7TXmWMdCs+ywdnnQAiShNXyPag3F24K/ XDzgG7AF9GCvNyb8xn5WM+1E2LKFLQ2PhAijpqPAjYBz/9ClQ2UEX3S6e1sXwLM1ib73 xLXU1VczYP2ce8RVfyuEISWHS15AGovjsdaWP4++cfwpK7pXV0x8UuMi6J6sPh8LXHFt 60U+iTFrt5ZwT/KWZVfDyPMTj6YgwTRgnxzuVg96FXMvxrOyqa52lrDgxpc0sXoZk2Rk Y0aA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=vzrsaDVRnW+DWJw3VpzQswtSpW0lP6e/8G5gGlAlSMM=; b=bTwdL3wnT0o2dMi41i+CwR/MoFEYewyliESsBBUihJ/YYYxLNdbn+qzqwrGpmXsjEz b6P9fbUX+uXjIXNCyrGaiwM0/sskbPoJj0zx7vYPRYZ+QSZHi1wHZlgnQvR1ZDlbBf3a fAn6r9jw9QUsC6V0qD+ppAfoTMU7sxPEBqAmmtv9zxueoZ+o/pqlk4MwKrU2fvxU4yHc XusFuNBJThnXmsS3O8Q4sdnnKiYHE+SgJSjXy3tU5I2f+1niJlL4vZoU5Yp5pLKeY8Lw /oYqUFUtQfVV4Kyhzl8V4INN62UTsJMZYullN0isckNTU8xKtbkmBAT6gykh+5AFtMv1 vjtw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l7si103614ejb.373.2020.10.20.10.43.26; Tue, 20 Oct 2020 10:43:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2391724AbgJTFq0 (ORCPT + 99 others); Tue, 20 Oct 2020 01:46:26 -0400 Received: from inva020.nxp.com ([92.121.34.13]:49754 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2390986AbgJTFqV (ORCPT ); Tue, 20 Oct 2020 01:46:21 -0400 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id A98531A0572; Tue, 20 Oct 2020 07:46:18 +0200 (CEST) Received: from invc005.ap-rdc01.nxp.com (invc005.ap-rdc01.nxp.com [165.114.16.14]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 48A131A073B; Tue, 20 Oct 2020 07:46:14 +0200 (CEST) Received: from localhost.localdomain (shlinux2.ap.freescale.net [10.192.224.44]) by invc005.ap-rdc01.nxp.com (Postfix) with ESMTP id 64F2F402F3; Tue, 20 Oct 2020 07:46:08 +0200 (CEST) From: Anson Huang To: thierry.reding@gmail.com, u.kleine-koenig@pengutronix.de, lee.jones@linaro.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-pwm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Linux-imx@nxp.com Subject: [RESEND PATCH V2 3/3] pwm: imx1: Use dev_err_probe() to simplify error handling Date: Tue, 20 Oct 2020 13:41:07 +0800 Message-Id: <1603172467-19786-3-git-send-email-Anson.Huang@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1603172467-19786-1-git-send-email-Anson.Huang@nxp.com> References: <1603172467-19786-1-git-send-email-Anson.Huang@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Virus-Scanned: ClamAV using ClamSMTP Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org dev_err_probe() can reduce code size, uniform error handling and record the defer probe reason etc., use it to simplify the code. Signed-off-by: Anson Huang Acked-by: Uwe Kleine-König --- changes since V1: - remove redundant return value print. --- drivers/pwm/pwm-imx1.c | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/drivers/pwm/pwm-imx1.c b/drivers/pwm/pwm-imx1.c index f8b2c2e..4877734 100644 --- a/drivers/pwm/pwm-imx1.c +++ b/drivers/pwm/pwm-imx1.c @@ -145,23 +145,14 @@ static int pwm_imx1_probe(struct platform_device *pdev) platform_set_drvdata(pdev, imx); imx->clk_ipg = devm_clk_get(&pdev->dev, "ipg"); - if (IS_ERR(imx->clk_ipg)) { - dev_err(&pdev->dev, "getting ipg clock failed with %ld\n", - PTR_ERR(imx->clk_ipg)); - return PTR_ERR(imx->clk_ipg); - } + if (IS_ERR(imx->clk_ipg)) + return dev_err_probe(&pdev->dev, PTR_ERR(imx->clk_ipg), + "getting ipg clock failed\n"); imx->clk_per = devm_clk_get(&pdev->dev, "per"); - if (IS_ERR(imx->clk_per)) { - int ret = PTR_ERR(imx->clk_per); - - if (ret != -EPROBE_DEFER) - dev_err(&pdev->dev, - "failed to get peripheral clock: %d\n", - ret); - - return ret; - } + if (IS_ERR(imx->clk_per)) + return dev_err_probe(&pdev->dev, PTR_ERR(imx->clk_per), + "failed to get peripheral clock\n"); imx->chip.ops = &pwm_imx1_ops; imx->chip.dev = &pdev->dev; -- 2.7.4