Re: [PATCH 2/2] gpio: Make "offset" and "unsigned int", not just "unsigned"

From: Joe Perches
Date: Tue Apr 28 2020 - 20:58:24 EST


On Tue, 2020-04-28 at 17:50 -0700, Doug Anderson wrote:
> Hi,
>
> On Tue, Apr 28, 2020 at 5:38 PM Joe Perches <joe@xxxxxxxxxxx> wrote:
> > On Tue, 2020-04-28 at 17:23 -0700, Douglas Anderson wrote:
> > > When I copied the function prototypes from the GPIO header file into
> > > my own driver, checkpatch yelled at me saying that I shouldn't use use
> > > "unsigned" but instead should say "unsigned int". Let's make the
> > > header file use "unsigned int" so others who copy like I did won't get
> > > yelled at.
> >
> > There are a few other unsigned declarations in the file.
>
> There are? I swear I looked for them before I sent my patch and I
> couldn't find them. Then I looked again upon seeing your reply and I
> still can't find them. My eyes are bad, though. Maybe you can give
> me specifics?

$ git grep -P -n '\bunsigned\s+(?!int|long)' include/linux/gpio/driver.h
include/linux/gpio/driver.h:352: unsigned offset);
include/linux/gpio/driver.h:354: unsigned offset);
include/linux/gpio/driver.h:356: unsigned offset);
include/linux/gpio/driver.h:358: unsigned offset);
include/linux/gpio/driver.h:360: unsigned offset, int value);
include/linux/gpio/driver.h:362: unsigned offset);
include/linux/gpio/driver.h:367: unsigned offset, int value);
include/linux/gpio/driver.h:372: unsigned offset,
include/linux/gpio/driver.h:375: unsigned offset);
include/linux/gpio/driver.h:462: unsigned offset);
include/linux/gpio/driver.h:660:int gpiochip_generic_request(struct gpio_chip *gc, unsigned offset);
include/linux/gpio/driver.h:661:void gpiochip_generic_free(struct gpio_chip *gc, unsigned offset);
include/linux/gpio/driver.h:662:int gpiochip_generic_config(struct gpio_chip *gc, unsigned offset,

> > Maybe do all of them (and remove the unnecessary externs)?
>
> You mean just remove the word "extern" everywhere in this file? Sure,
> I can if you want.

Up to the actual maintainers I suppose.
There are only a few extern function declarations.
Most do not use extern.

> > trivial reformatting of the function pointer block too
>
> Wow, I must be totally out of it. Maybe it's the gin and tonic I just
> had. I don't understand this comment either. Can you clarify?

int (*foo)(...,
...);

might be better with fewer tabs between return type and function pointer

int (*foo)(..., ...);

cheers, oe