Messages in this thread | | | From | Linus Walleij <> | Date | Thu, 12 Sep 2019 14:46:32 +0100 | Subject | Re: [PATCH] pinctrl: at91-pio4: implement .get_multiple and .set_multiple |
| |
On Wed, Sep 11, 2019 at 10:11 AM Alexandre Belloni <alexandre.belloni@bootlin.com> wrote: > On 11/09/2019 01:27:10+0100, Linus Walleij wrote:
> > > +#if ATMEL_PIO_NPINS_PER_BANK != BITS_PER_LONG > > > > Should it not be > rather than != ? > > Realistically, the only case that could happen would be > ATMEL_PIO_NPINS_PER_BANK == 32 and BITS_PER_LONG ==64. so I would go for > ATMEL_PIO_NPINS_PER_BANK < BITS_PER_LONG
OK I see.
> > > + word = BIT_WORD(bank * ATMEL_PIO_NPINS_PER_BANK); > > > + offset = bank * ATMEL_PIO_NPINS_PER_BANK % BITS_PER_LONG; > > > +#endif > > > > This doesn't look good for multiplatform kernels. > > I don't think we have multiplatform kernels that run both in 32 and 64 > bits. I don't believe ATMEL_PIO_NPINS_PER_BANK will ever change, it has > been 32 on all the atmel SoCs since 2001.
So there is a bit missing from the commit message: the info that the same driver is being used on 32 and 64 bit builds, and that is the reason we allow compile-time ifdef things.
Can you add this to the commit message, or maybe inline in the code, or both?
It confused me so it will confuse others.
Yours, Linus Walleij
| |