Re: [PATCH v2 1/1] serial: 8250_bcm7271: Use devm_clk_get_optional_enabled()

From: Andi Shyti
Date: Thu Oct 05 2023 - 12:40:10 EST


Hi Andy,

On Thu, Oct 05, 2023 at 06:37:16PM +0300, Andy Shevchenko wrote:
> On Thu, Oct 05, 2023 at 05:19:38PM +0200, Andi Shyti wrote:
>
> [...]
>
> > > - baud_mux_clk = devm_clk_get(dev, "sw_baud");
> > > - if (IS_ERR(baud_mux_clk)) {
> > > - if (PTR_ERR(baud_mux_clk) == -EPROBE_DEFER) {
> > > - ret = -EPROBE_DEFER;
> > > - goto release_dma;
> > > - }
> > > - dev_dbg(dev, "BAUD MUX clock not specified\n");
> > > - } else {
> > > + baud_mux_clk = devm_clk_get_optional_enabled(dev, "sw_baud");
> > > + ret = PTR_ERR_OR_ZERO(baud_mux_clk);
> > > + if (ret)
> > > + goto release_dma;
> > > + if (baud_mux_clk) {
> > > dev_dbg(dev, "BAUD MUX clock found\n");
> > > - ret = clk_prepare_enable(baud_mux_clk);
> > > - if (ret)
> > > - goto release_dma;
> > > +
> > > priv->baud_mux_clk = baud_mux_clk;
> > > init_real_clk_rates(dev, priv);
> > > clk_rate = priv->default_mux_rate;
> > > + } else {
> > > + dev_dbg(dev, "BAUD MUX clock not specified\n");
> >
> > little behavioral change here, but I don't think this is a
> > problem.
>
> You meant that "if (!x) else" had been changed to "if (x) else" semantics?
> Otherwise I don't see any difference.

If devm_clk_get() fails with anything but -EPROBE_DEFER
originally the code was not returning, while now it returns.

But still... this is perfectly fine.

Andi

> > Reviewed-by: Andi Shyti <andi.shyti@xxxxxxxxxxxxxxx>
>
> Thank you!
>
> --
> With Best Regards,
> Andy Shevchenko
>