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

From: Doug Anderson
Date: Tue Apr 28 2020 - 21:04:49 EST


Hi,

On Tue, Apr 28, 2020 at 5:57 PM Joe Perches <joe@xxxxxxxxxxx> wrote:
>
> 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,

...riiiiiggght. ...and now I run your sed script _after_ my patch
and I get no hits. ...so I'm still confused about what you want me to
do that's not already done in my patch.


> > > 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.

OK, maybe I'll wait for Linux W. or Bartosz to weigh in unless there
is some Linux policy against using "extern" in header files?


> > > 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)(..., ...);

I'll wait for Linux W. or Bartosz to weigh in here, since it feels
more like a style decision. Happy to add a patch for it, though.

-Doug