mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-02-04 10:09:06 +00:00
pinctrl: generic: Add output-enable property
Add output-enable generic pin configuration property. This properties allows enabling/disabling pin's output capabilities without actually driving any value on the line. Acked-by: Rob Herring <robh@kernel.org> [Added inline elaborations on buffer enabling/disabling] Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
6183061967
commit
425562429d
@ -251,14 +251,20 @@ drive-push-pull - drive actively high and low
|
|||||||
drive-open-drain - drive with open drain
|
drive-open-drain - drive with open drain
|
||||||
drive-open-source - drive with open source
|
drive-open-source - drive with open source
|
||||||
drive-strength - sink or source at most X mA
|
drive-strength - sink or source at most X mA
|
||||||
input-enable - enable input on pin (no effect on output)
|
input-enable - enable input on pin (no effect on output, such as
|
||||||
input-disable - disable input on pin (no effect on output)
|
enabling an input buffer)
|
||||||
|
input-disable - disable input on pin (no effect on output, such as
|
||||||
|
disabling an input buffer)
|
||||||
input-schmitt-enable - enable schmitt-trigger mode
|
input-schmitt-enable - enable schmitt-trigger mode
|
||||||
input-schmitt-disable - disable schmitt-trigger mode
|
input-schmitt-disable - disable schmitt-trigger mode
|
||||||
input-debounce - debounce mode with debound time X
|
input-debounce - debounce mode with debound time X
|
||||||
power-source - select between different power supplies
|
power-source - select between different power supplies
|
||||||
low-power-enable - enable low power mode
|
low-power-enable - enable low power mode
|
||||||
low-power-disable - disable low power mode
|
low-power-disable - disable low power mode
|
||||||
|
output-disable - disable output on a pin (such as disable an output
|
||||||
|
buffer)
|
||||||
|
output-enable - enable output on a pin without actively driving it
|
||||||
|
(such as enabling an output buffer)
|
||||||
output-low - set the pin to output mode with low level
|
output-low - set the pin to output mode with low level
|
||||||
output-high - set the pin to output mode with high level
|
output-high - set the pin to output mode with high level
|
||||||
slew-rate - set the slew rate
|
slew-rate - set the slew rate
|
||||||
|
@ -44,6 +44,7 @@ static const struct pin_config_item conf_items[] = {
|
|||||||
PCONFDUMP(PIN_CONFIG_INPUT_SCHMITT, "input schmitt trigger", NULL, false),
|
PCONFDUMP(PIN_CONFIG_INPUT_SCHMITT, "input schmitt trigger", NULL, false),
|
||||||
PCONFDUMP(PIN_CONFIG_INPUT_SCHMITT_ENABLE, "input schmitt enabled", NULL, false),
|
PCONFDUMP(PIN_CONFIG_INPUT_SCHMITT_ENABLE, "input schmitt enabled", NULL, false),
|
||||||
PCONFDUMP(PIN_CONFIG_LOW_POWER_MODE, "pin low power", "mode", true),
|
PCONFDUMP(PIN_CONFIG_LOW_POWER_MODE, "pin low power", "mode", true),
|
||||||
|
PCONFDUMP(PIN_CONFIG_OUTPUT_ENABLE, "output enabled", NULL, false),
|
||||||
PCONFDUMP(PIN_CONFIG_OUTPUT, "pin output", "level", true),
|
PCONFDUMP(PIN_CONFIG_OUTPUT, "pin output", "level", true),
|
||||||
PCONFDUMP(PIN_CONFIG_POWER_SOURCE, "pin power source", "selector", true),
|
PCONFDUMP(PIN_CONFIG_POWER_SOURCE, "pin power source", "selector", true),
|
||||||
PCONFDUMP(PIN_CONFIG_SLEW_RATE, "slew rate", NULL, true),
|
PCONFDUMP(PIN_CONFIG_SLEW_RATE, "slew rate", NULL, true),
|
||||||
@ -172,6 +173,8 @@ static const struct pinconf_generic_params dt_params[] = {
|
|||||||
{ "input-schmitt-enable", PIN_CONFIG_INPUT_SCHMITT_ENABLE, 1 },
|
{ "input-schmitt-enable", PIN_CONFIG_INPUT_SCHMITT_ENABLE, 1 },
|
||||||
{ "low-power-disable", PIN_CONFIG_LOW_POWER_MODE, 0 },
|
{ "low-power-disable", PIN_CONFIG_LOW_POWER_MODE, 0 },
|
||||||
{ "low-power-enable", PIN_CONFIG_LOW_POWER_MODE, 1 },
|
{ "low-power-enable", PIN_CONFIG_LOW_POWER_MODE, 1 },
|
||||||
|
{ "output-disable", PIN_CONFIG_OUTPUT_ENABLE, 0 },
|
||||||
|
{ "output-enable", PIN_CONFIG_OUTPUT_ENABLE, 1 },
|
||||||
{ "output-high", PIN_CONFIG_OUTPUT, 1, },
|
{ "output-high", PIN_CONFIG_OUTPUT, 1, },
|
||||||
{ "output-low", PIN_CONFIG_OUTPUT, 0, },
|
{ "output-low", PIN_CONFIG_OUTPUT, 0, },
|
||||||
{ "power-source", PIN_CONFIG_POWER_SOURCE, 0 },
|
{ "power-source", PIN_CONFIG_POWER_SOURCE, 0 },
|
||||||
|
@ -73,10 +73,16 @@
|
|||||||
* operation, if several modes of operation are supported these can be
|
* operation, if several modes of operation are supported these can be
|
||||||
* passed in the argument on a custom form, else just use argument 1
|
* passed in the argument on a custom form, else just use argument 1
|
||||||
* to indicate low power mode, argument 0 turns low power mode off.
|
* to indicate low power mode, argument 0 turns low power mode off.
|
||||||
* @PIN_CONFIG_OUTPUT: this will configure the pin as an output. Use argument
|
* @PIN_CONFIG_OUTPUT_ENABLE: this will enable the pin's output mode
|
||||||
* 1 to indicate high level, argument 0 to indicate low level. (Please
|
* without driving a value there. For most platforms this reduces to
|
||||||
* see Documentation/pinctrl.txt, section "GPIO mode pitfalls" for a
|
* enable the output buffers and then let the pin controller current
|
||||||
* discussion around this parameter.)
|
* configuration (eg. the currently selected mux function) drive values on
|
||||||
|
* the line. Use argument 1 to enable output mode, argument 0 to disable
|
||||||
|
* it.
|
||||||
|
* @PIN_CONFIG_OUTPUT: this will configure the pin as an output and drive a
|
||||||
|
* value on the line. Use argument 1 to indicate high level, argument 0 to
|
||||||
|
* indicate low level. (Please see Documentation/pinctrl.txt, section
|
||||||
|
* "GPIO mode pitfalls" for a discussion around this parameter.)
|
||||||
* @PIN_CONFIG_POWER_SOURCE: if the pin can select between different power
|
* @PIN_CONFIG_POWER_SOURCE: if the pin can select between different power
|
||||||
* supplies, the argument to this parameter (on a custom format) tells
|
* supplies, the argument to this parameter (on a custom format) tells
|
||||||
* the driver which alternative power source to use.
|
* the driver which alternative power source to use.
|
||||||
@ -105,6 +111,7 @@ enum pin_config_param {
|
|||||||
PIN_CONFIG_INPUT_SCHMITT,
|
PIN_CONFIG_INPUT_SCHMITT,
|
||||||
PIN_CONFIG_INPUT_SCHMITT_ENABLE,
|
PIN_CONFIG_INPUT_SCHMITT_ENABLE,
|
||||||
PIN_CONFIG_LOW_POWER_MODE,
|
PIN_CONFIG_LOW_POWER_MODE,
|
||||||
|
PIN_CONFIG_OUTPUT_ENABLE,
|
||||||
PIN_CONFIG_OUTPUT,
|
PIN_CONFIG_OUTPUT,
|
||||||
PIN_CONFIG_POWER_SOURCE,
|
PIN_CONFIG_POWER_SOURCE,
|
||||||
PIN_CONFIG_SLEW_RATE,
|
PIN_CONFIG_SLEW_RATE,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user