Re: [PATCH v2 10/16] gpio: add a reusable generic gpio_chip using regmap

From: Bartosz Golaszewski
Date: Tue Apr 14 2020 - 13:00:59 EST


wt., 14 kwi 2020 o 12:07 Michael Walle <michael@xxxxxxxx> napisaÅ(a):
> >>
> >> So the best from a user perspective I've could come up with was:
> >>
> >> ->base_reg = GPIO_REGMAP_ADDR(addr);
> >>
> >> I'm open for suggestions.
> >>
> >
> > Maybe setting the pointer to ERR_PTR(-ENOENT) which will result in
> > IS_ERR() returning true?
>
> Unfortunatly, its not a pointer, but only a regular unsigned int (ie
> the type the regmap API has for its "reg" property). It could be a
> pointer of course but then the user would have to allocate additional
> memory.
>
> -michael
>

Eek, of course it's not a pointer. If possible I'd like to avoid this
GPIO_REGMAP_ADDR() macro, so how about having some separate field for
invalid offsets making every offset 'valid' by default?

Linus: do you have a better idea?

Bart