[PATCH] phy: nop-phy: Fix phy reset if no reset-gpio defined

Tim Harvey tharvey at gateworks.com
Tue Mar 1 17:49:17 CET 2022


On Tue, Mar 1, 2022 at 2:57 AM Adam Ford <aford173 at gmail.com> wrote:
>
> On Mon, Feb 28, 2022 at 4:53 PM Tim Harvey <tharvey at gateworks.com> wrote:
> >
> > Ensure there is a valid reset-gpio defined before using it.
> >
> > Fixes: f9852acdce02 ("phy: nop-phy: Fix enabling reset")
> > Cc: Adam Ford <aford173 at gmail.com>
> > Signed-off-by: Tim Harvey <tharvey at gateworks.com>
>
> Reviewed-by: Adam Ford <aford173 at gmail.com>
>
> > ---
> >  drivers/phy/nop-phy.c | 12 +++++++-----
> >  1 file changed, 7 insertions(+), 5 deletions(-)
> >
> > diff --git a/drivers/phy/nop-phy.c b/drivers/phy/nop-phy.c
> > index e2ee6e92068e..d0904f4f075b 100644
> > --- a/drivers/phy/nop-phy.c
> > +++ b/drivers/phy/nop-phy.c
> > @@ -45,11 +45,13 @@ static int nop_phy_init(struct phy *phy)
> >
> >  #if CONFIG_IS_ENABLED(DM_GPIO)
> >         /* Take phy out of reset */
> > -       ret = dm_gpio_set_value(&priv->reset_gpio, false);
> > -       if (ret) {
> > -               if (CONFIG_IS_ENABLED(CLK))
> > -                       clk_disable_bulk(&priv->bulk);
> > -               return ret;
> > +       if (dm_gpio_is_valid(&priv->reset_gpio)) {
>
> I didn't realize this was necessary.  Sorry if I broke your board.
> Thanks for fixing it.
>

No worries... it's not broken yet as I only recently submitted the
patch to enable USB for imx8mm/imx8mn venice boards and just yesterday
I realized I needed this as well. Maybe this patch will get merged
before the imx one but either way USB won't work for venice until they
are both merged :)

I think it was the imx8mm-beacon board that you did the nopphy
reset-gpios for. On that board you have usbotg1 with a vbus-supply and
usbotg2 with a reset-gpios on its phy node - is usbotg2 routed to a
hub with HUB_RST as that gpio? I have some boards like that but I've
always setup the dt as if the HUB reset was a gpio-controlled voltage
regulator. It looks like now with the nopphy having reset control that
is a more proper way to describe this in dt.

Best Regards,

Tim


More information about the U-Boot mailing list