xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/xlnx,versal-pinctrl.yaml (revision 5f62a964e9f8abc6a05d8338273fadd154f0a206)
1*5f62a964SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*5f62a964SEmmanuel Vadot%YAML 1.2
3*5f62a964SEmmanuel Vadot---
4*5f62a964SEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/xlnx,versal-pinctrl.yaml#
5*5f62a964SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*5f62a964SEmmanuel Vadot
7*5f62a964SEmmanuel Vadottitle: Xilinx Versal Pinctrl
8*5f62a964SEmmanuel Vadot
9*5f62a964SEmmanuel Vadotmaintainers:
10*5f62a964SEmmanuel Vadot  - Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
11*5f62a964SEmmanuel Vadot
12*5f62a964SEmmanuel Vadotdescription: |
13*5f62a964SEmmanuel Vadot  Please refer to pinctrl-bindings.txt in this directory for details of the
14*5f62a964SEmmanuel Vadot  common pinctrl bindings used by client devices, including the meaning of the
15*5f62a964SEmmanuel Vadot  phrase "pin configuration node".
16*5f62a964SEmmanuel Vadot
17*5f62a964SEmmanuel Vadot  Versal's pin configuration nodes act as a container for an arbitrary number of
18*5f62a964SEmmanuel Vadot  subnodes. Each of these subnodes represents some desired configuration for a
19*5f62a964SEmmanuel Vadot  pin, a group, or a list of pins or groups. This configuration can include the
20*5f62a964SEmmanuel Vadot  mux function to select on those pin(s)/group(s), and various pin configuration
21*5f62a964SEmmanuel Vadot  parameters, such as pull-up, slew rate, etc.
22*5f62a964SEmmanuel Vadot
23*5f62a964SEmmanuel Vadot  Each configuration node can consist of multiple nodes describing the pinmux and
24*5f62a964SEmmanuel Vadot  pinconf options. Those nodes can be pinmux nodes or pinconf nodes.
25*5f62a964SEmmanuel Vadot
26*5f62a964SEmmanuel Vadotproperties:
27*5f62a964SEmmanuel Vadot  compatible:
28*5f62a964SEmmanuel Vadot    const: xlnx,versal-pinctrl
29*5f62a964SEmmanuel Vadot
30*5f62a964SEmmanuel VadotpatternProperties:
31*5f62a964SEmmanuel Vadot  '^(.*-)?(default|gpio-grp)$':
32*5f62a964SEmmanuel Vadot    type: object
33*5f62a964SEmmanuel Vadot    patternProperties:
34*5f62a964SEmmanuel Vadot      '^mux':
35*5f62a964SEmmanuel Vadot        type: object
36*5f62a964SEmmanuel Vadot        description:
37*5f62a964SEmmanuel Vadot          Pinctrl node's client devices use subnodes for pin muxes,
38*5f62a964SEmmanuel Vadot          which in turn use below standard properties.
39*5f62a964SEmmanuel Vadot        $ref: pinmux-node.yaml#
40*5f62a964SEmmanuel Vadot
41*5f62a964SEmmanuel Vadot        properties:
42*5f62a964SEmmanuel Vadot          pins:
43*5f62a964SEmmanuel Vadot            description:
44*5f62a964SEmmanuel Vadot              List of pins to select (either this or "groups" must be specified)
45*5f62a964SEmmanuel Vadot            $ref: "#/$defs/pins/properties/pins"
46*5f62a964SEmmanuel Vadot
47*5f62a964SEmmanuel Vadot          groups:
48*5f62a964SEmmanuel Vadot            description:
49*5f62a964SEmmanuel Vadot              List of groups to select (either this or "pins" must be
50*5f62a964SEmmanuel Vadot              specified), available groups for this subnode.
51*5f62a964SEmmanuel Vadot            anyOf:
52*5f62a964SEmmanuel Vadot              - pattern: '^((LPD|PMC)_)MIO([0-9]|[1-6][0-9]|7[0-7])$'
53*5f62a964SEmmanuel Vadot              - $ref: "#/$defs/pins/properties/groups"
54*5f62a964SEmmanuel Vadot
55*5f62a964SEmmanuel Vadot          function:
56*5f62a964SEmmanuel Vadot            description:
57*5f62a964SEmmanuel Vadot              Specify the alternative function to be configured for the
58*5f62a964SEmmanuel Vadot              given pin groups.
59*5f62a964SEmmanuel Vadot            enum: [spi0, spi0_ss, spi1, spi1_ss, can0, can1, i2c0, i2c1, i2c_pmc, ttc0_clk,
60*5f62a964SEmmanuel Vadot                   ttc0_wav, ttc1_clk, ttc1_wav, ttc2_clk, ttc2_wav, ttc3_clk, ttc3_wav, wwdt0,
61*5f62a964SEmmanuel Vadot                   wwdt1, sysmon_i2c0, sysmon_i2c0_alrt, uart0, uart0_ctrl, uart1, uart1_ctrl,
62*5f62a964SEmmanuel Vadot                   gpio0, gpio1, gpio2, emio0, gem0, gem1, trace0, trace0_clk, mdio0, mdio1, gem_tsu0,
63*5f62a964SEmmanuel Vadot                   pcie0, smap0, usb0, sd0, sd0_pc, sd0_cd, sd0_wp, sd1, sd1_pc, sd1_wp, sd1_cd,
64*5f62a964SEmmanuel Vadot                   ospi0, ospi0_ss, qspi0, qspi0_fbclk, qspi0_ss, test_clk, test_scan, tamper_trigger]
65*5f62a964SEmmanuel Vadot
66*5f62a964SEmmanuel Vadot        required:
67*5f62a964SEmmanuel Vadot          - function
68*5f62a964SEmmanuel Vadot
69*5f62a964SEmmanuel Vadot        oneOf:
70*5f62a964SEmmanuel Vadot          - required: [ groups ]
71*5f62a964SEmmanuel Vadot          - required: [ pins ]
72*5f62a964SEmmanuel Vadot
73*5f62a964SEmmanuel Vadot        additionalProperties: false
74*5f62a964SEmmanuel Vadot
75*5f62a964SEmmanuel Vadot      '^conf':
76*5f62a964SEmmanuel Vadot        type: object
77*5f62a964SEmmanuel Vadot        description:
78*5f62a964SEmmanuel Vadot          Pinctrl node's client devices use subnodes for pin configurations,
79*5f62a964SEmmanuel Vadot          which in turn use the standard properties below.
80*5f62a964SEmmanuel Vadot        allOf:
81*5f62a964SEmmanuel Vadot          - $ref: pincfg-node.yaml#
82*5f62a964SEmmanuel Vadot          - $ref: "#/$defs/pins"
83*5f62a964SEmmanuel Vadot
84*5f62a964SEmmanuel Vadot    additionalProperties: false
85*5f62a964SEmmanuel Vadot
86*5f62a964SEmmanuel VadotallOf:
87*5f62a964SEmmanuel Vadot  - $ref: pinctrl.yaml#
88*5f62a964SEmmanuel Vadot
89*5f62a964SEmmanuel Vadotrequired:
90*5f62a964SEmmanuel Vadot  - compatible
91*5f62a964SEmmanuel Vadot
92*5f62a964SEmmanuel VadotadditionalProperties: false
93*5f62a964SEmmanuel Vadot
94*5f62a964SEmmanuel Vadot$defs:
95*5f62a964SEmmanuel Vadot  pins:
96*5f62a964SEmmanuel Vadot    properties:
97*5f62a964SEmmanuel Vadot      groups:
98*5f62a964SEmmanuel Vadot        description:
99*5f62a964SEmmanuel Vadot          List of pin groups to select in this subnode.
100*5f62a964SEmmanuel Vadot        items:
101*5f62a964SEmmanuel Vadot          enum: [spi0_0_grp, spi0_1_grp, spi0_2_grp, spi0_3_grp, spi0_4_grp, spi0_5_grp,
102*5f62a964SEmmanuel Vadot                 spi0_ss_0_grp, spi0_ss_1_grp, spi0_ss_2_grp, spi0_ss_3_grp, spi0_ss_4_grp,
103*5f62a964SEmmanuel Vadot                 spi0_ss_5_grp, spi0_ss_6_grp, spi0_ss_7_grp, spi0_ss_8_grp, spi0_ss_9_grp,
104*5f62a964SEmmanuel Vadot                 spi0_ss_10_grp, spi0_ss_11_grp, spi0_ss_12_grp, spi0_ss_13_grp, spi0_ss_14_grp,
105*5f62a964SEmmanuel Vadot                 spi0_ss_15_grp, spi0_ss_16_grp, spi0_ss_17_grp, spi1_0_grp, spi1_1_grp,
106*5f62a964SEmmanuel Vadot                 spi1_2_grp, spi1_3_grp, spi1_4_grp, spi1_5_grp, spi1_ss_0_grp, spi1_ss_1_grp,
107*5f62a964SEmmanuel Vadot                 spi1_ss_2_grp, spi1_ss_3_grp, spi1_ss_4_grp, spi1_ss_5_grp, spi1_ss_6_grp,
108*5f62a964SEmmanuel Vadot                 spi1_ss_7_grp, spi1_ss_8_grp, spi1_ss_9_grp, spi1_ss_10_grp, spi1_ss_11_grp,
109*5f62a964SEmmanuel Vadot                 spi1_ss_12_grp, spi1_ss_13_grp, spi1_ss_14_grp, spi1_ss_15_grp, spi1_ss_16_grp
110*5f62a964SEmmanuel Vadot                 spi1_ss_17_grp, can0_0_grp, can0_1_grp, can0_2_grp, can0_3_grp, can0_4_grp,
111*5f62a964SEmmanuel Vadot                 can0_5_grp, can0_6_grp, can0_7_grp, can0_8_grp, can0_9_grp, can0_10_grp,
112*5f62a964SEmmanuel Vadot                 can0_11_grp, can0_12_grp, can0_13_grp, can0_14_grp, can0_15_grp, can0_16_grp,
113*5f62a964SEmmanuel Vadot                 can0_17_grp, can1_0_grp, can1_1_grp, can1_2_grp, can1_3_grp, can1_4_grp,
114*5f62a964SEmmanuel Vadot                 can1_5_grp, can1_6_grp, can1_7_grp, can1_8_grp, can1_9_grp, can1_10_grp,
115*5f62a964SEmmanuel Vadot                 can1_11_grp, can1_12_grp, can1_13_grp, can1_14_grp, can1_15_grp, can1_16_grp,
116*5f62a964SEmmanuel Vadot                 can1_17_grp, can1_18_grp, i2c0_0_grp, i2c0_1_grp, i2c0_2_grp, i2c0_3_grp,
117*5f62a964SEmmanuel Vadot                 i2c0_4_grp, i2c0_5_grp, i2c0_6_grp, i2c0_7_grp, i2c0_8_grp, i2c0_9_grp,
118*5f62a964SEmmanuel Vadot                 i2c0_10_grp, i2c0_11_grp, i2c0_12_grp, i2c0_13_grp, i2c0_14_grp, i2c0_15_grp,
119*5f62a964SEmmanuel Vadot                 i2c0_16_grp, i2c0_17_grp, i2c1_0_grp, i2c1_1_grp, i2c1_2_grp, i2c1_3_grp,
120*5f62a964SEmmanuel Vadot                 i2c1_4_grp, i2c1_5_grp, i2c1_6_grp, i2c1_7_grp, i2c1_8_grp, i2c1_9_grp,
121*5f62a964SEmmanuel Vadot                 i2c1_10_grp, i2c1_11_grp, i2c1_12_grp, i2c1_13_grp, i2c1_14_grp, i2c1_15_grp,
122*5f62a964SEmmanuel Vadot                 i2c1_16_grp, i2c1_17_grp, i2c1_18_grp, i2c_pmc_0_grp, i2c_pmc_1_grp,
123*5f62a964SEmmanuel Vadot                 i2c_pmc_2_grp, i2c_pmc_3_grp, i2c_pmc_4_grp, i2c_pmc_5_grp, i2c_pmc_6_grp,
124*5f62a964SEmmanuel Vadot                 i2c_pmc_7_grp, i2c_pmc_8_grp, i2c_pmc_9_grp, i2c_pmc_10_grp, i2c_pmc_11_grp,
125*5f62a964SEmmanuel Vadot                 i2c_pmc_12_grp, ttc0_clk_0_grp, ttc0_clk_1_grp, ttc0_clk_2_grp, ttc0_clk_3_grp,
126*5f62a964SEmmanuel Vadot                 ttc0_clk_4_grp, ttc0_clk_5_grp, ttc0_clk_6_grp, ttc0_clk_7_grp, ttc0_clk_8_grp,
127*5f62a964SEmmanuel Vadot                 ttc0_wav_0_grp, ttc0_wav_1_grp, ttc0_wav_2_grp, ttc0_wav_3_grp, ttc0_wav_4_grp,
128*5f62a964SEmmanuel Vadot                 ttc0_wav_5_grp, ttc0_wav_6_grp, ttc0_wav_7_grp, ttc0_wav_8_grp, ttc1_clk_0_grp,
129*5f62a964SEmmanuel Vadot                 ttc1_clk_1_grp, ttc1_clk_2_grp, ttc1_clk_3_grp, ttc1_clk_4_grp, ttc1_clk_5_grp,
130*5f62a964SEmmanuel Vadot                 ttc1_clk_6_grp, ttc1_clk_7_grp, ttc1_clk_8_grp, ttc1_wav_0_grp, ttc1_wav_1_grp,
131*5f62a964SEmmanuel Vadot                 ttc1_wav_2_grp, ttc1_wav_3_grp, ttc1_wav_4_grp, ttc1_wav_5_grp, ttc1_wav_6_grp,
132*5f62a964SEmmanuel Vadot                 ttc1_wav_7_grp, ttc1_wav_8_grp, ttc2_clk_0_grp, ttc2_clk_1_grp, ttc2_clk_2_grp,
133*5f62a964SEmmanuel Vadot                 ttc2_clk_3_grp, ttc2_clk_4_grp, ttc2_clk_5_grp, ttc2_clk_6_grp, ttc2_clk_7_grp,
134*5f62a964SEmmanuel Vadot                 ttc2_clk_8_grp, ttc2_wav_0_grp, ttc2_wav_1_grp, ttc2_wav_2_grp, ttc2_wav_3_grp,
135*5f62a964SEmmanuel Vadot                 ttc2_wav_4_grp, ttc2_wav_5_grp, ttc2_wav_6_grp, ttc2_wav_7_grp, ttc2_wav_8_grp,
136*5f62a964SEmmanuel Vadot                 ttc3_clk_0_grp, ttc3_clk_1_grp, ttc3_clk_2_grp, ttc3_clk_3_grp, ttc3_clk_4_grp,
137*5f62a964SEmmanuel Vadot                 ttc3_clk_5_grp, ttc3_clk_6_grp, ttc3_clk_7_grp, ttc3_clk_8_grp, ttc3_wav_0_grp,
138*5f62a964SEmmanuel Vadot                 ttc3_wav_1_grp, ttc3_wav_2_grp, ttc3_wav_3_grp, ttc3_wav_4_grp, ttc3_wav_5_grp,
139*5f62a964SEmmanuel Vadot                 ttc3_wav_6_grp, ttc3_wav_7_grp, ttc3_wav_8_grp, wwdt0_0_grp, wwdt0_1_grp,
140*5f62a964SEmmanuel Vadot                 wwdt0_2_grp, wwdt0_3_grp, wwdt0_4_grp, wwdt0_5_grp, wwdt1_0_grp, wwdt1_1_grp,
141*5f62a964SEmmanuel Vadot                 wwdt1_2_grp, wwdt1_3_grp, wwdt1_4_grp, wwdt1_5_grp, sysmon_i2c0_0_grp,
142*5f62a964SEmmanuel Vadot                 sysmon_i2c0_1_grp, sysmon_i2c0_2_grp, sysmon_i2c0_3_grp, sysmon_i2c0_4_grp,
143*5f62a964SEmmanuel Vadot                 sysmon_i2c0_5_grp, sysmon_i2c0_6_grp, sysmon_i2c0_7_grp, sysmon_i2c0_8_grp,
144*5f62a964SEmmanuel Vadot                 sysmon_i2c0_9_grp, sysmon_i2c0_10_grp, sysmon_i2c0_11_grp, sysmon_i2c0_12_grp,
145*5f62a964SEmmanuel Vadot                 sysmon_i2c0_13_grp, sysmon_i2c0_14_grp, sysmon_i2c0_15_grp,
146*5f62a964SEmmanuel Vadot                 sysmon_i2c0_16_grp, sysmon_i2c0_17_grp, sysmon_i2c0_alrt_0_grp,
147*5f62a964SEmmanuel Vadot                 sysmon_i2c0_alrt_1_grp, sysmon_i2c0_alrt_2_grp, sysmon_i2c0_alrt_3_grp,
148*5f62a964SEmmanuel Vadot                 sysmon_i2c0_alrt_4_grp, sysmon_i2c0_alrt_5_grp, sysmon_i2c0_alrt_6_grp,
149*5f62a964SEmmanuel Vadot                 sysmon_i2c0_alrt_7_grp, sysmon_i2c0_alrt_8_grp, sysmon_i2c0_alrt_9_grp,
150*5f62a964SEmmanuel Vadot                 sysmon_i2c0_alrt_10_grp, sysmon_i2c0_alrt_11_grp, sysmon_i2c0_alrt_12_grp,
151*5f62a964SEmmanuel Vadot                 sysmon_i2c0_alrt_13_grp, sysmon_i2c0_alrt_14_grp, sysmon_i2c0_alrt_15_grp,
152*5f62a964SEmmanuel Vadot                 sysmon_i2c0_alrt_16_grp, sysmon_i2c0_alrt_17_grp, uart0_0_grp, uart0_1_grp,
153*5f62a964SEmmanuel Vadot                 uart0_2_grp, uart0_3_grp, uart0_4_grp, uart0_5_grp, uart0_6_grp, uart0_7_grp,
154*5f62a964SEmmanuel Vadot                 uart0_8_grp, uart0_ctrl_0_grp, uart0_ctrl_1_grp, uart0_ctrl_2_grp,
155*5f62a964SEmmanuel Vadot                 uart0_ctrl_3_grp, uart0_ctrl_4_grp, uart0_ctrl_5_grp, uart0_ctrl_6_grp,
156*5f62a964SEmmanuel Vadot                 uart0_ctrl_7_grp, uart0_ctrl_8_grp, uart1_0_grp, uart1_1_grp, uart1_2_grp,
157*5f62a964SEmmanuel Vadot                 uart1_3_grp, uart1_4_grp, uart1_5_grp, uart1_6_grp, uart1_7_grp, uart1_8_grp,
158*5f62a964SEmmanuel Vadot                 uart1_ctrl_0_grp, uart1_ctrl_1_grp, uart1_ctrl_2_grp, uart1_ctrl_3_grp,
159*5f62a964SEmmanuel Vadot                 uart1_ctrl_4_grp, uart1_ctrl_5_grp, uart1_ctrl_6_grp, uart1_ctrl_7_grp,
160*5f62a964SEmmanuel Vadot                 uart1_ctrl_8_grp, gpio0_0_grp, gpio0_1_grp, gpio0_2_grp, gpio0_3_grp,
161*5f62a964SEmmanuel Vadot                 gpio0_4_grp, gpio0_5_grp, gpio0_6_grp, gpio0_7_grp, gpio0_8_grp, gpio0_9_grp,
162*5f62a964SEmmanuel Vadot                 gpio0_10_grp, gpio0_11_grp, gpio0_12_grp, gpio0_13_grp, gpio0_14_grp,
163*5f62a964SEmmanuel Vadot                 gpio0_15_grp, gpio0_16_grp, gpio0_17_grp, gpio0_18_grp, gpio0_19_grp,
164*5f62a964SEmmanuel Vadot                 gpio0_20_grp, gpio0_21_grp, gpio0_22_grp, gpio0_23_grp, gpio0_24_grp,
165*5f62a964SEmmanuel Vadot                 gpio0_25_grp, gpio1_0_grp, gpio1_1_grp, gpio1_2_grp, gpio1_3_grp, gpio1_4_grp,
166*5f62a964SEmmanuel Vadot                 gpio1_5_grp, gpio1_6_grp, gpio1_7_grp, gpio1_8_grp, gpio1_9_grp,
167*5f62a964SEmmanuel Vadot                 gpio1_10_grp, gpio1_11_grp, gpio1_12_grp, gpio1_13_grp, gpio1_14_grp,
168*5f62a964SEmmanuel Vadot                 gpio1_15_grp, gpio1_16_grp, gpio1_17_grp, gpio1_18_grp, gpio1_19_grp,
169*5f62a964SEmmanuel Vadot                 gpio1_20_grp, gpio1_21_grp, gpio1_22_grp, gpio1_23_grp, gpio1_24_grp,
170*5f62a964SEmmanuel Vadot                 gpio1_25_grp, gpio2_0_grp, gpio2_1_grp, gpio2_2_grp, gpio2_3_grp, gpio2_4_grp,
171*5f62a964SEmmanuel Vadot                 gpio2_5_grp, gpio2_6_grp, gpio2_7_grp, gpio2_8_grp, gpio2_9_grp, gpio2_10_grp,
172*5f62a964SEmmanuel Vadot                 gpio2_11_grp, gpio2_12_grp, gpio2_13_grp, gpio2_14_grp, gpio2_15_grp,
173*5f62a964SEmmanuel Vadot                 gpio2_16_grp, gpio2_17_grp, gpio2_18_grp, gpio2_19_grp, gpio2_20_grp,
174*5f62a964SEmmanuel Vadot                 gpio2_21_grp, gpio2_22_grp, gpio2_23_grp, gpio2_24_grp, gpio2_25_grp,
175*5f62a964SEmmanuel Vadot                 emio0_0_grp, emio0_1_grp, emio0_2_grp, emio0_3_grp, emio0_4_grp, emio0_5_grp,
176*5f62a964SEmmanuel Vadot                 emio0_6_grp, emio0_7_grp, emio0_8_grp, emio0_9_grp, emio0_10_grp,
177*5f62a964SEmmanuel Vadot                 emio0_11_grp, emio0_12_grp, emio0_13_grp, emio0_14_grp, emio0_15_grp,
178*5f62a964SEmmanuel Vadot                 emio0_16_grp, emio0_17_grp, emio0_18_grp, emio0_19_grp, emio0_20_grp,
179*5f62a964SEmmanuel Vadot                 emio0_21_grp, emio0_22_grp, emio0_23_grp, emio0_24_grp, emio0_25_grp,
180*5f62a964SEmmanuel Vadot                 emio0_26_grp, emio0_27_grp, emio0_28_grp, emio0_29_grp, emio0_30_grp,
181*5f62a964SEmmanuel Vadot                 emio0_31_grp, emio0_32_grp, emio0_33_grp, emio0_34_grp, emio0_35_grp,
182*5f62a964SEmmanuel Vadot                 emio0_36_grp, emio0_37_grp, emio0_38_grp, emio0_39_grp, emio0_40_grp,
183*5f62a964SEmmanuel Vadot                 emio0_41_grp, emio0_42_grp, emio0_43_grp, emio0_44_grp, emio0_45_grp,
184*5f62a964SEmmanuel Vadot                 emio0_46_grp, emio0_47_grp, emio0_48_grp, emio0_49_grp, emio0_50_grp,
185*5f62a964SEmmanuel Vadot                 emio0_51_grp, emio0_52_grp, emio0_53_grp, emio0_54_grp, emio0_55_grp,
186*5f62a964SEmmanuel Vadot                 emio0_56_grp, emio0_57_grp, emio0_58_grp, emio0_59_grp, emio0_60_grp,
187*5f62a964SEmmanuel Vadot                 emio0_61_grp, emio0_62_grp, emio0_63_grp, emio0_64_grp, emio0_65_grp,
188*5f62a964SEmmanuel Vadot                 emio0_66_grp, emio0_67_grp, emio0_68_grp, emio0_69_grp, emio0_70_grp,
189*5f62a964SEmmanuel Vadot                 emio0_71_grp, emio0_72_grp, emio0_73_grp, emio0_74_grp, emio0_75_grp,
190*5f62a964SEmmanuel Vadot                 emio0_76_grp, emio0_77_grp, gem0_0_grp, gem0_1_grp, gem1_0_grp, gem1_1_grp,
191*5f62a964SEmmanuel Vadot                 trace0_0_grp, trace0_1_grp, trace0_2_grp, trace0_clk_0_grp, trace0_clk_1_grp,
192*5f62a964SEmmanuel Vadot                 trace0_clk_2_grp, mdio0_0_grp, mdio0_1_grp, mdio1_0_grp, mdio1_1_grp,
193*5f62a964SEmmanuel Vadot                 gem_tsu0_0_grp, gem_tsu0_1_grp, gem_tsu0_2_grp, gem_tsu0_3_grp, pcie0_0_grp,
194*5f62a964SEmmanuel Vadot                 pcie0_1_grp, pcie0_2_grp, smap0_0_grp, usb0_0_grp, sd0_0_grp, sd0_1_grp,
195*5f62a964SEmmanuel Vadot                 sd0_2_grp, sd0_3_grp, sd0_4_grp, sd0_5_grp, sd0_6_grp, sd0_7_grp, sd0_8_grp,
196*5f62a964SEmmanuel Vadot                 sd0_9_grp, sd0_10_grp, sd0_11_grp, sd0_12_grp, sd0_13_grp, sd0_14_grp,
197*5f62a964SEmmanuel Vadot                 sd0_15_grp, sd0_16_grp, sd0_17_grp, sd0_18_grp, sd0_19_grp, sd0_20_grp,
198*5f62a964SEmmanuel Vadot                 sd0_21_grp, sd0_pc_0_grp, sd0_pc_1_grp, sd0_cd_0_grp, sd0_cd_1_grp,
199*5f62a964SEmmanuel Vadot                 sd0_wp_0_grp, sd0_wp_1_grp, sd1_0_grp, sd1_1_grp, sd1_2_grp, sd1_3_grp,
200*5f62a964SEmmanuel Vadot                 sd1_4_grp, sd1_5_grp, sd1_6_grp, sd1_7_grp, sd1_8_grp, sd1_9_grp, sd1_10_grp,
201*5f62a964SEmmanuel Vadot                 sd1_11_grp, sd1_12_grp, sd1_13_grp, sd1_14_grp, sd1_15_grp, sd1_16_grp,
202*5f62a964SEmmanuel Vadot                 sd1_17_grp, sd1_18_grp, sd1_19_grp, sd1_20_grp, sd1_21_grp, sd1_pc_0_grp,
203*5f62a964SEmmanuel Vadot                 sd1_pc_1_grp, sd1_cd_0_grp, sd1_cd_1_grp, sd1_wp_0_grp, sd1_wp_1_grp,
204*5f62a964SEmmanuel Vadot                 ospi0_0_grp, ospi0_ss_0_grp, qspi0_0_grp, qspi0_fbclk_0_grp, qspi0_ss_0_grp,
205*5f62a964SEmmanuel Vadot                 test_clk_0_grp, test_scan_0_grp, tamper_trigger_0_grp]
206*5f62a964SEmmanuel Vadot        minItems: 1
207*5f62a964SEmmanuel Vadot        maxItems: 78
208*5f62a964SEmmanuel Vadot
209*5f62a964SEmmanuel Vadot      pins:
210*5f62a964SEmmanuel Vadot        description:
211*5f62a964SEmmanuel Vadot          List of pin names to select in this subnode.
212*5f62a964SEmmanuel Vadot        items:
213*5f62a964SEmmanuel Vadot          pattern: '^((LPD|PMC)_)MIO([0-9]|[1-6][0-9]|7[0-7])$'
214*5f62a964SEmmanuel Vadot        minItems: 1
215*5f62a964SEmmanuel Vadot        maxItems: 78
216*5f62a964SEmmanuel Vadot
217*5f62a964SEmmanuel Vadot      bias-pull-up: true
218*5f62a964SEmmanuel Vadot      bias-pull-down: true
219*5f62a964SEmmanuel Vadot      bias-disable: true
220*5f62a964SEmmanuel Vadot      input-schmitt-enable: true
221*5f62a964SEmmanuel Vadot      input-schmitt-disable: true
222*5f62a964SEmmanuel Vadot      bias-high-impedance: true
223*5f62a964SEmmanuel Vadot      low-power-enable: true
224*5f62a964SEmmanuel Vadot      low-power-disable: true
225*5f62a964SEmmanuel Vadot
226*5f62a964SEmmanuel Vadot      slew-rate:
227*5f62a964SEmmanuel Vadot        enum: [0, 1]
228*5f62a964SEmmanuel Vadot
229*5f62a964SEmmanuel Vadot      output-enable:
230*5f62a964SEmmanuel Vadot        description:
231*5f62a964SEmmanuel Vadot          This will internally disable the tri-state for MIO pins.
232*5f62a964SEmmanuel Vadot
233*5f62a964SEmmanuel Vadot      drive-strength:
234*5f62a964SEmmanuel Vadot        description:
235*5f62a964SEmmanuel Vadot          Selects the drive strength for MIO pins, in mA.
236*5f62a964SEmmanuel Vadot        enum: [2, 4, 8, 12]
237*5f62a964SEmmanuel Vadot
238*5f62a964SEmmanuel Vadot      power-source:
239*5f62a964SEmmanuel Vadot        enum: [0, 1]
240*5f62a964SEmmanuel Vadot
241*5f62a964SEmmanuel Vadot    oneOf:
242*5f62a964SEmmanuel Vadot      - required: [ groups ]
243*5f62a964SEmmanuel Vadot      - required: [ pins ]
244*5f62a964SEmmanuel Vadot
245*5f62a964SEmmanuel Vadot    additionalProperties: false
246*5f62a964SEmmanuel Vadot
247*5f62a964SEmmanuel Vadotexamples:
248*5f62a964SEmmanuel Vadot  - |
249*5f62a964SEmmanuel Vadot    #include <dt-bindings/pinctrl/pinctrl-zynqmp.h>
250*5f62a964SEmmanuel Vadot    pinctrl {
251*5f62a964SEmmanuel Vadot      compatible = "xlnx,versal-pinctrl";
252*5f62a964SEmmanuel Vadot
253*5f62a964SEmmanuel Vadot      uart0-default {
254*5f62a964SEmmanuel Vadot        mux {
255*5f62a964SEmmanuel Vadot          groups = "uart0_4_grp", "uart0_5_grp";
256*5f62a964SEmmanuel Vadot          function = "uart0";
257*5f62a964SEmmanuel Vadot        };
258*5f62a964SEmmanuel Vadot
259*5f62a964SEmmanuel Vadot        conf {
260*5f62a964SEmmanuel Vadot          groups = "uart0_4_grp";
261*5f62a964SEmmanuel Vadot          slew-rate = <SLEW_RATE_SLOW>;
262*5f62a964SEmmanuel Vadot          power-source = <IO_STANDARD_LVCMOS18>;
263*5f62a964SEmmanuel Vadot        };
264*5f62a964SEmmanuel Vadot
265*5f62a964SEmmanuel Vadot        conf-rx {
266*5f62a964SEmmanuel Vadot          pins = "PMC_MIO42";
267*5f62a964SEmmanuel Vadot          bias-pull-up;
268*5f62a964SEmmanuel Vadot        };
269*5f62a964SEmmanuel Vadot
270*5f62a964SEmmanuel Vadot        conf-tx {
271*5f62a964SEmmanuel Vadot          pins = "PMC_MIO43";
272*5f62a964SEmmanuel Vadot          bias-disable;
273*5f62a964SEmmanuel Vadot          input-schmitt-disable;
274*5f62a964SEmmanuel Vadot        };
275*5f62a964SEmmanuel Vadot      };
276*5f62a964SEmmanuel Vadot    };
277*5f62a964SEmmanuel Vadot
278*5f62a964SEmmanuel Vadot...
279