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/mediatek,mt7620-pinctrl.yaml# 5*fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*fac71e4eSEmmanuel Vadot 7*fac71e4eSEmmanuel Vadottitle: MediaTek MT7620 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 MediaTek MT7620 pin controller for MT7620 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,mt7620-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: [ephy, gpio, gpio i2s, gpio uartf, i2c, i2s uartf, mdio, nand, 39*fac71e4eSEmmanuel Vadot pa, pcie refclk, pcie rst, pcm gpio, pcm i2s, pcm uartf, 40*fac71e4eSEmmanuel Vadot refclk, rgmii1, rgmii2, sd, spi, spi refclk, uartf, uartlite, 41*fac71e4eSEmmanuel Vadot wdt refclk, wdt rst, wled] 42*fac71e4eSEmmanuel Vadot 43*fac71e4eSEmmanuel Vadot groups: 44*fac71e4eSEmmanuel Vadot description: 45*fac71e4eSEmmanuel Vadot An array of strings. Each string contains the name of a group. 46*fac71e4eSEmmanuel Vadot maxItems: 1 47*fac71e4eSEmmanuel Vadot 48*fac71e4eSEmmanuel Vadot required: 49*fac71e4eSEmmanuel Vadot - groups 50*fac71e4eSEmmanuel Vadot - function 51*fac71e4eSEmmanuel Vadot 52*fac71e4eSEmmanuel Vadot allOf: 53*fac71e4eSEmmanuel Vadot - if: 54*fac71e4eSEmmanuel Vadot properties: 55*fac71e4eSEmmanuel Vadot function: 56*fac71e4eSEmmanuel Vadot const: ephy 57*fac71e4eSEmmanuel Vadot then: 58*fac71e4eSEmmanuel Vadot properties: 59*fac71e4eSEmmanuel Vadot groups: 60*fac71e4eSEmmanuel Vadot enum: [ephy] 61*fac71e4eSEmmanuel Vadot 62*fac71e4eSEmmanuel Vadot - if: 63*fac71e4eSEmmanuel Vadot properties: 64*fac71e4eSEmmanuel Vadot function: 65*fac71e4eSEmmanuel Vadot const: gpio 66*fac71e4eSEmmanuel Vadot then: 67*fac71e4eSEmmanuel Vadot properties: 68*fac71e4eSEmmanuel Vadot groups: 69*fac71e4eSEmmanuel Vadot enum: [ephy, i2c, mdio, nd_sd, pa, pcie, rgmii1, rgmii2, spi, 70*fac71e4eSEmmanuel Vadot spi refclk, uartf, uartlite, wdt, wled] 71*fac71e4eSEmmanuel Vadot 72*fac71e4eSEmmanuel Vadot - if: 73*fac71e4eSEmmanuel Vadot properties: 74*fac71e4eSEmmanuel Vadot function: 75*fac71e4eSEmmanuel Vadot const: gpio i2s 76*fac71e4eSEmmanuel Vadot then: 77*fac71e4eSEmmanuel Vadot properties: 78*fac71e4eSEmmanuel Vadot groups: 79*fac71e4eSEmmanuel Vadot enum: [uartf] 80*fac71e4eSEmmanuel Vadot 81*fac71e4eSEmmanuel Vadot - if: 82*fac71e4eSEmmanuel Vadot properties: 83*fac71e4eSEmmanuel Vadot function: 84*fac71e4eSEmmanuel Vadot const: gpio uartf 85*fac71e4eSEmmanuel Vadot then: 86*fac71e4eSEmmanuel Vadot properties: 87*fac71e4eSEmmanuel Vadot groups: 88*fac71e4eSEmmanuel Vadot enum: [uartf] 89*fac71e4eSEmmanuel Vadot 90*fac71e4eSEmmanuel Vadot - if: 91*fac71e4eSEmmanuel Vadot properties: 92*fac71e4eSEmmanuel Vadot function: 93*fac71e4eSEmmanuel Vadot const: i2c 94*fac71e4eSEmmanuel Vadot then: 95*fac71e4eSEmmanuel Vadot properties: 96*fac71e4eSEmmanuel Vadot groups: 97*fac71e4eSEmmanuel Vadot enum: [i2c] 98*fac71e4eSEmmanuel Vadot 99*fac71e4eSEmmanuel Vadot - if: 100*fac71e4eSEmmanuel Vadot properties: 101*fac71e4eSEmmanuel Vadot function: 102*fac71e4eSEmmanuel Vadot const: i2s uartf 103*fac71e4eSEmmanuel Vadot then: 104*fac71e4eSEmmanuel Vadot properties: 105*fac71e4eSEmmanuel Vadot groups: 106*fac71e4eSEmmanuel Vadot enum: [uartf] 107*fac71e4eSEmmanuel Vadot 108*fac71e4eSEmmanuel Vadot - if: 109*fac71e4eSEmmanuel Vadot properties: 110*fac71e4eSEmmanuel Vadot function: 111*fac71e4eSEmmanuel Vadot const: mdio 112*fac71e4eSEmmanuel Vadot then: 113*fac71e4eSEmmanuel Vadot properties: 114*fac71e4eSEmmanuel Vadot groups: 115*fac71e4eSEmmanuel Vadot enum: [mdio] 116*fac71e4eSEmmanuel Vadot 117*fac71e4eSEmmanuel Vadot - if: 118*fac71e4eSEmmanuel Vadot properties: 119*fac71e4eSEmmanuel Vadot function: 120*fac71e4eSEmmanuel Vadot const: nand 121*fac71e4eSEmmanuel Vadot then: 122*fac71e4eSEmmanuel Vadot properties: 123*fac71e4eSEmmanuel Vadot groups: 124*fac71e4eSEmmanuel Vadot enum: [nd_sd] 125*fac71e4eSEmmanuel Vadot 126*fac71e4eSEmmanuel Vadot - if: 127*fac71e4eSEmmanuel Vadot properties: 128*fac71e4eSEmmanuel Vadot function: 129*fac71e4eSEmmanuel Vadot const: pa 130*fac71e4eSEmmanuel Vadot then: 131*fac71e4eSEmmanuel Vadot properties: 132*fac71e4eSEmmanuel Vadot groups: 133*fac71e4eSEmmanuel Vadot enum: [pa] 134*fac71e4eSEmmanuel Vadot 135*fac71e4eSEmmanuel Vadot - if: 136*fac71e4eSEmmanuel Vadot properties: 137*fac71e4eSEmmanuel Vadot function: 138*fac71e4eSEmmanuel Vadot const: pcie refclk 139*fac71e4eSEmmanuel Vadot then: 140*fac71e4eSEmmanuel Vadot properties: 141*fac71e4eSEmmanuel Vadot groups: 142*fac71e4eSEmmanuel Vadot enum: [pcie] 143*fac71e4eSEmmanuel Vadot 144*fac71e4eSEmmanuel Vadot - if: 145*fac71e4eSEmmanuel Vadot properties: 146*fac71e4eSEmmanuel Vadot function: 147*fac71e4eSEmmanuel Vadot const: pcie rst 148*fac71e4eSEmmanuel Vadot then: 149*fac71e4eSEmmanuel Vadot properties: 150*fac71e4eSEmmanuel Vadot groups: 151*fac71e4eSEmmanuel Vadot enum: [pcie] 152*fac71e4eSEmmanuel Vadot 153*fac71e4eSEmmanuel Vadot - if: 154*fac71e4eSEmmanuel Vadot properties: 155*fac71e4eSEmmanuel Vadot function: 156*fac71e4eSEmmanuel Vadot const: pcm gpio 157*fac71e4eSEmmanuel Vadot then: 158*fac71e4eSEmmanuel Vadot properties: 159*fac71e4eSEmmanuel Vadot groups: 160*fac71e4eSEmmanuel Vadot enum: [uartf] 161*fac71e4eSEmmanuel Vadot 162*fac71e4eSEmmanuel Vadot - if: 163*fac71e4eSEmmanuel Vadot properties: 164*fac71e4eSEmmanuel Vadot function: 165*fac71e4eSEmmanuel Vadot const: pcm i2s 166*fac71e4eSEmmanuel Vadot then: 167*fac71e4eSEmmanuel Vadot properties: 168*fac71e4eSEmmanuel Vadot groups: 169*fac71e4eSEmmanuel Vadot enum: [uartf] 170*fac71e4eSEmmanuel Vadot 171*fac71e4eSEmmanuel Vadot - if: 172*fac71e4eSEmmanuel Vadot properties: 173*fac71e4eSEmmanuel Vadot function: 174*fac71e4eSEmmanuel Vadot const: pcm uartf 175*fac71e4eSEmmanuel Vadot then: 176*fac71e4eSEmmanuel Vadot properties: 177*fac71e4eSEmmanuel Vadot groups: 178*fac71e4eSEmmanuel Vadot enum: [uartf] 179*fac71e4eSEmmanuel Vadot 180*fac71e4eSEmmanuel Vadot - if: 181*fac71e4eSEmmanuel Vadot properties: 182*fac71e4eSEmmanuel Vadot function: 183*fac71e4eSEmmanuel Vadot const: refclk 184*fac71e4eSEmmanuel Vadot then: 185*fac71e4eSEmmanuel Vadot properties: 186*fac71e4eSEmmanuel Vadot groups: 187*fac71e4eSEmmanuel Vadot enum: [mdio] 188*fac71e4eSEmmanuel Vadot 189*fac71e4eSEmmanuel Vadot - if: 190*fac71e4eSEmmanuel Vadot properties: 191*fac71e4eSEmmanuel Vadot function: 192*fac71e4eSEmmanuel Vadot const: rgmii1 193*fac71e4eSEmmanuel Vadot then: 194*fac71e4eSEmmanuel Vadot properties: 195*fac71e4eSEmmanuel Vadot groups: 196*fac71e4eSEmmanuel Vadot enum: [rgmii1] 197*fac71e4eSEmmanuel Vadot 198*fac71e4eSEmmanuel Vadot - if: 199*fac71e4eSEmmanuel Vadot properties: 200*fac71e4eSEmmanuel Vadot function: 201*fac71e4eSEmmanuel Vadot const: rgmii2 202*fac71e4eSEmmanuel Vadot then: 203*fac71e4eSEmmanuel Vadot properties: 204*fac71e4eSEmmanuel Vadot groups: 205*fac71e4eSEmmanuel Vadot enum: [rgmii2] 206*fac71e4eSEmmanuel Vadot 207*fac71e4eSEmmanuel Vadot - if: 208*fac71e4eSEmmanuel Vadot properties: 209*fac71e4eSEmmanuel Vadot function: 210*fac71e4eSEmmanuel Vadot const: sd 211*fac71e4eSEmmanuel Vadot then: 212*fac71e4eSEmmanuel Vadot properties: 213*fac71e4eSEmmanuel Vadot groups: 214*fac71e4eSEmmanuel Vadot enum: [nd_sd] 215*fac71e4eSEmmanuel Vadot 216*fac71e4eSEmmanuel Vadot - if: 217*fac71e4eSEmmanuel Vadot properties: 218*fac71e4eSEmmanuel Vadot function: 219*fac71e4eSEmmanuel Vadot const: spi 220*fac71e4eSEmmanuel Vadot then: 221*fac71e4eSEmmanuel Vadot properties: 222*fac71e4eSEmmanuel Vadot groups: 223*fac71e4eSEmmanuel Vadot enum: [spi] 224*fac71e4eSEmmanuel Vadot 225*fac71e4eSEmmanuel Vadot - if: 226*fac71e4eSEmmanuel Vadot properties: 227*fac71e4eSEmmanuel Vadot function: 228*fac71e4eSEmmanuel Vadot const: spi refclk 229*fac71e4eSEmmanuel Vadot then: 230*fac71e4eSEmmanuel Vadot properties: 231*fac71e4eSEmmanuel Vadot groups: 232*fac71e4eSEmmanuel Vadot enum: [spi refclk] 233*fac71e4eSEmmanuel Vadot 234*fac71e4eSEmmanuel Vadot - if: 235*fac71e4eSEmmanuel Vadot properties: 236*fac71e4eSEmmanuel Vadot function: 237*fac71e4eSEmmanuel Vadot const: uartf 238*fac71e4eSEmmanuel Vadot then: 239*fac71e4eSEmmanuel Vadot properties: 240*fac71e4eSEmmanuel Vadot groups: 241*fac71e4eSEmmanuel Vadot enum: [uartf] 242*fac71e4eSEmmanuel Vadot 243*fac71e4eSEmmanuel Vadot - if: 244*fac71e4eSEmmanuel Vadot properties: 245*fac71e4eSEmmanuel Vadot function: 246*fac71e4eSEmmanuel Vadot const: uartlite 247*fac71e4eSEmmanuel Vadot then: 248*fac71e4eSEmmanuel Vadot properties: 249*fac71e4eSEmmanuel Vadot groups: 250*fac71e4eSEmmanuel Vadot enum: [uartlite] 251*fac71e4eSEmmanuel Vadot 252*fac71e4eSEmmanuel Vadot - if: 253*fac71e4eSEmmanuel Vadot properties: 254*fac71e4eSEmmanuel Vadot function: 255*fac71e4eSEmmanuel Vadot const: wdt refclk 256*fac71e4eSEmmanuel Vadot then: 257*fac71e4eSEmmanuel Vadot properties: 258*fac71e4eSEmmanuel Vadot groups: 259*fac71e4eSEmmanuel Vadot enum: [wdt] 260*fac71e4eSEmmanuel Vadot 261*fac71e4eSEmmanuel Vadot - if: 262*fac71e4eSEmmanuel Vadot properties: 263*fac71e4eSEmmanuel Vadot function: 264*fac71e4eSEmmanuel Vadot const: wdt rst 265*fac71e4eSEmmanuel Vadot then: 266*fac71e4eSEmmanuel Vadot properties: 267*fac71e4eSEmmanuel Vadot groups: 268*fac71e4eSEmmanuel Vadot enum: [wdt] 269*fac71e4eSEmmanuel Vadot 270*fac71e4eSEmmanuel Vadot - if: 271*fac71e4eSEmmanuel Vadot properties: 272*fac71e4eSEmmanuel Vadot function: 273*fac71e4eSEmmanuel Vadot const: wled 274*fac71e4eSEmmanuel Vadot then: 275*fac71e4eSEmmanuel Vadot properties: 276*fac71e4eSEmmanuel Vadot groups: 277*fac71e4eSEmmanuel Vadot enum: [wled] 278*fac71e4eSEmmanuel Vadot 279*fac71e4eSEmmanuel VadotallOf: 280*fac71e4eSEmmanuel Vadot - $ref: pinctrl.yaml# 281*fac71e4eSEmmanuel Vadot 282*fac71e4eSEmmanuel Vadotrequired: 283*fac71e4eSEmmanuel Vadot - compatible 284*fac71e4eSEmmanuel Vadot 285*fac71e4eSEmmanuel VadotadditionalProperties: false 286*fac71e4eSEmmanuel Vadot 287*fac71e4eSEmmanuel Vadotexamples: 288*fac71e4eSEmmanuel Vadot - | 289*fac71e4eSEmmanuel Vadot pinctrl { 290*fac71e4eSEmmanuel Vadot compatible = "ralink,mt7620-pinctrl"; 291*fac71e4eSEmmanuel Vadot 292*fac71e4eSEmmanuel Vadot i2c_pins: i2c0-pins { 293*fac71e4eSEmmanuel Vadot pinmux { 294*fac71e4eSEmmanuel Vadot groups = "i2c"; 295*fac71e4eSEmmanuel Vadot function = "i2c"; 296*fac71e4eSEmmanuel Vadot }; 297*fac71e4eSEmmanuel Vadot }; 298*fac71e4eSEmmanuel Vadot }; 299