Re: [PATCH 2/4] clk: renesas: rzg2l: Re-assert reset on deassert timeout

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Tommaso,

On Tue, 2 Sept 2025 at 15:51, Tommaso Merciai
<tommaso.merciai.xr@xxxxxxxxxxxxxx> wrote:
> On Tue, Sep 02, 2025 at 02:18:17PM +0200, Geert Uytterhoeven wrote:
> > On Wed, 20 Aug 2025 at 12:05, Tommaso Merciai
> > <tommaso.merciai.xr@xxxxxxxxxxxxxx> wrote:
> > > Prevent issues during reset deassertion by re-asserting the reset if a
> > > timeout occurs when trying to deassert. This ensures the reset line is in a
> > > known state and improves reliability for hardware that may not immediately
> > > clear the reset monitor bit.
> > >
> > > Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@xxxxxxxxxxxxxx>
> >
> > > --- a/drivers/clk/renesas/rzg2l-cpg.c
> > > +++ b/drivers/clk/renesas/rzg2l-cpg.c
> > > @@ -1667,9 +1667,16 @@ static int __rzg2l_cpg_assert(struct reset_controller_dev *rcdev,
> > >                 return 0;
> > >         }
> > >
> > > -       return readl_poll_timeout_atomic(priv->base + reg, value,
> > > -                                        assert ? (value & mask) : !(value & mask),
> > > -                                        10, 200);
> > > +       ret = readl_poll_timeout_atomic(priv->base + reg, value,
> > > +                                       assert ? (value & mask) : !(value & mask),
> > > +                                       10, 200);
> > > +       if (ret && !assert) {
> > > +               dev_warn(rcdev->dev, "deassert timeout, re-asserting reset id %ld\n", id);
> > > +               value = mask << 16;
> > > +               writel(value, priv->base + CLK_RST_R(info->resets[id].off));
> > > +       }
> >
> > Is this an issue you've seen during actual use?
> > Would it make sense to print warnings on assertion timeouts, too?
>
> I haven’t observed any assertion timeout issues during actual use,
> so maybe printing warnings on assertion may not be necessary.
> What do you think?

Have you seen deassertion timeouts?
I would rather not print a warning.  The error code would be propagated
up anyway.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds





[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux