Re: [PATCH 06/17] i3c: renesas: Reset the controller on resume
Frank Li <[email protected]>
| Newsgroups | org.infradead.lists.linux-i3c,org.kernel.vger.linux-kernel,org.kernel.vger.linux-renesas-soc,org.kernel.vger.stable |
|---|---|
| Message-ID | <ahCrOed9QpKR5ZRF@lizhi-Precision-Tower-5810> |
On Fri, May 22, 2026 at 01:18:04PM +0300, Claudiu Beznea wrote: > From: Claudiu Beznea <[email protected]> > > Reset the controller on resume after enabling the clocks to follow the > same sequence as in probe and avoid potential ordering related failures. > > Fixes: e7218986319b ("i3c: renesas: Add suspend/resume support") > Cc: [email protected] > Signed-off-by: Claudiu Beznea <[email protected]> > --- Can you move these similar stuff to one helper function to avoid duplicate efforts later? Reviewed-by: Frank Li <[email protected]> > drivers/i3c/master/renesas-i3c.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/i3c/master/renesas-i3c.c b/drivers/i3c/master/renesas-i3c.c > index 5174a390d668..2f3c6ddf75c0 100644 > --- a/drivers/i3c/master/renesas-i3c.c > +++ b/drivers/i3c/master/renesas-i3c.c > @@ -1464,6 +1464,10 @@ static int renesas_i3c_resume_noirq(struct device *dev) > if (ret) > goto err_presetn; > > + ret = renesas_i3c_reset(i3c); > + if (ret) > + goto err_clks_disable; > + > /* Re-store I3C registers value. */ > renesas_writel(i3c->regs, STDBR, i3c->i3c_STDBR); > renesas_writel(i3c->regs, EXTBR, i3c->extbr); > @@ -1483,6 +1487,8 @@ static int renesas_i3c_resume_noirq(struct device *dev) > > return 0; > > +err_clks_disable: > + clk_bulk_disable(i3c->num_clks, i3c->clks); > err_presetn: > reset_control_assert(i3c->presetn); > err_tresetn: > -- > 2.43.0 > -- linux-i3c mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-i3c