summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2017-10-28 09:37:17 -0400
committerLinus Walleij <linus.walleij@linaro.org>2017-11-08 07:49:45 -0500
commite0e1e39de490a2d9b8a173363ccf2415ddada871 (patch)
tree619523b63681964806e20a87e870423f846c359b /drivers/pinctrl
parent30ac0d3b0702ea3b6ad19b0c1452831526fe03d5 (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 'drivers/pinctrl')
-rw-r--r--drivers/pinctrl/pinconf-generic.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/pinctrl/pinconf-generic.c b/drivers/pinctrl/pinconf-generic.c
index 8eaa25c3384f..b4f7f8a458ea 100644
--- a/drivers/pinctrl/pinconf-generic.c
+++ b/drivers/pinctrl/pinconf-generic.c
@@ -49,6 +49,7 @@ static const struct pin_config_item conf_items[] = {
49 PCONFDUMP(PIN_CONFIG_POWER_SOURCE, "pin power source", "selector", true), 49 PCONFDUMP(PIN_CONFIG_POWER_SOURCE, "pin power source", "selector", true),
50 PCONFDUMP(PIN_CONFIG_SLEEP_HARDWARE_STATE, "sleep hardware state", NULL, false), 50 PCONFDUMP(PIN_CONFIG_SLEEP_HARDWARE_STATE, "sleep hardware state", NULL, false),
51 PCONFDUMP(PIN_CONFIG_SLEW_RATE, "slew rate", NULL, true), 51 PCONFDUMP(PIN_CONFIG_SLEW_RATE, "slew rate", NULL, true),
52 PCONFDUMP(PIN_CONFIG_SKEW_DELAY, "skew delay", NULL, true),
52}; 53};
53 54
54static void pinconf_generic_dump_one(struct pinctrl_dev *pctldev, 55static void pinconf_generic_dump_one(struct pinctrl_dev *pctldev,
@@ -181,6 +182,7 @@ static const struct pinconf_generic_params dt_params[] = {
181 { "power-source", PIN_CONFIG_POWER_SOURCE, 0 }, 182 { "power-source", PIN_CONFIG_POWER_SOURCE, 0 },
182 { "sleep-hardware-state", PIN_CONFIG_SLEEP_HARDWARE_STATE, 0 }, 183 { "sleep-hardware-state", PIN_CONFIG_SLEEP_HARDWARE_STATE, 0 },
183 { "slew-rate", PIN_CONFIG_SLEW_RATE, 0 }, 184 { "slew-rate", PIN_CONFIG_SLEW_RATE, 0 },
185 { "skew-delay", PIN_CONFIG_SKEW_DELAY, 0 },
184}; 186};
185 187
186/** 188/**