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