Re: [PATCH] GPIO: Add gpio_to_desc helper

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 16:05 Sat 11 May     , Alexander Shiyan wrote:
> > > > On 18:04 Fri 10 May     , Alexander Shiyan wrote:
> > > > > Patch adds gpio_to_desc helper for validate GPIO.
> > > > > A bit optimization is performed (about -250 bytes on ARM).
> > > > > 
> > > > > Signed-off-by: Alexander Shiyan <shc_work@xxxxxxx>
> > > > > ---
> > > > >  drivers/gpio/gpiolib.c | 97 ++++++++++++++++++++++++++------------------------
> > > > >  1 file changed, 51 insertions(+), 46 deletions(-)
> > > > > 
> > > > > diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
> > > > > index 6398268..d7aa094 100644
> > > > > --- a/drivers/gpio/gpiolib.c
> > > > > +++ b/drivers/gpio/gpiolib.c
> > > > > @@ -32,20 +32,30 @@ static int gpio_ensure_requested(struct gpio_info *gi, int gpio)
> > > > >  	return gpio_request(gpio, "gpio");
> > > > >  }
> > > > >  
> > > > > +static struct gpio_info *gpio_to_desc(unsigned gpio)
> > > > > +{
> > > > > +	if (!gpio_is_valid(gpio))
> > > > put the WARN too as we need to known a gpio_xxx is used on a non valid gpio
> > > 
> > > Original bb code does not contain any warnings here. So if it really
> > > necessary it can be added later.
> > 
> > put it as we keep the code inline with the kernel a key point for sync
> 
> And this warning avoid my second patch to remove checks when we are
> call gpio_free/set/get etc... with non existent (optional) gpios.

yes as this patch break the compatibility with the kernel sorry NACK on it

> I strongly do not want to add it.

if you can gpio_xxx with an invalid gpio it's wrong
and as we keep the same API as in linux we need to WARN
as you DO need to check the gpio is valid before calling the gpio lib

we keep api in sync to simplify maintainance between barebox and the kernel

Best Regards,
J.

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox




[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux