Commit 3082d7ef authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Rafael J. Wysocki
Browse files

Documentation: firmware-guide: gpio-properties: Clarify Explicit and Implicit



Clarify the Explicit and Implicit meanings in the table of Pull Bias.

While at it, distinguish pull bias keywords used in ACPI by using bold
font in the table of the respective terms.

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent faffb083
Loading
Loading
Loading
Loading
+24 −11
Original line number Original line Diff line number Diff line
@@ -67,17 +67,30 @@ state of the output pin which driver should use during its initialization.
Linux tries to use common sense here and derives the state from the bias
Linux tries to use common sense here and derives the state from the bias
and polarity settings. The table below shows the expectations:
and polarity settings. The table below shows the expectations:


=========  =============  ==============
+-------------+-------------+-----------------------------------------------+
Pull Bias     Polarity     Requested...
| Pull Bias   | Polarity    | Requested...                                  |
=========  =============  ==============
+=============+=============+===============================================+
Implicit     x            AS IS (assumed firmware configured for us)
| Implicit                                                                  |
Explicit     x (no _DSD)  as Pull Bias (Up == High, Down == Low),
+-------------+-------------+-----------------------------------------------+
                          assuming non-active (Polarity = !Pull Bias)
| **Default** | x           | AS IS (assumed firmware configured it for us) |
Down         Low          as low, assuming active
+-------------+-------------+-----------------------------------------------+
Down         High         as low, assuming non-active
| Explicit                                                                  |
Up           Low          as high, assuming non-active
+-------------+-------------+-----------------------------------------------+
Up           High         as high, assuming active
| **None**    | x           | AS IS (assumed firmware configured it for us) |
=========  =============  ==============
|             |             | with no Pull Bias                             |
+-------------+-------------+-----------------------------------------------+
| **Up**      | x (no _DSD) |                                               |
|             +-------------+ as high, assuming non-active                  |
|             | Low         |                                               |
|             +-------------+-----------------------------------------------+
|             | High        | as high, assuming active                      |
+-------------+-------------+-----------------------------------------------+
| **Down**    | x (no _DSD) |                                               |
|             +-------------+ as low, assuming non-active                   |
|             | High        |                                               |
|             +-------------+-----------------------------------------------+
|             | Low         | as low, assuming active                       |
+-------------+-------------+-----------------------------------------------+


That said, for our above example the both GPIOs, since the bias setting
That said, for our above example the both GPIOs, since the bias setting
is explicit and _DSD is present, will be treated as active with a high
is explicit and _DSD is present, will be treated as active with a high