Re: [PATCH 10/40] soc/tegra: pmc: Implement pad configuration via pinctrl

From: Thierry Reding
Date: Thu Aug 09 2018 - 09:12:18 EST


On Thu, Aug 09, 2018 at 03:44:12PM +0300, Aapo Vienamo wrote:
> On Thu, 9 Aug 2018 14:27:06 +0200
> Thierry Reding <thierry.reding@xxxxxxxxx> wrote:
>
> > On Wed, Aug 01, 2018 at 07:32:00PM +0300, Aapo Vienamo wrote:
> > > Register a pinctrl device and implement get and set functions for
> > > PIN_CONFIG_LOW_POWER_MODE and PIN_CONFIG_POWER_SOURCE parameters.
> > >
> > > Signed-off-by: Aapo Vienamo <avienamo@xxxxxxxxxx>
> > > Acked-by: Jon Hunter <jonathanh@xxxxxxxxxx>
> > > ---
> > > drivers/soc/tegra/pmc.c | 187 +++++++++++++++++++++++++++++++++++++++++++++++-
> > > 1 file changed, 185 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c
> > [...]
> > > @@ -1704,6 +1863,12 @@ static const u8 tegra124_cpu_powergates[] = {
> > > .name = (_name), \
> > > })
> > >
> > > +#define TEGRA_IO_PIN_DESC(_id, _dpd, _voltage, _name) \
> > > + ((struct pinctrl_pin_desc) { \
> > > + .number = (_id), \
> > > + .name = (_name) \
> > > + })
> > > +
> >
> > Do we really need the explicit cast to struct pinctrl_pin_desc here?
> >
>
> No, but I prefer to have it as it makes the type of the value the macro
> expands to explicit. In a way it hints at how and where the macro should
> be used and arguably improves readability.

It's a rather uncommon pattern in the kernel, and most issues are easily
caught by the compiler.

But it's fine with me if you want to keep it.

Thierry

Attachment: signature.asc
Description: PGP signature