| # SPDX-License-Identifier: GPL-2.0-only |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/pinctrl/pincfg-node.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Generic Pin Configuration Node |
| |
| maintainers: |
| - Linus Walleij <linus.walleij@linaro.org> |
| |
| description: |
| 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. |
| |
| 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: |
| oneOf: |
| - type: boolean |
| - $ref: /schemas/types.yaml#/definitions/uint32 |
| description: pull up the pin. Takes as optional argument on hardware |
| supporting it the pull strength in Ohm. |
| |
| bias-pull-down: |
| oneOf: |
| - type: boolean |
| - $ref: /schemas/types.yaml#/definitions/uint32 |
| description: pull down the pin. Takes as optional argument on hardware |
| supporting it the pull strength in Ohm. |
| |
| bias-pull-pin-default: |
| oneOf: |
| - type: boolean |
| - $ref: /schemas/types.yaml#/definitions/uint32 |
| description: use pin-default pull state. Takes as optional argument on |
| hardware supporting it the pull strength in Ohm. |
| |
| drive-push-pull: |
| oneOf: |
| - type: boolean |
| - $ref: /schemas/types.yaml#/definitions/uint32 |
| enum: [ 0, 1 ] |
| deprecated: true |
| description: drive actively high and low |
| |
| drive-open-drain: |
| oneOf: |
| - type: boolean |
| - $ref: /schemas/types.yaml#/definitions/uint32 |
| const: 1 # No known cases of 0 |
| deprecated: true |
| description: drive with open drain |
| |
| drive-open-source: |
| type: boolean |
| description: drive with open source |
| |
| drive-strength: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| description: sink or source at most X mA |
| |
| drive-strength-microamp: |
| description: sink or source at most X uA |
| |
| input-enable: |
| type: boolean |
| description: enable input on pin (no effect on output, such as |
| enabling an input buffer) |
| |
| input-disable: |
| type: boolean |
| description: disable input on pin (no effect on output, such as |
| disabling an input buffer) |
| |
| input-schmitt-enable: |
| type: boolean |
| description: enable schmitt-trigger mode |
| |
| input-schmitt-disable: |
| type: boolean |
| description: disable schmitt-trigger mode |
| |
| input-debounce: |
| $ref: /schemas/types.yaml#/definitions/uint32-array |
| description: Takes the debounce time in usec as argument or 0 to disable |
| debouncing |
| |
| power-source: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| 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 (such as disable an output buffer) |
| |
| output-enable: |
| type: boolean |
| description: enable output on a pin without actively driving it |
| (such as enabling an output buffer) |
| |
| output-impedance-ohms: |
| description: set the output impedance of a pin to at most X ohms |
| |
| 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: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| description: set the slew rate |
| |
| skew-delay: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| 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. |
| |
| additionalProperties: true |