1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2d5b0e70fSEmmanuel Vadot%YAML 1.2 3d5b0e70fSEmmanuel Vadot--- 4d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/ralink,rt305x-pinctrl.yaml# 5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6d5b0e70fSEmmanuel Vadot 7d5b0e70fSEmmanuel Vadottitle: Ralink RT305X Pin Controller 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Arınç ÜNAL <arinc.unal@arinc9.com> 11d5b0e70fSEmmanuel Vadot - Sergio Paracuellos <sergio.paracuellos@gmail.com> 12d5b0e70fSEmmanuel Vadot 13*fac71e4eSEmmanuel Vadotdescription: | 14*fac71e4eSEmmanuel Vadot Ralink RT305X pin controller for RT3050, RT3052, and RT3350 SoCs. 15d5b0e70fSEmmanuel Vadot The pin controller can only set the muxing of pin groups. Muxing individual 16d5b0e70fSEmmanuel Vadot pins is not supported. There is no pinconf support. 17d5b0e70fSEmmanuel Vadot 18d5b0e70fSEmmanuel Vadotproperties: 19d5b0e70fSEmmanuel Vadot compatible: 20d5b0e70fSEmmanuel Vadot const: ralink,rt305x-pinctrl 21d5b0e70fSEmmanuel Vadot 22d5b0e70fSEmmanuel VadotpatternProperties: 23d5b0e70fSEmmanuel Vadot '-pins$': 24d5b0e70fSEmmanuel Vadot type: object 25*fac71e4eSEmmanuel Vadot additionalProperties: false 26*fac71e4eSEmmanuel Vadot 27d5b0e70fSEmmanuel Vadot patternProperties: 28d5b0e70fSEmmanuel Vadot '^(.*-)?pinmux$': 29d5b0e70fSEmmanuel Vadot type: object 30d5b0e70fSEmmanuel Vadot description: node for pinctrl. 31d5b0e70fSEmmanuel Vadot $ref: pinmux-node.yaml# 32*fac71e4eSEmmanuel Vadot additionalProperties: false 33d5b0e70fSEmmanuel Vadot 34d5b0e70fSEmmanuel Vadot properties: 35d5b0e70fSEmmanuel Vadot function: 36cb7aa33aSEmmanuel Vadot description: 37cb7aa33aSEmmanuel Vadot A string containing the name of the function to mux to the group. 38cb7aa33aSEmmanuel Vadot enum: [gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag, mdio, 39cb7aa33aSEmmanuel Vadot pcm gpio, pcm i2s, pcm uartf, rgmii, sdram, spi, uartf, 40cb7aa33aSEmmanuel Vadot uartlite] 41d5b0e70fSEmmanuel Vadot 42cb7aa33aSEmmanuel Vadot groups: 43cb7aa33aSEmmanuel Vadot description: 44cb7aa33aSEmmanuel Vadot An array of strings. Each string contains the name of a group. 45cb7aa33aSEmmanuel Vadot maxItems: 1 46d5b0e70fSEmmanuel Vadot 47d5b0e70fSEmmanuel Vadot required: 48d5b0e70fSEmmanuel Vadot - groups 49d5b0e70fSEmmanuel Vadot - function 50d5b0e70fSEmmanuel Vadot 51cb7aa33aSEmmanuel Vadot allOf: 52cb7aa33aSEmmanuel Vadot - if: 53cb7aa33aSEmmanuel Vadot properties: 54cb7aa33aSEmmanuel Vadot function: 55cb7aa33aSEmmanuel Vadot const: gpio 56cb7aa33aSEmmanuel Vadot then: 57cb7aa33aSEmmanuel Vadot properties: 58cb7aa33aSEmmanuel Vadot groups: 59*fac71e4eSEmmanuel Vadot enum: [i2c, jtag, mdio, rgmii, sdram, spi, uartf, uartlite] 60cb7aa33aSEmmanuel Vadot 61cb7aa33aSEmmanuel Vadot - if: 62cb7aa33aSEmmanuel Vadot properties: 63cb7aa33aSEmmanuel Vadot function: 64cb7aa33aSEmmanuel Vadot const: gpio i2s 65cb7aa33aSEmmanuel Vadot then: 66cb7aa33aSEmmanuel Vadot properties: 67cb7aa33aSEmmanuel Vadot groups: 68cb7aa33aSEmmanuel Vadot enum: [uartf] 69cb7aa33aSEmmanuel Vadot 70cb7aa33aSEmmanuel Vadot - if: 71cb7aa33aSEmmanuel Vadot properties: 72cb7aa33aSEmmanuel Vadot function: 73cb7aa33aSEmmanuel Vadot const: gpio uartf 74cb7aa33aSEmmanuel Vadot then: 75cb7aa33aSEmmanuel Vadot properties: 76cb7aa33aSEmmanuel Vadot groups: 77cb7aa33aSEmmanuel Vadot enum: [uartf] 78cb7aa33aSEmmanuel Vadot 79cb7aa33aSEmmanuel Vadot - if: 80cb7aa33aSEmmanuel Vadot properties: 81cb7aa33aSEmmanuel Vadot function: 82cb7aa33aSEmmanuel Vadot const: i2c 83cb7aa33aSEmmanuel Vadot then: 84cb7aa33aSEmmanuel Vadot properties: 85cb7aa33aSEmmanuel Vadot groups: 86cb7aa33aSEmmanuel Vadot enum: [i2c] 87cb7aa33aSEmmanuel Vadot 88cb7aa33aSEmmanuel Vadot - if: 89cb7aa33aSEmmanuel Vadot properties: 90cb7aa33aSEmmanuel Vadot function: 91cb7aa33aSEmmanuel Vadot const: i2s uartf 92cb7aa33aSEmmanuel Vadot then: 93cb7aa33aSEmmanuel Vadot properties: 94cb7aa33aSEmmanuel Vadot groups: 95cb7aa33aSEmmanuel Vadot enum: [uartf] 96cb7aa33aSEmmanuel Vadot 97cb7aa33aSEmmanuel Vadot - if: 98cb7aa33aSEmmanuel Vadot properties: 99cb7aa33aSEmmanuel Vadot function: 100cb7aa33aSEmmanuel Vadot const: jtag 101cb7aa33aSEmmanuel Vadot then: 102cb7aa33aSEmmanuel Vadot properties: 103cb7aa33aSEmmanuel Vadot groups: 104cb7aa33aSEmmanuel Vadot enum: [jtag] 105cb7aa33aSEmmanuel Vadot 106cb7aa33aSEmmanuel Vadot - if: 107cb7aa33aSEmmanuel Vadot properties: 108cb7aa33aSEmmanuel Vadot function: 109cb7aa33aSEmmanuel Vadot const: mdio 110cb7aa33aSEmmanuel Vadot then: 111cb7aa33aSEmmanuel Vadot properties: 112cb7aa33aSEmmanuel Vadot groups: 113cb7aa33aSEmmanuel Vadot enum: [mdio] 114cb7aa33aSEmmanuel Vadot 115cb7aa33aSEmmanuel Vadot - if: 116cb7aa33aSEmmanuel Vadot properties: 117cb7aa33aSEmmanuel Vadot function: 118cb7aa33aSEmmanuel Vadot const: pcm gpio 119cb7aa33aSEmmanuel Vadot then: 120cb7aa33aSEmmanuel Vadot properties: 121cb7aa33aSEmmanuel Vadot groups: 122cb7aa33aSEmmanuel Vadot enum: [uartf] 123cb7aa33aSEmmanuel Vadot 124cb7aa33aSEmmanuel Vadot - if: 125cb7aa33aSEmmanuel Vadot properties: 126cb7aa33aSEmmanuel Vadot function: 127cb7aa33aSEmmanuel Vadot const: pcm i2s 128cb7aa33aSEmmanuel Vadot then: 129cb7aa33aSEmmanuel Vadot properties: 130cb7aa33aSEmmanuel Vadot groups: 131cb7aa33aSEmmanuel Vadot enum: [uartf] 132cb7aa33aSEmmanuel Vadot 133cb7aa33aSEmmanuel Vadot - if: 134cb7aa33aSEmmanuel Vadot properties: 135cb7aa33aSEmmanuel Vadot function: 136cb7aa33aSEmmanuel Vadot const: pcm uartf 137cb7aa33aSEmmanuel Vadot then: 138cb7aa33aSEmmanuel Vadot properties: 139cb7aa33aSEmmanuel Vadot groups: 140cb7aa33aSEmmanuel Vadot enum: [uartf] 141cb7aa33aSEmmanuel Vadot 142cb7aa33aSEmmanuel Vadot - if: 143cb7aa33aSEmmanuel Vadot properties: 144cb7aa33aSEmmanuel Vadot function: 145cb7aa33aSEmmanuel Vadot const: rgmii 146cb7aa33aSEmmanuel Vadot then: 147cb7aa33aSEmmanuel Vadot properties: 148cb7aa33aSEmmanuel Vadot groups: 149cb7aa33aSEmmanuel Vadot enum: [rgmii] 150cb7aa33aSEmmanuel Vadot 151cb7aa33aSEmmanuel Vadot - if: 152cb7aa33aSEmmanuel Vadot properties: 153cb7aa33aSEmmanuel Vadot function: 154cb7aa33aSEmmanuel Vadot const: sdram 155cb7aa33aSEmmanuel Vadot then: 156cb7aa33aSEmmanuel Vadot properties: 157cb7aa33aSEmmanuel Vadot groups: 158cb7aa33aSEmmanuel Vadot enum: [sdram] 159cb7aa33aSEmmanuel Vadot 160cb7aa33aSEmmanuel Vadot - if: 161cb7aa33aSEmmanuel Vadot properties: 162cb7aa33aSEmmanuel Vadot function: 163cb7aa33aSEmmanuel Vadot const: spi 164cb7aa33aSEmmanuel Vadot then: 165cb7aa33aSEmmanuel Vadot properties: 166cb7aa33aSEmmanuel Vadot groups: 167cb7aa33aSEmmanuel Vadot enum: [spi] 168cb7aa33aSEmmanuel Vadot 169cb7aa33aSEmmanuel Vadot - if: 170cb7aa33aSEmmanuel Vadot properties: 171cb7aa33aSEmmanuel Vadot function: 172cb7aa33aSEmmanuel Vadot const: uartf 173cb7aa33aSEmmanuel Vadot then: 174cb7aa33aSEmmanuel Vadot properties: 175cb7aa33aSEmmanuel Vadot groups: 176cb7aa33aSEmmanuel Vadot enum: [uartf] 177cb7aa33aSEmmanuel Vadot 178cb7aa33aSEmmanuel Vadot - if: 179cb7aa33aSEmmanuel Vadot properties: 180cb7aa33aSEmmanuel Vadot function: 181cb7aa33aSEmmanuel Vadot const: uartlite 182cb7aa33aSEmmanuel Vadot then: 183cb7aa33aSEmmanuel Vadot properties: 184cb7aa33aSEmmanuel Vadot groups: 185cb7aa33aSEmmanuel Vadot enum: [uartlite] 186cb7aa33aSEmmanuel Vadot 187d5b0e70fSEmmanuel VadotallOf: 188*fac71e4eSEmmanuel Vadot - $ref: pinctrl.yaml# 189d5b0e70fSEmmanuel Vadot 190d5b0e70fSEmmanuel Vadotrequired: 191d5b0e70fSEmmanuel Vadot - compatible 192d5b0e70fSEmmanuel Vadot 193d5b0e70fSEmmanuel VadotadditionalProperties: false 194d5b0e70fSEmmanuel Vadot 195d5b0e70fSEmmanuel Vadotexamples: 196d5b0e70fSEmmanuel Vadot - | 197d5b0e70fSEmmanuel Vadot pinctrl { 198d5b0e70fSEmmanuel Vadot compatible = "ralink,rt305x-pinctrl"; 199d5b0e70fSEmmanuel Vadot 200d5b0e70fSEmmanuel Vadot i2c_pins: i2c0-pins { 201d5b0e70fSEmmanuel Vadot pinmux { 202d5b0e70fSEmmanuel Vadot groups = "i2c"; 203d5b0e70fSEmmanuel Vadot function = "i2c"; 204d5b0e70fSEmmanuel Vadot }; 205d5b0e70fSEmmanuel Vadot }; 206d5b0e70fSEmmanuel Vadot }; 207