Re: [PATCH v2 1/4] gpiolib: Add "unknown" direction support

From: Alexander Stein
Date: Mon Feb 21 2011 - 04:09:41 EST


On Thursday 17 February 2011, 14:06:06 Lars-Peter Clausen wrote:
> > Well, ownership is a bit misleading here. You must request a GPIO to
> > change its direction. But to set or get a value this isn't required.
>
> Well, it is not enforced in the actual code, but the GPIO API is based on
> convention and I would consider it a misusage of the API to call
> gpio_{set,get}_value without requesting the pin and having configured its
> direction prior to it.
>
> > In general one could expect if you requested a GPIO you are the only one
> > to call any function on it. On the other hand, this may be bad in some
> > situations where you want to read a GPIO value from different places.
>
> Sharing GPIOs in read-only mode, is indeed something that is not covered by
> the GPIO API. It might be worth adding a gpio_request_shared, which would
> only permit setting the direction to input. Futher gpio_request_shared
> calls would be allowed but gpio_request calls would fail.

gpio_request_shared sounds interesting, but in this case an implicit
gpio_direction_input call has to be done in the first shared request. But the
user must/should not call gpio_direction_input himself which is quite a bit
different than using a normal gpio_requested gpio.

Alexander
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/