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

From: Alexander Stein
Date: Thu Feb 17 2011 - 07:40:23 EST


On Thursday 17 February 2011, 13:03:54 Lars-Peter Clausen wrote:
> On 02/17/2011 08:33 AM, Eric Miao wrote:
> > On Thu, Feb 17, 2011 at 8:56 AM, Peter Tyser <ptyser@xxxxxxxxxxx> wrote:
> >> Previously, gpiolib would unconditionally flag all GPIO pins as inputs,
> >> regardless of their true state. This resulted in all GPIO output pins
> >> initially being incorrectly identified as "input" in the GPIO sysfs.
> >>
> >> Since the direction of GPIOs is not known prior to having their
> >> direction set, instead set the default direction to "unknown" to prevent
> >> user confusion. A pin with an "unknown" direction can not be written or
> >> read via sysfs; it must first be configured as an input or output before
> >> it can be used.
> >
> > Hrm... that's why I don't like the original definition of gpio_request()
> > which is vague on the pin configurations.
>
> Actually it doesn't say anything at all about the current configuration at
> all. Requesting a pin grants you exclusive access to that pin, if it
> succeeds. So it is solely about ownership and not about configuration.

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

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/