diff options
| author | Heiko Stübner <heiko@sntech.de> | 2013-06-14 11:42:49 -0400 |
|---|---|---|
| committer | Linus Walleij <linus.walleij@linaro.org> | 2013-06-17 12:18:30 -0400 |
| commit | 9ee1f7d266aa1e2bfeb20cb5d4ac299c8e8ef8c7 (patch) | |
| tree | d3e7a6a2e18566f4472a0c09e5cf909285746925 | |
| parent | 56a59911e502fabbbefa5cfa0cddae22e3c94866 (diff) | |
pinctrl: clarify some dt pinconfig options
The bias-pull-* options use values > 0 to indicate that the pull should
be activated and optionally also indicate the strength of the pull.
Therefore use an default value of 1 for these options.
Split the low-power-mode option into low-power-enable and -disable.
Update the documentation to describe the param arguments better.
Reported-by: James Hogan <james.hogan@imgtec.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
| -rw-r--r-- | Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt | 22 | ||||
| -rw-r--r-- | drivers/pinctrl/pinconf-generic.c | 9 |
2 files changed, 26 insertions, 5 deletions
diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt b/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt index ef7cd572214c..2d730e3dd496 100644 --- a/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt +++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt | |||
| @@ -158,9 +158,29 @@ input-schmitt - run in schmitt-trigger mode with hysteresis X | |||
| 158 | input-debounce - debounce mode with debound time X | 158 | input-debounce - debounce mode with debound time X |
| 159 | power-source - select power source X | 159 | power-source - select power source X |
| 160 | slew-rate - use slew-rate X | 160 | slew-rate - use slew-rate X |
| 161 | low-power-mode - low power mode | 161 | low-power-enable - enable low power mode |
| 162 | low-power-disable - disable low power mode | ||
| 162 | output-low - set the pin to output mode with low level | 163 | output-low - set the pin to output mode with low level |
| 163 | output-high - set the pin to output mode with high level | 164 | output-high - set the pin to output mode with high level |
| 164 | 165 | ||
| 166 | Arguments for parameters: | ||
| 167 | |||
| 168 | - bias-pull-up, -down and -pin-default take as optional argument 0 to disable | ||
| 169 | the pull, on hardware supporting it the pull strength in Ohm. bias-disable | ||
| 170 | will also disable any active pull. | ||
| 171 | |||
| 172 | - drive-strength takes as argument the target strength in mA. | ||
| 173 | |||
| 174 | - input-schmitt takes as argument the adjustable hysteresis in a | ||
| 175 | driver-specific format | ||
| 176 | |||
| 177 | - input-debounce takes the debounce time as argument or 0 to disable debouncing | ||
| 178 | |||
| 179 | - power-source argument is the custom value describing the source to select | ||
| 180 | |||
| 181 | - slew-rate takes as argument the target rate in a driver-specific format | ||
| 182 | |||
| 183 | All parameters not listed here, do not take an argument. | ||
| 184 | |||
| 165 | More in-depth documentation on these parameters can be found in | 185 | More in-depth documentation on these parameters can be found in |
| 166 | <include/linux/pinctrl/pinconfig-generic.h> | 186 | <include/linux/pinctrl/pinconfig-generic.h> |
diff --git a/drivers/pinctrl/pinconf-generic.c b/drivers/pinctrl/pinconf-generic.c index d3c693c0c250..dcf03714de90 100644 --- a/drivers/pinctrl/pinconf-generic.c +++ b/drivers/pinctrl/pinconf-generic.c | |||
| @@ -152,9 +152,9 @@ static struct pinconf_generic_dt_params dt_params[] = { | |||
| 152 | { "bias-disable", PIN_CONFIG_BIAS_DISABLE, 0 }, | 152 | { "bias-disable", PIN_CONFIG_BIAS_DISABLE, 0 }, |
| 153 | { "bias-high-impedance", PIN_CONFIG_BIAS_HIGH_IMPEDANCE, 0 }, | 153 | { "bias-high-impedance", PIN_CONFIG_BIAS_HIGH_IMPEDANCE, 0 }, |
| 154 | { "bias-bus-hold", PIN_CONFIG_BIAS_BUS_HOLD, 0 }, | 154 | { "bias-bus-hold", PIN_CONFIG_BIAS_BUS_HOLD, 0 }, |
| 155 | { "bias-pull-up", PIN_CONFIG_BIAS_PULL_UP, 0 }, | 155 | { "bias-pull-up", PIN_CONFIG_BIAS_PULL_UP, 1 }, |
| 156 | { "bias-pull-down", PIN_CONFIG_BIAS_PULL_DOWN, 0 }, | 156 | { "bias-pull-down", PIN_CONFIG_BIAS_PULL_DOWN, 1 }, |
| 157 | { "bias-pull-pin-default", PIN_CONFIG_BIAS_PULL_PIN_DEFAULT, 0 }, | 157 | { "bias-pull-pin-default", PIN_CONFIG_BIAS_PULL_PIN_DEFAULT, 1 }, |
| 158 | { "drive-push-pull", PIN_CONFIG_DRIVE_PUSH_PULL, 0 }, | 158 | { "drive-push-pull", PIN_CONFIG_DRIVE_PUSH_PULL, 0 }, |
| 159 | { "drive-open-drain", PIN_CONFIG_DRIVE_OPEN_DRAIN, 0 }, | 159 | { "drive-open-drain", PIN_CONFIG_DRIVE_OPEN_DRAIN, 0 }, |
| 160 | { "drive-open-source", PIN_CONFIG_DRIVE_OPEN_SOURCE, 0 }, | 160 | { "drive-open-source", PIN_CONFIG_DRIVE_OPEN_SOURCE, 0 }, |
| @@ -165,7 +165,8 @@ static struct pinconf_generic_dt_params dt_params[] = { | |||
| 165 | { "input-debounce", PIN_CONFIG_INPUT_DEBOUNCE, 0 }, | 165 | { "input-debounce", PIN_CONFIG_INPUT_DEBOUNCE, 0 }, |
| 166 | { "power-source", PIN_CONFIG_POWER_SOURCE, 0 }, | 166 | { "power-source", PIN_CONFIG_POWER_SOURCE, 0 }, |
| 167 | { "slew-rate", PIN_CONFIG_SLEW_RATE, 0 }, | 167 | { "slew-rate", PIN_CONFIG_SLEW_RATE, 0 }, |
| 168 | { "low-power-mode", PIN_CONFIG_LOW_POWER_MODE, 0 }, | 168 | { "low-power-enable", PIN_CONFIG_LOW_POWER_MODE, 1 }, |
| 169 | { "low-power-disable", PIN_CONFIG_LOW_POWER_MODE, 0 }, | ||
| 169 | { "output-low", PIN_CONFIG_OUTPUT, 0, }, | 170 | { "output-low", PIN_CONFIG_OUTPUT, 0, }, |
| 170 | { "output-high", PIN_CONFIG_OUTPUT, 1, }, | 171 | { "output-high", PIN_CONFIG_OUTPUT, 1, }, |
| 171 | }; | 172 | }; |
