Messages in this thread | | | Date | Wed, 7 Nov 2012 22:28:01 +0100 | Subject | Re: How about a gpio_get(device *, char *) function? | From | Linus Walleij <> |
| |
On Mon, Nov 5, 2012 at 6:35 PM, Stephen Warren <swarren@wwwdotorg.org> wrote: > [Me] >> gpio_get() should get an abstract handle just like clk_get() or >> regulator_get(), not a fixed numeral. > > I don't really see why the return type of gpio_get() influences whether > it can be implemented or not.
It doesn't influence that, but I want to follow the opaqueness design pattern from irq descriptors and struct clk.
> With board files, some "gpio map" table would simply contain the same > int GPIO ID value the table as is used anywhere else already. With DT, > the same xlate function would translate from DT GPIO-chip-relative > IDs/specifiers into the global number space in the same way that we do > today via other APIs.
Yes, this part I buy into, just want to see how we can move forward from there. The coplete nightmare is to introduce something into DT that nails down a global GPIO numberspace... but I think that is not the case atleast.
> If the GPIO subsystem were reworked as you propose, this API could be > reworked in exactly the same way, or if implemented after the rework, it > would return whatever handle type was in use at the time.
Yes, I just think we should return an opaque struct from day 1, so just a little, little bit more to shield us.
Yours, Linus Walleij
| |