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 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 oneOf: 56 - type: boolean 57 - $ref: /schemas/types.yaml#/definitions/uint32 58 enum: [ 0, 1 ] 59 deprecated: true 60 description: drive actively high and low 61 62 drive-open-drain: 63 oneOf: 64 - type: boolean 65 - $ref: /schemas/types.yaml#/definitions/uint32 66 const: 1 # No known cases of 0 67 deprecated: true 68 description: drive with open drain 69 70 drive-open-source: 71 type: boolean 72 description: drive with open source 73 74 drive-strength: 75 $ref: /schemas/types.yaml#/definitions/uint32 76 description: sink or source at most X mA 77 78 drive-strength-microamp: 79 description: sink or source at most X uA 80 81 input-enable: 82 type: boolean 83 description: enable input on pin (no effect on output, such as 84 enabling an input buffer) 85 86 input-disable: 87 type: boolean 88 description: disable input on pin (no effect on output, such as 89 disabling an input buffer) 90 91 input-schmitt-enable: 92 type: boolean 93 description: enable schmitt-trigger mode 94 95 input-schmitt-disable: 96 type: boolean 97 description: disable schmitt-trigger mode 98 99 input-debounce: 100 $ref: /schemas/types.yaml#/definitions/uint32-array 101 description: Takes the debounce time in usec as argument or 0 to disable 102 debouncing 103 104 power-source: 105 $ref: /schemas/types.yaml#/definitions/uint32 106 description: select between different power supplies 107 108 low-power-enable: 109 type: boolean 110 description: enable low power mode 111 112 low-power-disable: 113 type: boolean 114 description: disable low power mode 115 116 output-disable: 117 type: boolean 118 description: disable output on a pin (such as disable an output buffer) 119 120 output-enable: 121 type: boolean 122 description: enable output on a pin without actively driving it 123 (such as enabling an output buffer) 124 125 output-impedance-ohms: 126 description: set the output impedance of a pin to at most X ohms 127 128 output-low: 129 type: boolean 130 description: set the pin to output mode with low level 131 132 output-high: 133 type: boolean 134 description: set the pin to output mode with high level 135 136 sleep-hardware-state: 137 type: boolean 138 description: indicate this is sleep related state which will be 139 programmed into the registers for the sleep state. 140 141 slew-rate: 142 $ref: /schemas/types.yaml#/definitions/uint32 143 description: set the slew rate 144 145 skew-delay: 146 $ref: /schemas/types.yaml#/definitions/uint32 147 description: 148 this affects the expected clock skew on input pins 149 and the delay before latching a value to an output 150 pin. Typically indicates how many double-inverters are 151 used to delay the signal. 152 153additionalProperties: true 154