blob: 71ed0a9def84e05c9df538f5d816326dc83f672f [file] [log] [blame]
Rob Herring3af50e52019-11-07 16:42:54 -06001# 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-low:
118 type: boolean
119 description: set the pin to output mode with low level
120
121 output-high:
122 type: boolean
123 description: set the pin to output mode with high level
124
125 sleep-hardware-state:
126 type: boolean
127 description: indicate this is sleep related state which will be
128 programmed into the registers for the sleep state.
129
130 slew-rate:
131 $ref: /schemas/types.yaml#/definitions/uint32
132 description: set the slew rate
133
134 skew-delay:
135 $ref: /schemas/types.yaml#/definitions/uint32
136 description:
137 this affects the expected clock skew on input pins
138 and the delay before latching a value to an output
139 pin. Typically indicates how many double-inverters are
140 used to delay the signal.
Rob Herring6a0e3212020-10-05 13:38:30 -0500141
142additionalProperties: true