From: Alexandre Courbot <acourbot@nvidia.com>
To: Dirk Behme <dirk.behme@gmail.com>, linux-gpio@vger.kernel.org
Cc: Linus Walleij <linus.walleij@linaro.org>
Subject: Re: [PATCH v2] Documentation: gpio: consumer: describe active low property
Date: Mon, 17 Aug 2015 12:01:10 +0900 [thread overview]
Message-ID: <55D14E76.5050804@nvidia.com> (raw)
In-Reply-To: <55CED248.101@gmail.com>
On 08/15/2015 02:46 PM, Dirk Behme wrote:
> On 18.07.2015 08:02, Dirk Behme wrote:
>> I've been searching for any documentation of 'the active-low property
>> of a GPIO'
>> already mentioned in this documenation. But couldn't find any. Add it.
>>
>> Sigend-off-by: Dirk Behme <dirk.behme@gmail.com>
>> Acked-by: Alexandre Courbot <acourbot@nvidia.com>
>> ---
>> Changes in v2: Incorporate the review comments from Alexandre.
>>
>> Documentation/gpio/consumer.txt | 33 +++++++++++++++++++++++++++++++++
>> 1 file changed, 33 insertions(+)
>>
>> diff --git a/Documentation/gpio/consumer.txt
>> b/Documentation/gpio/consumer.txt
>> index 75542b9..df7c51a 100644
>> --- a/Documentation/gpio/consumer.txt
>> +++ b/Documentation/gpio/consumer.txt
>> @@ -237,6 +237,39 @@ Note that these functions should only be used
>> with great moderation ; a driver
>> should not have to care about the physical line level.
>>
>>
>> +The active-low property
>> +-----------------------
>> +
>> +As a driver should not have to care about the physical line level,
>> all of the
>> +gpiod_set_value_xxx() or gpiod_set_array_value_xxx() functions
>> operate with
>> +the *logical* value. With this they take the active-low property into
>> account.
>> +This does mean that they check whether the GPIO is configured to be
>> active-low.
>> +And if so, they manipulate the passed value before the physical line
>> level is
>> +driven.
>> +
>> +With this, all the gpiod_set_(array)_value_xxx() functions interpret
>> the parameter
>> +"value" as "active" ("1") or "inactive" ("0"). The physical line
>> level will be
>> +driven accordingly.
>> +
>> +As an example, if the active-low poperty for a dedicated GPIO is set,
>> and the
>> +gpiod_set_(array)_value_xxx() passes "active" ("1"), the physical
>> line level will be
>> +driven low.
>> +
>> +To summarize:
>> +
>> +Function (example) active-low proporty physical line
>> +gpiod_set_raw_value(desc, 0); don't care low
>> +gpiod_set_raw_value(desc, 1); don't care high
>> +gpiod_set_value(desc, 0); default (active-high) low
>> +gpiod_set_value(desc, 1); default (active-high) high
>> +gpiod_set_value(desc, 0); active-low high
>> +gpiod_set_value(desc, 1); active-low low
>> +
>> +Please note again that the set_raw/get_raw functions should be
>> avoided as much
>> +as possible, especially by drivers which should not care about the
>> actual physical
>> +line level and worry about the logical value instead.
>> +
>> +
>> Set multiple GPIO outputs with a single function call
>> -----------------------------------------------------
>> The following functions set the output values of an array of GPIOs:
>
>
> Any further comments on this? Could this be applied?
I am ok with it - Linus?
next prev parent reply other threads:[~2015-08-17 3:01 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-18 6:02 [PATCH v2] Documentation: gpio: consumer: describe active low property Dirk Behme
2015-08-15 5:46 ` Dirk Behme
2015-08-17 3:01 ` Alexandre Courbot [this message]
2015-08-17 3:18 ` Michael Welling
2015-08-17 8:39 ` Linus Walleij
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55D14E76.5050804@nvidia.com \
--to=acourbot@nvidia.com \
--cc=dirk.behme@gmail.com \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.