1153df45aSSai Krishna Potthuri# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2153df45aSSai Krishna Potthuri%YAML 1.2 3153df45aSSai Krishna Potthuri--- 4153df45aSSai Krishna Potthuri$id: http://devicetree.org/schemas/pinctrl/xlnx,zynq-pinctrl.yaml# 5153df45aSSai Krishna Potthuri$schema: http://devicetree.org/meta-schemas/core.yaml# 6153df45aSSai Krishna Potthuri 7153df45aSSai Krishna Potthurititle: Xilinx Zynq Pinctrl 8153df45aSSai Krishna Potthuri 9153df45aSSai Krishna Potthurimaintainers: 10153df45aSSai Krishna Potthuri - Sai Krishna Potthuri <sai.krishna.potthuri@amd.com> 11153df45aSSai Krishna Potthuri 12153df45aSSai Krishna Potthuridescription: | 13153df45aSSai Krishna Potthuri Please refer to pinctrl-bindings.txt in this directory for details of the 14153df45aSSai Krishna Potthuri common pinctrl bindings used by client devices, including the meaning of the 15153df45aSSai Krishna Potthuri phrase "pin configuration node". 16153df45aSSai Krishna Potthuri 17153df45aSSai Krishna Potthuri Zynq's pin configuration nodes act as a container for an arbitrary number of 18153df45aSSai Krishna Potthuri subnodes. Each of these subnodes represents some desired configuration for a 19153df45aSSai Krishna Potthuri pin, a group, or a list of pins or groups. This configuration can include the 20153df45aSSai Krishna Potthuri mux function to select on those pin(s)/group(s), and various pin configuration 21153df45aSSai Krishna Potthuri parameters, such as pull-up, slew rate, etc. 22153df45aSSai Krishna Potthuri 23153df45aSSai Krishna Potthuri Each configuration node can consist of multiple nodes describing the pinmux and 24153df45aSSai Krishna Potthuri pinconf options. Those nodes can be pinmux nodes or pinconf nodes. 25153df45aSSai Krishna Potthuri 26153df45aSSai Krishna Potthuri The name of each subnode is not important; all subnodes should be enumerated 27153df45aSSai Krishna Potthuri and processed purely based on their content. 28153df45aSSai Krishna Potthuri 29153df45aSSai Krishna Potthuriproperties: 30153df45aSSai Krishna Potthuri compatible: 31153df45aSSai Krishna Potthuri const: xlnx,zynq-pinctrl 32153df45aSSai Krishna Potthuri 33153df45aSSai Krishna Potthuri reg: 34153df45aSSai Krishna Potthuri description: Specifies the base address and size of the SLCR space. 35153df45aSSai Krishna Potthuri maxItems: 1 36153df45aSSai Krishna Potthuri 37153df45aSSai Krishna Potthuri syscon: 38153df45aSSai Krishna Potthuri description: 39153df45aSSai Krishna Potthuri phandle to the SLCR. 40153df45aSSai Krishna Potthuri 41153df45aSSai Krishna PotthuripatternProperties: 42153df45aSSai Krishna Potthuri '^(.*-)?(default|gpio)$': 43153df45aSSai Krishna Potthuri type: object 44153df45aSSai Krishna Potthuri patternProperties: 45153df45aSSai Krishna Potthuri '^mux': 46153df45aSSai Krishna Potthuri type: object 47153df45aSSai Krishna Potthuri description: 48153df45aSSai Krishna Potthuri Pinctrl node's client devices use subnodes for pin muxes, 49153df45aSSai Krishna Potthuri which in turn use below standard properties. 50153df45aSSai Krishna Potthuri $ref: pinmux-node.yaml# 51153df45aSSai Krishna Potthuri 52153df45aSSai Krishna Potthuri properties: 53153df45aSSai Krishna Potthuri groups: 54153df45aSSai Krishna Potthuri description: 55153df45aSSai Krishna Potthuri List of groups to select (either this or "pins" must be 56153df45aSSai Krishna Potthuri specified), available groups for this subnode. 57153df45aSSai Krishna Potthuri items: 58153df45aSSai Krishna Potthuri enum: [ethernet0_0_grp, ethernet1_0_grp, mdio0_0_grp, 59153df45aSSai Krishna Potthuri mdio1_0_grp, qspi0_0_grp, qspi1_0_grp, qspi_fbclk, 60153df45aSSai Krishna Potthuri qspi_cs1_grp, spi0_0_grp, spi0_1_grp, spi0_2_grp, 61153df45aSSai Krishna Potthuri spi0_0_ss0, spi0_0_ss1, spi0_0_ss2, spi0_1_ss0, 62153df45aSSai Krishna Potthuri spi0_1_ss1, spi0_1_ss2, spi0_2_ss0, spi0_2_ss1, 63153df45aSSai Krishna Potthuri spi0_2_ss2, spi1_0_grp, spi1_1_grp, spi1_2_grp, 64153df45aSSai Krishna Potthuri spi1_3_grp, spi1_0_ss0, spi1_0_ss1, spi1_0_ss2, 65153df45aSSai Krishna Potthuri spi1_1_ss0, spi1_1_ss1, spi1_1_ss2, spi1_2_ss0, 66153df45aSSai Krishna Potthuri spi1_2_ss1, spi1_2_ss2, spi1_3_ss0, spi1_3_ss1, 67153df45aSSai Krishna Potthuri spi1_3_ss2, sdio0_0_grp, sdio0_1_grp, sdio0_2_grp, 68153df45aSSai Krishna Potthuri sdio1_0_grp, sdio1_1_grp, sdio1_2_grp, sdio1_3_grp, 69153df45aSSai Krishna Potthuri sdio0_emio_wp, sdio0_emio_cd, sdio1_emio_wp, 70153df45aSSai Krishna Potthuri sdio1_emio_cd, smc0_nor, smc0_nor_cs1_grp, 71153df45aSSai Krishna Potthuri smc0_nor_addr25_grp, smc0_nand, can0_0_grp, can0_1_grp, 72153df45aSSai Krishna Potthuri can0_2_grp, can0_3_grp, can0_4_grp, can0_5_grp, 73153df45aSSai Krishna Potthuri can0_6_grp, can0_7_grp, can0_8_grp, can0_9_grp, 74153df45aSSai Krishna Potthuri can0_10_grp, can1_0_grp, can1_1_grp, can1_2_grp, 75153df45aSSai Krishna Potthuri can1_3_grp, can1_4_grp, can1_5_grp, can1_6_grp, 76153df45aSSai Krishna Potthuri can1_7_grp, can1_8_grp, can1_9_grp, can1_10_grp, 77153df45aSSai Krishna Potthuri can1_11_grp, uart0_0_grp, uart0_1_grp, uart0_2_grp, 78153df45aSSai Krishna Potthuri uart0_3_grp, uart0_4_grp, uart0_5_grp, uart0_6_grp, 79153df45aSSai Krishna Potthuri uart0_7_grp, uart0_8_grp, uart0_9_grp, uart0_10_grp, 80153df45aSSai Krishna Potthuri uart1_0_grp, uart1_1_grp, uart1_2_grp, uart1_3_grp, 81153df45aSSai Krishna Potthuri uart1_4_grp, uart1_5_grp, uart1_6_grp, uart1_7_grp, 82153df45aSSai Krishna Potthuri uart1_8_grp, uart1_9_grp, uart1_10_grp, uart1_11_grp, 83153df45aSSai Krishna Potthuri i2c0_0_grp, i2c0_1_grp, i2c0_2_grp, i2c0_3_grp, 84153df45aSSai Krishna Potthuri i2c0_4_grp, i2c0_5_grp, i2c0_6_grp, i2c0_7_grp, 85153df45aSSai Krishna Potthuri i2c0_8_grp, i2c0_9_grp, i2c0_10_grp, i2c1_0_grp, 86153df45aSSai Krishna Potthuri i2c1_1_grp, i2c1_2_grp, i2c1_3_grp, i2c1_4_grp, 87153df45aSSai Krishna Potthuri i2c1_5_grp, i2c1_6_grp, i2c1_7_grp, i2c1_8_grp, 88153df45aSSai Krishna Potthuri i2c1_9_grp, i2c1_10_grp, ttc0_0_grp, ttc0_1_grp, 89153df45aSSai Krishna Potthuri ttc0_2_grp, ttc1_0_grp, ttc1_1_grp, ttc1_2_grp, 90153df45aSSai Krishna Potthuri swdt0_0_grp, swdt0_1_grp, swdt0_2_grp, swdt0_3_grp, 91153df45aSSai Krishna Potthuri swdt0_4_grp, gpio0_0_grp, gpio0_1_grp, gpio0_2_grp, 92153df45aSSai Krishna Potthuri gpio0_3_grp, gpio0_4_grp, gpio0_5_grp, gpio0_6_grp, 93153df45aSSai Krishna Potthuri gpio0_7_grp, gpio0_8_grp, gpio0_9_grp, gpio0_10_grp, 94153df45aSSai Krishna Potthuri gpio0_11_grp, gpio0_12_grp, gpio0_13_grp, gpio0_14_grp, 95153df45aSSai Krishna Potthuri gpio0_15_grp, gpio0_16_grp, gpio0_17_grp, gpio0_18_grp, 96153df45aSSai Krishna Potthuri gpio0_19_grp, gpio0_20_grp, gpio0_21_grp, gpio0_22_grp, 97153df45aSSai Krishna Potthuri gpio0_23_grp, gpio0_24_grp, gpio0_25_grp, gpio0_26_grp, 98153df45aSSai Krishna Potthuri gpio0_27_grp, gpio0_28_grp, gpio0_29_grp, gpio0_30_grp, 99153df45aSSai Krishna Potthuri gpio0_31_grp, gpio0_32_grp, gpio0_33_grp, gpio0_34_grp, 100153df45aSSai Krishna Potthuri gpio0_35_grp, gpio0_36_grp, gpio0_37_grp, gpio0_38_grp, 101153df45aSSai Krishna Potthuri gpio0_39_grp, gpio0_40_grp, gpio0_41_grp, gpio0_42_grp, 102153df45aSSai Krishna Potthuri gpio0_43_grp, gpio0_44_grp, gpio0_45_grp, gpio0_46_grp, 103153df45aSSai Krishna Potthuri gpio0_47_grp, gpio0_48_grp, gpio0_49_grp, gpio0_50_grp, 104153df45aSSai Krishna Potthuri gpio0_51_grp, gpio0_52_grp, gpio0_53_grp, usb0_0_grp, 105153df45aSSai Krishna Potthuri usb1_0_grp] 106153df45aSSai Krishna Potthuri maxItems: 54 107153df45aSSai Krishna Potthuri 108153df45aSSai Krishna Potthuri function: 109153df45aSSai Krishna Potthuri description: 110153df45aSSai Krishna Potthuri Specify the alternative function to be configured for the 111153df45aSSai Krishna Potthuri given pin groups. 112153df45aSSai Krishna Potthuri enum: [ethernet0, ethernet1, mdio0, mdio1, qspi0, qspi1, qspi_fbclk, 113153df45aSSai Krishna Potthuri qspi_cs1, spi0, spi0_ss, spi1, spi1_ss, sdio0, sdio0_pc, 114153df45aSSai Krishna Potthuri sdio0_cd, sdio0_wp, sdio1, sdio1_pc, sdio1_cd, sdio1_wp, 115153df45aSSai Krishna Potthuri smc0_nor, smc0_nor_cs1, smc0_nor_addr25, smc0_nand, can0, 116153df45aSSai Krishna Potthuri can1, uart0, uart1, i2c0, i2c1, ttc0, ttc1, swdt0, gpio0, 117153df45aSSai Krishna Potthuri usb0, usb1] 118153df45aSSai Krishna Potthuri 119153df45aSSai Krishna Potthuri required: 120153df45aSSai Krishna Potthuri - groups 121153df45aSSai Krishna Potthuri - function 122153df45aSSai Krishna Potthuri 123153df45aSSai Krishna Potthuri additionalProperties: false 124153df45aSSai Krishna Potthuri 125153df45aSSai Krishna Potthuri '^conf': 126153df45aSSai Krishna Potthuri type: object 127153df45aSSai Krishna Potthuri description: 128153df45aSSai Krishna Potthuri Pinctrl node's client devices use subnodes for pin configurations, 129153df45aSSai Krishna Potthuri which in turn use the standard properties below. 130153df45aSSai Krishna Potthuri $ref: pincfg-node.yaml# 131153df45aSSai Krishna Potthuri 132153df45aSSai Krishna Potthuri properties: 133153df45aSSai Krishna Potthuri groups: 134153df45aSSai Krishna Potthuri description: 135153df45aSSai Krishna Potthuri List of pin groups as mentioned above. 136153df45aSSai Krishna Potthuri 137153df45aSSai Krishna Potthuri pins: 138153df45aSSai Krishna Potthuri description: 139153df45aSSai Krishna Potthuri List of pin names to select in this subnode. 140153df45aSSai Krishna Potthuri items: 141153df45aSSai Krishna Potthuri pattern: '^MIO([0-9]|[1-4][0-9]|5[0-3])$' 142153df45aSSai Krishna Potthuri maxItems: 54 143153df45aSSai Krishna Potthuri 144153df45aSSai Krishna Potthuri bias-pull-up: true 145153df45aSSai Krishna Potthuri 146153df45aSSai Krishna Potthuri bias-pull-down: true 147153df45aSSai Krishna Potthuri 148153df45aSSai Krishna Potthuri bias-disable: true 149153df45aSSai Krishna Potthuri 150153df45aSSai Krishna Potthuri bias-high-impedance: true 151153df45aSSai Krishna Potthuri 152153df45aSSai Krishna Potthuri low-power-enable: true 153153df45aSSai Krishna Potthuri 154153df45aSSai Krishna Potthuri low-power-disable: true 155153df45aSSai Krishna Potthuri 156153df45aSSai Krishna Potthuri slew-rate: 157153df45aSSai Krishna Potthuri enum: [0, 1] 158153df45aSSai Krishna Potthuri 159ef641c44SSai Krishna Potthuri power-source: 160153df45aSSai Krishna Potthuri enum: [1, 2, 3, 4] 161153df45aSSai Krishna Potthuri 162153df45aSSai Krishna Potthuri oneOf: 163153df45aSSai Krishna Potthuri - required: [ groups ] 164153df45aSSai Krishna Potthuri - required: [ pins ] 165153df45aSSai Krishna Potthuri 166153df45aSSai Krishna Potthuri additionalProperties: false 167153df45aSSai Krishna Potthuri 168153df45aSSai Krishna Potthuri additionalProperties: false 169153df45aSSai Krishna Potthuri 170c09acbc4SRafał MiłeckiallOf: 171*49cd1dd1SRob Herring - $ref: pinctrl.yaml# 172c09acbc4SRafał Miłecki 173153df45aSSai Krishna Potthurirequired: 174153df45aSSai Krishna Potthuri - compatible 175153df45aSSai Krishna Potthuri - reg 176153df45aSSai Krishna Potthuri - syscon 177153df45aSSai Krishna Potthuri 178153df45aSSai Krishna PotthuriadditionalProperties: false 179153df45aSSai Krishna Potthuri 180153df45aSSai Krishna Potthuriexamples: 181153df45aSSai Krishna Potthuri - | 182ef641c44SSai Krishna Potthuri #include <dt-bindings/pinctrl/pinctrl-zynq.h> 183153df45aSSai Krishna Potthuri pinctrl0: pinctrl@700 { 184153df45aSSai Krishna Potthuri compatible = "xlnx,zynq-pinctrl"; 185153df45aSSai Krishna Potthuri reg = <0x700 0x200>; 186153df45aSSai Krishna Potthuri syscon = <&slcr>; 187153df45aSSai Krishna Potthuri 188153df45aSSai Krishna Potthuri pinctrl_uart1_default: uart1-default { 189153df45aSSai Krishna Potthuri mux { 190153df45aSSai Krishna Potthuri groups = "uart1_10_grp"; 191153df45aSSai Krishna Potthuri function = "uart1"; 192153df45aSSai Krishna Potthuri }; 193153df45aSSai Krishna Potthuri 194153df45aSSai Krishna Potthuri conf { 195153df45aSSai Krishna Potthuri groups = "uart1_10_grp"; 196153df45aSSai Krishna Potthuri slew-rate = <0>; 197ef641c44SSai Krishna Potthuri power-source = <IO_STANDARD_LVCMOS18>; 198153df45aSSai Krishna Potthuri }; 199153df45aSSai Krishna Potthuri 200153df45aSSai Krishna Potthuri conf-rx { 201153df45aSSai Krishna Potthuri pins = "MIO49"; 202153df45aSSai Krishna Potthuri bias-high-impedance; 203153df45aSSai Krishna Potthuri }; 204153df45aSSai Krishna Potthuri 205153df45aSSai Krishna Potthuri conf-tx { 206153df45aSSai Krishna Potthuri pins = "MIO48"; 207153df45aSSai Krishna Potthuri bias-disable; 208153df45aSSai Krishna Potthuri }; 209153df45aSSai Krishna Potthuri }; 210153df45aSSai Krishna Potthuri }; 211153df45aSSai Krishna Potthuri 212153df45aSSai Krishna Potthuri uart1 { 213153df45aSSai Krishna Potthuri pinctrl-names = "default"; 214153df45aSSai Krishna Potthuri pinctrl-0 = <&pinctrl_uart1_default>; 215153df45aSSai Krishna Potthuri }; 216153df45aSSai Krishna Potthuri 217153df45aSSai Krishna Potthuri... 218