diff options
| author | Linus Walleij <linus.walleij@linaro.org> | 2017-10-28 09:37:17 -0400 |
|---|---|---|
| committer | Linus Walleij <linus.walleij@linaro.org> | 2017-11-08 07:49:45 -0500 |
| commit | e0e1e39de490a2d9b8a173363ccf2415ddada871 (patch) | |
| tree | 619523b63681964806e20a87e870423f846c359b /include/linux/pinctrl | |
| parent | 30ac0d3b0702ea3b6ad19b0c1452831526fe03d5 (diff) | |
pinctrl: Add skew-delay pin config and bindings
Some pin controllers (such as the Gemini) can control the
expected clock skew and output delay on certain pins with a
sub-nanosecond granularity. This is typically done by shunting
in a number of double inverters in front of or behind the pin.
Make it possible to configure this with a generic binding.
Cc: devicetree@vger.kernel.org
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/linux/pinctrl')
| -rw-r--r-- | include/linux/pinctrl/pinconf-generic.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/pinctrl/pinconf-generic.h b/include/linux/pinctrl/pinconf-generic.h index 5d8bc7f21c2a..ec6dadcc1fde 100644 --- a/include/linux/pinctrl/pinconf-generic.h +++ b/include/linux/pinctrl/pinconf-generic.h | |||
| @@ -90,6 +90,10 @@ | |||
| 90 | * @PIN_CONFIG_SLEW_RATE: if the pin can select slew rate, the argument to | 90 | * @PIN_CONFIG_SLEW_RATE: if the pin can select slew rate, the argument to |
| 91 | * this parameter (on a custom format) tells the driver which alternative | 91 | * this parameter (on a custom format) tells the driver which alternative |
| 92 | * slew rate to use. | 92 | * slew rate to use. |
| 93 | * @PIN_CONFIG_SKEW_DELAY: if the pin has programmable skew rate (on inputs) | ||
| 94 | * or latch delay (on outputs) this parameter (in a custom format) | ||
| 95 | * specifies the clock skew or latch delay. It typically controls how | ||
| 96 | * many double inverters are put in front of the line. | ||
| 93 | * @PIN_CONFIG_END: this is the last enumerator for pin configurations, if | 97 | * @PIN_CONFIG_END: this is the last enumerator for pin configurations, if |
| 94 | * you need to pass in custom configurations to the pin controller, use | 98 | * you need to pass in custom configurations to the pin controller, use |
| 95 | * PIN_CONFIG_END+1 as the base offset. | 99 | * PIN_CONFIG_END+1 as the base offset. |
| @@ -117,6 +121,7 @@ enum pin_config_param { | |||
| 117 | PIN_CONFIG_POWER_SOURCE, | 121 | PIN_CONFIG_POWER_SOURCE, |
| 118 | PIN_CONFIG_SLEEP_HARDWARE_STATE, | 122 | PIN_CONFIG_SLEEP_HARDWARE_STATE, |
| 119 | PIN_CONFIG_SLEW_RATE, | 123 | PIN_CONFIG_SLEW_RATE, |
| 124 | PIN_CONFIG_SKEW_DELAY, | ||
| 120 | PIN_CONFIG_END = 0x7F, | 125 | PIN_CONFIG_END = 0x7F, |
| 121 | PIN_CONFIG_MAX = 0xFF, | 126 | PIN_CONFIG_MAX = 0xFF, |
| 122 | }; | 127 | }; |
