lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 15 Feb 2017 17:43:27 +0100 From: Jerome Brunet <jbrunet@...libre.com> To: Martin Blumenstingl <martin.blumenstingl@...glemail.com>, Philipp Zabel <p.zabel@...gutronix.de> Cc: linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org, Ramiro Oliveira <Ramiro.Oliveira@...opsys.com>, Kevin Hilman <khilman@...libre.com>, Carlo Caione <carlo@...one.org>, Kishon Vijay Abraham I <kishon@...com> Subject: Re: [PATCH 10/14] phy: meson8b-usb2: simplify optional reset handling On Wed, 2017-02-15 at 00:36 +0100, Martin Blumenstingl wrote: > Hi Philipp, > > sorry for the late reply. > unfortunately my GXBB board (which is supported by the driver below) > is dead. > I CC'ed Jerome Brunet - maybe he can give it a go on one of his > (GXBB) boards. > > On Mon, Jan 30, 2017 at 12:41 PM, Philipp Zabel <p.zabel@...gutronix. > de> 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 <p.zabel@...gutronix.de> > Acked-by: Martin Blumenstingl <martin.blumenstingl@...glemail.com> > > (based on reading the code along with the highly appreciated changes > from bb475230b8e5) > > > > > Cc: Martin Blumenstingl <martin.blumenstingl@...glemail.com> > > Cc: Kevin Hilman <khilman@...libre.com> > > Cc: Carlo Caione <carlo@...one.org> > > Cc: Kishon Vijay Abraham I <kishon@...com> > > --- > > 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..87168f1fe3af6 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 (PTR_ERR(priv->reset)) This is wrong and will always exit on error. It should be "IS_ERR". Clearly the bug was there before your patch, but since you are changing the faulty line, would you mind using IS_ERR instead ? With this changed: Tested-by: Jerome Brunet <jbrunet@...libre.com> > > return PTR_ERR(priv->reset); > > > > priv->dr_mode = of_usb_get_dr_mode_by_phy(pdev- > > >dev.of_node, -1); > > -- > > 2.11.0 > >
Powered by blists - more mailing lists