2023-12-11 19:03:53

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v5 03/13] pinctrl: ingenic: Use C99 initializers in PINCTRL_PIN_GROUP()

For the better flexibility use C99 initializers in PINCTRL_PIN_GROUP().

Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/pinctrl/pinctrl-ingenic.c | 21 +++++++++++++--------
1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-ingenic.c b/drivers/pinctrl/pinctrl-ingenic.c
index ee718f6e2556..f5661dcdedf5 100644
--- a/drivers/pinctrl/pinctrl-ingenic.c
+++ b/drivers/pinctrl/pinctrl-ingenic.c
@@ -82,16 +82,21 @@
#define PINS_PER_GPIO_CHIP 32
#define JZ4730_PINS_PER_PAIRED_REG 16

-#define INGENIC_PIN_GROUP_FUNCS(name, id, funcs) \
- { \
- name, \
- id##_pins, \
- ARRAY_SIZE(id##_pins), \
- funcs, \
+#define INGENIC_PIN_GROUP_FUNCS(_name_, id, funcs) \
+ { \
+ .name = _name_, \
+ .pins = id##_pins, \
+ .num_pins = ARRAY_SIZE(id##_pins), \
+ .data = funcs, \
}

-#define INGENIC_PIN_GROUP(name, id, func) \
- INGENIC_PIN_GROUP_FUNCS(name, id, (void *)(func))
+#define INGENIC_PIN_GROUP(_name_, id, func) \
+ { \
+ .name = _name_, \
+ .pins = id##_pins, \
+ .num_pins = ARRAY_SIZE(id##_pins), \
+ .data = (void *)func, \
+ }

enum jz_version {
ID_JZ4730,
--
2.43.0.rc1.1.gbec44491f096


2023-12-13 10:26:55

by Paul Cercueil

[permalink] [raw]
Subject: Re: [PATCH v5 03/13] pinctrl: ingenic: Use C99 initializers in PINCTRL_PIN_GROUP()

Hi Andy,

Le lundi 11 décembre 2023 à 20:57 +0200, Andy Shevchenko a écrit :
> For the better flexibility use C99 initializers in
> PINCTRL_PIN_GROUP().
>
> Signed-off-by: Andy Shevchenko <[email protected]>
> ---
>  drivers/pinctrl/pinctrl-ingenic.c | 21 +++++++++++++--------
>  1 file changed, 13 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/pinctrl/pinctrl-ingenic.c
> b/drivers/pinctrl/pinctrl-ingenic.c
> index ee718f6e2556..f5661dcdedf5 100644
> --- a/drivers/pinctrl/pinctrl-ingenic.c
> +++ b/drivers/pinctrl/pinctrl-ingenic.c
> @@ -82,16 +82,21 @@
>  #define PINS_PER_GPIO_CHIP 32
>  #define JZ4730_PINS_PER_PAIRED_REG 16
>  
> -#define INGENIC_PIN_GROUP_FUNCS(name, id, funcs) \
> - { \
> - name, \
> - id##_pins, \
> - ARRAY_SIZE(id##_pins), \
> - funcs, \
> +#define INGENIC_PIN_GROUP_FUNCS(_name_, id,
> funcs) \
> + {
> \
> + .name =
> _name_, \
> + .pins =
> id##_pins, \
> + .num_pins =
> ARRAY_SIZE(id##_pins), \
> + .data =
> funcs, \
>   }
>  
> -#define INGENIC_PIN_GROUP(name, id, func) \
> - INGENIC_PIN_GROUP_FUNCS(name, id, (void *)(func))
> +#define INGENIC_PIN_GROUP(_name_, id,
> func) \
> + {
> \
> + .name =
> _name_, \
> + .pins =
> id##_pins, \
> + .num_pins =
> ARRAY_SIZE(id##_pins), \
> + .data = (void
> *)func, \
> + }

This INGENIC_PIN_GROUP() macro doesn't need to be modified, does it?

Cheers,
-Paul

>  
>  enum jz_version {
>   ID_JZ4730,

2023-12-13 13:22:35

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v5 03/13] pinctrl: ingenic: Use C99 initializers in PINCTRL_PIN_GROUP()

On Wed, Dec 13, 2023 at 10:55:46AM +0100, Paul Cercueil wrote:
> Le lundi 11 d?cembre 2023 ? 20:57 +0200, Andy Shevchenko a ?crit?:

...

> > -#define INGENIC_PIN_GROUP(name, id, func) \
> > - INGENIC_PIN_GROUP_FUNCS(name, id, (void *)(func))
> > +#define INGENIC_PIN_GROUP(_name_, id,
> > func) \
> > + {
> > \
> > + .name =
> > _name_, \
> > + .pins =
> > id##_pins, \
> > + .num_pins =
> > ARRAY_SIZE(id##_pins), \
> > + .data = (void
> > *)func, \
> > + }
>
> This INGENIC_PIN_GROUP() macro doesn't need to be modified, does it?

We can go either way. I prefer to go this way as it reduces level of
indirections in the macros. It makes code easier to read and understand.
But if you insist, I can drop that change in next version.

--
With Best Regards,
Andy Shevchenko


2023-12-17 14:43:40

by Paul Cercueil

[permalink] [raw]
Subject: Re: [PATCH v5 03/13] pinctrl: ingenic: Use C99 initializers in PINCTRL_PIN_GROUP()

Hi Andy,

Le mercredi 13 décembre 2023 à 15:21 +0200, Andy Shevchenko a écrit :
> On Wed, Dec 13, 2023 at 10:55:46AM +0100, Paul Cercueil wrote:
> > Le lundi 11 décembre 2023 à 20:57 +0200, Andy Shevchenko a écrit :
>
> ...
>
> > > -#define INGENIC_PIN_GROUP(name, id, func) \
> > > - INGENIC_PIN_GROUP_FUNCS(name, id, (void *)(func))
> > > +#define INGENIC_PIN_GROUP(_name_, id,
> > > func) \
> > > + {
> > > \
> > > + .name =
> > > _name_, \
> > > + .pins =
> > > id##_pins, \
> > > + .num_pins =
> > > ARRAY_SIZE(id##_pins), \
> > > + .data = (void
> > > *)func, \
> > > + }
> >
> > This INGENIC_PIN_GROUP() macro doesn't need to be modified, does
> > it?
>
> We can go either way. I prefer to go this way as it reduces level of
> indirections in the macros. It makes code easier to read and
> understand.
> But if you insist, I can drop that change in next version.
>

I like the patches to be minimal. But I understand your point of view
as well.

If you have to issue a v6, maybe state the reason why you also modify
INGENIC_PIN_GROUP() then. But I don't care enough to request a v6 just
for that.

So:
Acked-by: Paul Cercueil <[email protected]>

Cheers,
-Paul

2023-12-18 11:57:25

by Paul Cercueil

[permalink] [raw]
Subject: Re: [PATCH v5 03/13] pinctrl: ingenic: Use C99 initializers in PINCTRL_PIN_GROUP()

Hi Andy,

Le lundi 18 décembre 2023 à 12:41 +0200, Andy Shevchenko a écrit :
> On Sun, Dec 17, 2023 at 03:43:24PM +0100, Paul Cercueil wrote:
> > Le mercredi 13 décembre 2023 à 15:21 +0200, Andy Shevchenko a
> > écrit :
> > > On Wed, Dec 13, 2023 at 10:55:46AM +0100, Paul Cercueil wrote:
> > > > Le lundi 11 décembre 2023 à 20:57 +0200, Andy Shevchenko a
> > > > écrit :
>
> ...
>
> > > > > -#define INGENIC_PIN_GROUP(name, id, func) \
> > > > > - INGENIC_PIN_GROUP_FUNCS(name, id, (void *)(func))
> > > > > +#define INGENIC_PIN_GROUP(_name_, id,
> > > > > func) \
> > > > > + {
> > > > >
> > > > > \
> > > > > + .name =
> > > > > _name_,
> > > > > \
> > > > > + .pins =
> > > > > id##_pins,
> > > > > \
> > > > > + .num_pins =
> > > > > ARRAY_SIZE(id##_pins), \
> > > > > + .data = (void
> > > > > *)func, \
> > > > > + }
> > > >
> > > > This INGENIC_PIN_GROUP() macro doesn't need to be modified,
> > > > does
> > > > it?
> > >
> > > We can go either way. I prefer to go this way as it reduces level
> > > of
> > > indirections in the macros. It makes code easier to read and
> > > understand.
> > > But if you insist, I can drop that change in next version.
> >
> > I like the patches to be minimal. But I understand your point of
> > view
> > as well.
> >
> > If you have to issue a v6, maybe state the reason why you also
> > modify
> > INGENIC_PIN_GROUP() then. But I don't care enough to request a v6
> > just
> > for that.
> >
> > So:
> > Acked-by: Paul Cercueil <[email protected]>
>
> Thank you!
>
> But as I already noted, the series had been applied (by Linus W.)
> and this does not seem to be a critical to fix, do you agree?
>

Well I only suggested to change the commit message - so no, it is not
critical to fix.

Cheers,
-Paul