From mboxrd@z Thu Jan 1 00:00:00 1970 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 F3312C32793 for ; Wed, 18 Jan 2023 16:22:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229642AbjARQW2 (ORCPT ); Wed, 18 Jan 2023 11:22:28 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53474 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229589AbjARQWC (ORCPT ); Wed, 18 Jan 2023 11:22:02 -0500 Received: from netrider.rowland.org (netrider.rowland.org [192.131.102.5]) by lindbergh.monkeyblade.net (Postfix) with SMTP id A3BD956EC2 for ; Wed, 18 Jan 2023 08:18:59 -0800 (PST) Received: (qmail 212574 invoked by uid 1000); 18 Jan 2023 11:18:58 -0500 Date: Wed, 18 Jan 2023 11:18:58 -0500 From: Alan Stern To: Geert Uytterhoeven Cc: Madalin Bucur , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Horatiu Vultur , UNGLinuxDriver@microchip.com, Thierry Reding , Lorenzo Pieralisi , Rob Herring , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Bjorn Helgaas , Jonathan Hunter , Vinod Koul , Kishon Vijay Abraham I , Greg Kroah-Hartman , Krzysztof Kozlowski , Alim Akhtar , Siddharth Vadapalli , Russell King , netdev@vger.kernel.org, linux-tegra@vger.kernel.org, linux-pci@vger.kernel.org, linux-phy@lists.infradead.org, linux-usb@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org Subject: Re: [PATCH 7/7] usb: host: ohci-exynos: Convert to devm_of_phy_optional_get() Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Wed, Jan 18, 2023 at 11:15:20AM +0100, Geert Uytterhoeven wrote: > Use the new devm_of_phy_optional_get() helper instead of open-coding the > same operation. > > This lets us drop several checks for IS_ERR(), as phy_power_{on,off}() > handle NULL parameters fine. The patch ignores a possible -ENOSYS error return. Is it known that this will never happen? Alan Stern > Signed-off-by: Geert Uytterhoeven > --- > drivers/usb/host/ohci-exynos.c | 24 +++++++----------------- > 1 file changed, 7 insertions(+), 17 deletions(-) > > diff --git a/drivers/usb/host/ohci-exynos.c b/drivers/usb/host/ohci-exynos.c > index 8d7977fd5d3bd502..8dd9c3b2411c383f 100644 > --- a/drivers/usb/host/ohci-exynos.c > +++ b/drivers/usb/host/ohci-exynos.c > @@ -69,19 +69,12 @@ static int exynos_ohci_get_phy(struct device *dev, > return -EINVAL; > } > > - phy = devm_of_phy_get(dev, child, NULL); > + phy = devm_of_phy_optional_get(dev, child, NULL); > exynos_ohci->phy[phy_number] = phy; > if (IS_ERR(phy)) { > - ret = PTR_ERR(phy); > - if (ret == -EPROBE_DEFER) { > - of_node_put(child); > - return ret; > - } else if (ret != -ENOSYS && ret != -ENODEV) { > - dev_err(dev, > - "Error retrieving usb2 phy: %d\n", ret); > - of_node_put(child); > - return ret; > - } > + of_node_put(child); > + return dev_err_probe(dev, PTR_ERR(phy), > + "Error retrieving usb2 phy\n"); > } > } > > @@ -97,12 +90,10 @@ static int exynos_ohci_phy_enable(struct device *dev) > int ret = 0; > > for (i = 0; ret == 0 && i < PHY_NUMBER; i++) > - if (!IS_ERR(exynos_ohci->phy[i])) > - ret = phy_power_on(exynos_ohci->phy[i]); > + ret = phy_power_on(exynos_ohci->phy[i]); > if (ret) > for (i--; i >= 0; i--) > - if (!IS_ERR(exynos_ohci->phy[i])) > - phy_power_off(exynos_ohci->phy[i]); > + phy_power_off(exynos_ohci->phy[i]); > > return ret; > } > @@ -114,8 +105,7 @@ static void exynos_ohci_phy_disable(struct device *dev) > int i; > > for (i = 0; i < PHY_NUMBER; i++) > - if (!IS_ERR(exynos_ohci->phy[i])) > - phy_power_off(exynos_ohci->phy[i]); > + phy_power_off(exynos_ohci->phy[i]); > } > > static int exynos_ohci_probe(struct platform_device *pdev) > -- > 2.34.1 >