Hi Prabhakar, On Tue, 18 Feb 2025 at 12:44, Prabhakar <prabhakar.csengg@xxxxxxxxx> wrote: > From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> > > Move the `PLL_CLK_ACCESS()`, `PLL_CLK1_OFFSET()`, and `PLL_CLK2_OFFSET()` > macros from `rzv2h-cpg.h` to `rzv2h-cpg.c`, as they are not intended for > use by SoC-specific CPG drivers. > > Additionally, update `PLL_CLK1_OFFSET()` and `PLL_CLK2_OFFSET()` to use > the `FIELD_GET()` macro for better readability and simplify the > `PLL_CLK_ACCESS()` macro. > > Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> Thanks for your patch! The changes look correct to me, so Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> but I still have some comments... > --- a/drivers/clk/renesas/rzv2h-cpg.c > +++ b/drivers/clk/renesas/rzv2h-cpg.c > @@ -56,6 +56,10 @@ > > #define CPG_CLKSTATUS0 (0x700) > > +#define PLL_CLK_ACCESS(n) (!!((n) & BIT(31))) OK > +#define PLL_CLK1_OFFSET(n) FIELD_GET(GENMASK(15, 0), (n)) > +#define PLL_CLK2_OFFSET(n) (PLL_CLK1_OFFSET(n) + (0x4)) IMO, the original versions are more readable, as they clearly show the symmetry between encoding and decoding. Perhaps a good alternative would be a structure with bitfields and a PACK() macro, like is used for DDIV and SMUX? > + > /** > * struct rzv2h_cpg_priv - Clock Pulse Generator Private Data > * > diff --git a/drivers/clk/renesas/rzv2h-cpg.h b/drivers/clk/renesas/rzv2h-cpg.h > index fd8eb985c75b..81f44b94f6d5 100644 > --- a/drivers/clk/renesas/rzv2h-cpg.h > +++ b/drivers/clk/renesas/rzv2h-cpg.h > @@ -87,9 +87,6 @@ enum clk_types { > > /* BIT(31) indicates if CLK1/2 are accessible or not */ > #define PLL_CONF(n) (BIT(31) | ((n) & ~GENMASK(31, 16))) > -#define PLL_CLK_ACCESS(n) ((n) & BIT(31) ? 1 : 0) > -#define PLL_CLK1_OFFSET(n) ((n) & ~GENMASK(31, 16)) > -#define PLL_CLK2_OFFSET(n) (((n) & ~GENMASK(31, 16)) + (0x4)) > > #define DEF_TYPE(_name, _id, _type...) \ > { .name = _name, .id = _id, .type = _type } 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