Quoting Liang Yang (2022-01-13 03:57:42) > diff --git a/drivers/clk/meson/sclk-div.c b/drivers/clk/meson/sclk-div.c > index 76d31c0a3342..79c9efd28115 100644 > --- a/drivers/clk/meson/sclk-div.c > +++ b/drivers/clk/meson/sclk-div.c > @@ -28,22 +29,39 @@ meson_sclk_div_data(struct clk_regmap *clk) > return (struct meson_sclk_div_data *)clk->data; > } > > -static int sclk_div_maxval(struct meson_sclk_div_data *sclk) > +static inline int sclk_get_reg(int val, unsigned char flag) > { > - return (1 << sclk->div.width) - 1; > + if ((flag & MESON_SCLK_ONE_BASED) || !val) > + return val; > + else > + return val - 1; Please drop the else > +} > + > +static inline int sclk_get_divider(int reg, unsigned char flag) > +{ > + if (flag & MESON_SCLK_ONE_BASED) > + return reg; > + else Please drop the else > + return reg + 1; > } > > static int sclk_div_maxdiv(struct meson_sclk_div_data *sclk) > { > - return sclk_div_maxval(sclk) + 1;