# Copyright (c) 2020, Linaro Limited # SPDX-License-Identifier: Apache-2.0 description: | Generic pin configuration schema Many data items that are represented in a pin configuration node are common and generic. Pin control bindings should use the properties defined below where they are applicable; not all of these properties are relevant or useful for all hardware or binding structures. Each individual binding document should state which of these generic properties, if any, are used, and the structure of the DT nodes that contain these properties. This is based on Linux, documentation: https://www.kernel.org/doc/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml properties: bias-disable: type: boolean description: disable any pin bias bias-high-impedance: type: boolean description: high impedance mode ("third-state", "floating") bias-bus-hold: type: boolean description: latch weakly bias-pull-up: type: boolean description: enable pull-up resistor bias-pull-down: type: boolean description: enable pull-down resistor bias-pull-pin-default: type: boolean description: use pin's default pull state drive-push-pull: type: boolean description: drive actively high and low drive-open-drain: type: boolean description: drive with open drain (hardware AND) drive-open-source: type: boolean description: drive with open source (hardware OR) drive-strength: type: int description: maximum sink or source current in mA drive-strength-microamp: type: int description: maximum sink or source current in μA input-enable: type: boolean description: | enable input on pin (e.g. enable an input buffer, no effect on output) input-disable: type: boolean description: | disable input on pin (e.g. disable an input buffer, no effect on output) input-schmitt-enable: type: boolean description: enable schmitt-trigger mode input-schmitt-disable: type: boolean description: disable schmitt-trigger mode input-debounce: type: int description: | Takes the debounce time in μsec, as argument or 0 to disable debouncing power-source: type: int description: select between different power supplies low-power-enable: type: boolean description: enable low power mode low-power-disable: type: boolean description: disable low power mode output-disable: type: boolean description: disable output on a pin (e.g. disable an output buffer) output-enable: type: boolean description: | enable output on a pin without actively driving it (e.g. enable an output buffer) output-low: type: boolean description: set the pin to output mode with low level output-high: type: boolean description: set the pin to output mode with high level sleep-hardware-state: type: boolean description: | indicate this is sleep related state which will be programmed into the registers for the sleep state slew-rate: type: int description: set the slew rate skew-delay: type: int description: | This affects the expected clock skew on input pins and the delay before latching a value to an output pin. Typically indicates how many double-inverters are used to delay the signal.