1# SPDX-License-Identifier: GPL-2.0-only 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/pinctrl/pincfg-node.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Generic pin configuration node schema 8 9maintainers: 10 - Linus Walleij <linus.walleij@linaro.org> 11 12description: 13 Many data items that are represented in a pin configuration node are common 14 and generic. Pin control bindings should use the properties defined below 15 where they are applicable; not all of these properties are relevant or useful 16 for all hardware or binding structures. Each individual binding document 17 should state which of these generic properties, if any, are used, and the 18 structure of the DT nodes that contain these properties. 19 20properties: 21 bias-disable: 22 type: boolean 23 description: disable any pin bias 24 25 bias-high-impedance: 26 type: boolean 27 description: high impedance mode ("third-state", "floating") 28 29 bias-bus-hold: 30 type: boolean 31 description: latch weakly 32 33 bias-pull-up: 34 oneOf: 35 - type: boolean 36 - $ref: /schemas/types.yaml#/definitions/uint32 37 description: pull up the pin. Takes as optional argument on hardware 38 supporting it the pull strength in Ohm. 39 40 bias-pull-down: 41 oneOf: 42 - type: boolean 43 - $ref: /schemas/types.yaml#/definitions/uint32 44 description: pull down the pin. Takes as optional argument on hardware 45 supporting it the pull strength in Ohm. 46 47 bias-pull-pin-default: 48 oneOf: 49 - type: boolean 50 - $ref: /schemas/types.yaml#/definitions/uint32 51 description: use pin-default pull state. Takes as optional argument on 52 hardware supporting it the pull strength in Ohm. 53 54 drive-push-pull: 55 type: boolean 56 description: drive actively high and low 57 58 drive-open-drain: 59 type: boolean 60 description: drive with open drain 61 62 drive-open-source: 63 type: boolean 64 description: drive with open source 65 66 drive-strength: 67 $ref: /schemas/types.yaml#/definitions/uint32 68 description: sink or source at most X mA 69 70 drive-strength-microamp: 71 description: sink or source at most X uA 72 73 input-enable: 74 type: boolean 75 description: enable input on pin (no effect on output, such as 76 enabling an input buffer) 77 78 input-disable: 79 type: boolean 80 description: disable input on pin (no effect on output, such as 81 disabling an input buffer) 82 83 input-schmitt-enable: 84 type: boolean 85 description: enable schmitt-trigger mode 86 87 input-schmitt-disable: 88 type: boolean 89 description: disable schmitt-trigger mode 90 91 input-debounce: 92 $ref: /schemas/types.yaml#/definitions/uint32 93 description: Takes the debounce time in usec as argument or 0 to disable 94 debouncing 95 96 power-source: 97 $ref: /schemas/types.yaml#/definitions/uint32 98 description: select between different power supplies 99 100 low-power-enable: 101 type: boolean 102 description: enable low power mode 103 104 low-power-disable: 105 type: boolean 106 description: disable low power mode 107 108 output-disable: 109 type: boolean 110 description: disable output on a pin (such as disable an output buffer) 111 112 output-enable: 113 type: boolean 114 description: enable output on a pin without actively driving it 115 (such as enabling an output buffer) 116 117 output-impedance-ohms: 118 description: set the output impedance of a pin to at most X ohms 119 120 output-low: 121 type: boolean 122 description: set the pin to output mode with low level 123 124 output-high: 125 type: boolean 126 description: set the pin to output mode with high level 127 128 sleep-hardware-state: 129 type: boolean 130 description: indicate this is sleep related state which will be 131 programmed into the registers for the sleep state. 132 133 slew-rate: 134 $ref: /schemas/types.yaml#/definitions/uint32 135 description: set the slew rate 136 137 skew-delay: 138 $ref: /schemas/types.yaml#/definitions/uint32 139 description: 140 this affects the expected clock skew on input pins 141 and the delay before latching a value to an output 142 pin. Typically indicates how many double-inverters are 143 used to delay the signal. 144 145additionalProperties: true 146