From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934437AbdDFKdW (ORCPT ); Thu, 6 Apr 2017 06:33:22 -0400 Received: from fllnx209.ext.ti.com ([198.47.19.16]:34858 "EHLO fllnx209.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932662AbdDFKdQ (ORCPT ); Thu, 6 Apr 2017 06:33:16 -0400 Subject: Re: [PATCH v2 10/14] phy: meson8b-usb2: simplify optional reset handling To: Philipp Zabel , References: <20170315113149.30335-1-p.zabel@pengutronix.de> CC: Carlo Caione , Kevin Hilman , From: Kishon Vijay Abraham I Message-ID: <00bb58b4-d2ce-4907-4242-8ec2e34bf9a9@ti.com> Date: Thu, 6 Apr 2017 16:00:57 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: <20170315113149.30335-1-p.zabel@pengutronix.de> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wednesday 15 March 2017 05:01 PM, Philipp Zabel wrote: > As of commit bb475230b8e5 ("reset: make optional functions really > optional"), the reset framework API calls use NULL pointers to describe > optional, non-present reset controls. > > This allows to return errors from devm_reset_control_get_optional_shared > and to call reset_control_reset unconditionally. > > Signed-off-by: Philipp Zabel > Acked-by: Martin Blumenstingl > Tested-by: Jerome Brunet Acked-by: Kishon Vijay Abraham I > --- > drivers/phy/phy-meson8b-usb2.c | 12 +++++------- > 1 file changed, 5 insertions(+), 7 deletions(-) > > diff --git a/drivers/phy/phy-meson8b-usb2.c b/drivers/phy/phy-meson8b-usb2.c > index 33c9f4ba157d1..c5e856007ba0c 100644 > --- a/drivers/phy/phy-meson8b-usb2.c > +++ b/drivers/phy/phy-meson8b-usb2.c > @@ -141,12 +141,10 @@ static int phy_meson8b_usb2_power_on(struct phy *phy) > struct phy_meson8b_usb2_priv *priv = phy_get_drvdata(phy); > int ret; > > - if (!IS_ERR_OR_NULL(priv->reset)) { > - ret = reset_control_reset(priv->reset); > - if (ret) { > - dev_err(&phy->dev, "Failed to trigger USB reset\n"); > - return ret; > - } > + ret = reset_control_reset(priv->reset); > + if (ret) { > + dev_err(&phy->dev, "Failed to trigger USB reset\n"); > + return ret; > } > > ret = clk_prepare_enable(priv->clk_usb_general); > @@ -241,7 +239,7 @@ static int phy_meson8b_usb2_probe(struct platform_device *pdev) > return PTR_ERR(priv->clk_usb); > > priv->reset = devm_reset_control_get_optional_shared(&pdev->dev, NULL); > - if (PTR_ERR(priv->reset) == -EPROBE_DEFER) > + if (IS_ERR(priv->reset)) > return PTR_ERR(priv->reset); > > priv->dr_mode = of_usb_get_dr_mode_by_phy(pdev->dev.of_node, -1); >