Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pinctrl: pinconf-generic: Add properties 'skew-delay-{in,out}put-ps'

Add the properties 'skew-delay-input-ps' and 'skew-delay-output-ps'
to the generic parameters used for parsing DT files. This allows to
specify the independent skew delay value for the two directions.
This enables drivers that use the generic pin configuration to get
the value passed through these new properties.

Signed-off-by: Antonio Borneo <antonio.borneo@foss.st.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Antonio Borneo and committed by
Linus Walleij
55c7f5ef 90a18c51

+12
+4
drivers/pinctrl/pinconf-generic.c
··· 54 54 PCONFDUMP(PIN_CONFIG_SLEEP_HARDWARE_STATE, "sleep hardware state", NULL, false), 55 55 PCONFDUMP(PIN_CONFIG_SLEW_RATE, "slew rate", NULL, true), 56 56 PCONFDUMP(PIN_CONFIG_SKEW_DELAY, "skew delay", NULL, true), 57 + PCONFDUMP(PIN_CONFIG_SKEW_DELAY_INPUT_PS, "input skew delay", "ps", true), 58 + PCONFDUMP(PIN_CONFIG_SKEW_DELAY_OUTPUT_PS, "output skew delay", "ps", true), 57 59 }; 58 60 59 61 static void pinconf_generic_dump_one(struct pinctrl_dev *pctldev, ··· 200 198 { "sleep-hardware-state", PIN_CONFIG_SLEEP_HARDWARE_STATE, 0 }, 201 199 { "slew-rate", PIN_CONFIG_SLEW_RATE, 0 }, 202 200 { "skew-delay", PIN_CONFIG_SKEW_DELAY, 0 }, 201 + { "skew-delay-input-ps", PIN_CONFIG_SKEW_DELAY_INPUT_PS, 0 }, 202 + { "skew-delay-output-ps", PIN_CONFIG_SKEW_DELAY_OUTPUT_PS, 0 }, 203 203 }; 204 204 205 205 /**
+8
include/linux/pinctrl/pinconf-generic.h
··· 112 112 * or latch delay (on outputs) this parameter (in a custom format) 113 113 * specifies the clock skew or latch delay. It typically controls how 114 114 * many double inverters are put in front of the line. 115 + * @PIN_CONFIG_SKEW_DELAY_INPUT_PS: if the pin has independent values for the 116 + * programmable skew rate (on inputs) and latch delay (on outputs), then 117 + * this parameter specifies the clock skew only. The argument is in ps. 118 + * @PIN_CONFIG_SKEW_DELAY_OUPUT_PS: if the pin has independent values for the 119 + * programmable skew rate (on inputs) and latch delay (on outputs), then 120 + * this parameter specifies the latch delay only. The argument is in ps. 115 121 * @PIN_CONFIG_SLEEP_HARDWARE_STATE: indicate this is sleep related state. 116 122 * @PIN_CONFIG_SLEW_RATE: if the pin can select slew rate, the argument to 117 123 * this parameter (on a custom format) tells the driver which alternative ··· 153 147 PIN_CONFIG_PERSIST_STATE, 154 148 PIN_CONFIG_POWER_SOURCE, 155 149 PIN_CONFIG_SKEW_DELAY, 150 + PIN_CONFIG_SKEW_DELAY_INPUT_PS, 151 + PIN_CONFIG_SKEW_DELAY_OUTPUT_PS, 156 152 PIN_CONFIG_SLEEP_HARDWARE_STATE, 157 153 PIN_CONFIG_SLEW_RATE, 158 154 PIN_CONFIG_END = 0x7F,