xref: /openbmc/linux/Documentation/devicetree/bindings/pinctrl/mediatek,mt7620-pinctrl.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
19c5ade5aSArınç ÜNAL# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
29c5ade5aSArınç ÜNAL%YAML 1.2
39c5ade5aSArınç ÜNAL---
49c5ade5aSArınç ÜNAL$id: http://devicetree.org/schemas/pinctrl/mediatek,mt7620-pinctrl.yaml#
59c5ade5aSArınç ÜNAL$schema: http://devicetree.org/meta-schemas/core.yaml#
69c5ade5aSArınç ÜNAL
79c5ade5aSArınç ÜNALtitle: MediaTek MT7620 Pin Controller
89c5ade5aSArınç ÜNAL
99c5ade5aSArınç ÜNALmaintainers:
109c5ade5aSArınç ÜNAL  - Arınç ÜNAL <arinc.unal@arinc9.com>
119c5ade5aSArınç ÜNAL  - Sergio Paracuellos <sergio.paracuellos@gmail.com>
129c5ade5aSArınç ÜNAL
13c911ad22SArınç ÜNALdescription: |
14*565afac7SArınç ÜNAL  MediaTek MT7620 pin controller for MT7620 SoC.
159c5ade5aSArınç ÜNAL  The pin controller can only set the muxing of pin groups. Muxing individual
169c5ade5aSArınç ÜNAL  pins is not supported. There is no pinconf support.
179c5ade5aSArınç ÜNAL
189c5ade5aSArınç ÜNALproperties:
199c5ade5aSArınç ÜNAL  compatible:
20*565afac7SArınç ÜNAL    const: ralink,mt7620-pinctrl
219c5ade5aSArınç ÜNAL
229c5ade5aSArınç ÜNALpatternProperties:
239c5ade5aSArınç ÜNAL  '-pins$':
249c5ade5aSArınç ÜNAL    type: object
259c5ade5aSArınç ÜNAL    additionalProperties: false
269c5ade5aSArınç ÜNAL
279c5ade5aSArınç ÜNAL    patternProperties:
289c5ade5aSArınç ÜNAL      '^(.*-)?pinmux$':
299c5ade5aSArınç ÜNAL        type: object
309c5ade5aSArınç ÜNAL        description: node for pinctrl.
319c5ade5aSArınç ÜNAL        $ref: pinmux-node.yaml#
329c5ade5aSArınç ÜNAL        additionalProperties: false
339c5ade5aSArınç ÜNAL
349c5ade5aSArınç ÜNAL        properties:
359c5ade5aSArınç ÜNAL          function:
369c5ade5aSArınç ÜNAL            description:
379c5ade5aSArınç ÜNAL              A string containing the name of the function to mux to the group.
38*565afac7SArınç ÜNAL            enum: [ephy, gpio, gpio i2s, gpio uartf, i2c, i2s uartf, mdio, nand,
39*565afac7SArınç ÜNAL                   pa, pcie refclk, pcie rst, pcm gpio, pcm i2s, pcm uartf,
40*565afac7SArınç ÜNAL                   refclk, rgmii1, rgmii2, sd, spi, spi refclk, uartf, uartlite,
41*565afac7SArınç ÜNAL                   wdt refclk, wdt rst, wled]
429c5ade5aSArınç ÜNAL
439c5ade5aSArınç ÜNAL          groups:
449c5ade5aSArınç ÜNAL            description:
459c5ade5aSArınç ÜNAL              An array of strings. Each string contains the name of a group.
469c5ade5aSArınç ÜNAL            maxItems: 1
479c5ade5aSArınç ÜNAL
489c5ade5aSArınç ÜNAL        required:
499c5ade5aSArınç ÜNAL          - groups
509c5ade5aSArınç ÜNAL          - function
519c5ade5aSArınç ÜNAL
529c5ade5aSArınç ÜNAL        allOf:
539c5ade5aSArınç ÜNAL          - if:
549c5ade5aSArınç ÜNAL              properties:
559c5ade5aSArınç ÜNAL                function:
569c5ade5aSArınç ÜNAL                  const: ephy
579c5ade5aSArınç ÜNAL            then:
589c5ade5aSArınç ÜNAL              properties:
599c5ade5aSArınç ÜNAL                groups:
609c5ade5aSArınç ÜNAL                  enum: [ephy]
619c5ade5aSArınç ÜNAL
629c5ade5aSArınç ÜNAL          - if:
639c5ade5aSArınç ÜNAL              properties:
649c5ade5aSArınç ÜNAL                function:
659c5ade5aSArınç ÜNAL                  const: gpio
669c5ade5aSArınç ÜNAL            then:
679c5ade5aSArınç ÜNAL              properties:
689c5ade5aSArınç ÜNAL                groups:
69*565afac7SArınç ÜNAL                  enum: [ephy, i2c, mdio, nd_sd, pa, pcie, rgmii1, rgmii2, spi,
70*565afac7SArınç ÜNAL                         spi refclk, uartf, uartlite, wdt, wled]
719c5ade5aSArınç ÜNAL
729c5ade5aSArınç ÜNAL          - if:
739c5ade5aSArınç ÜNAL              properties:
749c5ade5aSArınç ÜNAL                function:
759c5ade5aSArınç ÜNAL                  const: gpio i2s
769c5ade5aSArınç ÜNAL            then:
779c5ade5aSArınç ÜNAL              properties:
789c5ade5aSArınç ÜNAL                groups:
799c5ade5aSArınç ÜNAL                  enum: [uartf]
809c5ade5aSArınç ÜNAL
819c5ade5aSArınç ÜNAL          - if:
829c5ade5aSArınç ÜNAL              properties:
839c5ade5aSArınç ÜNAL                function:
849c5ade5aSArınç ÜNAL                  const: gpio uartf
859c5ade5aSArınç ÜNAL            then:
869c5ade5aSArınç ÜNAL              properties:
879c5ade5aSArınç ÜNAL                groups:
889c5ade5aSArınç ÜNAL                  enum: [uartf]
899c5ade5aSArınç ÜNAL
909c5ade5aSArınç ÜNAL          - if:
919c5ade5aSArınç ÜNAL              properties:
929c5ade5aSArınç ÜNAL                function:
939c5ade5aSArınç ÜNAL                  const: i2c
949c5ade5aSArınç ÜNAL            then:
959c5ade5aSArınç ÜNAL              properties:
969c5ade5aSArınç ÜNAL                groups:
979c5ade5aSArınç ÜNAL                  enum: [i2c]
989c5ade5aSArınç ÜNAL
999c5ade5aSArınç ÜNAL          - if:
1009c5ade5aSArınç ÜNAL              properties:
1019c5ade5aSArınç ÜNAL                function:
1029c5ade5aSArınç ÜNAL                  const: i2s uartf
1039c5ade5aSArınç ÜNAL            then:
1049c5ade5aSArınç ÜNAL              properties:
1059c5ade5aSArınç ÜNAL                groups:
1069c5ade5aSArınç ÜNAL                  enum: [uartf]
1079c5ade5aSArınç ÜNAL
1089c5ade5aSArınç ÜNAL          - if:
1099c5ade5aSArınç ÜNAL              properties:
1109c5ade5aSArınç ÜNAL                function:
1119c5ade5aSArınç ÜNAL                  const: mdio
1129c5ade5aSArınç ÜNAL            then:
1139c5ade5aSArınç ÜNAL              properties:
1149c5ade5aSArınç ÜNAL                groups:
1159c5ade5aSArınç ÜNAL                  enum: [mdio]
1169c5ade5aSArınç ÜNAL
1179c5ade5aSArınç ÜNAL          - if:
1189c5ade5aSArınç ÜNAL              properties:
1199c5ade5aSArınç ÜNAL                function:
1209c5ade5aSArınç ÜNAL                  const: nand
1219c5ade5aSArınç ÜNAL            then:
1229c5ade5aSArınç ÜNAL              properties:
1239c5ade5aSArınç ÜNAL                groups:
1249c5ade5aSArınç ÜNAL                  enum: [nd_sd]
1259c5ade5aSArınç ÜNAL
1269c5ade5aSArınç ÜNAL          - if:
1279c5ade5aSArınç ÜNAL              properties:
1289c5ade5aSArınç ÜNAL                function:
1299c5ade5aSArınç ÜNAL                  const: pa
1309c5ade5aSArınç ÜNAL            then:
1319c5ade5aSArınç ÜNAL              properties:
1329c5ade5aSArınç ÜNAL                groups:
1339c5ade5aSArınç ÜNAL                  enum: [pa]
1349c5ade5aSArınç ÜNAL
1359c5ade5aSArınç ÜNAL          - if:
1369c5ade5aSArınç ÜNAL              properties:
1379c5ade5aSArınç ÜNAL                function:
1389c5ade5aSArınç ÜNAL                  const: pcie refclk
1399c5ade5aSArınç ÜNAL            then:
1409c5ade5aSArınç ÜNAL              properties:
1419c5ade5aSArınç ÜNAL                groups:
1429c5ade5aSArınç ÜNAL                  enum: [pcie]
1439c5ade5aSArınç ÜNAL
1449c5ade5aSArınç ÜNAL          - if:
1459c5ade5aSArınç ÜNAL              properties:
1469c5ade5aSArınç ÜNAL                function:
1479c5ade5aSArınç ÜNAL                  const: pcie rst
1489c5ade5aSArınç ÜNAL            then:
1499c5ade5aSArınç ÜNAL              properties:
1509c5ade5aSArınç ÜNAL                groups:
1519c5ade5aSArınç ÜNAL                  enum: [pcie]
1529c5ade5aSArınç ÜNAL
1539c5ade5aSArınç ÜNAL          - if:
1549c5ade5aSArınç ÜNAL              properties:
1559c5ade5aSArınç ÜNAL                function:
1569c5ade5aSArınç ÜNAL                  const: pcm gpio
1579c5ade5aSArınç ÜNAL            then:
1589c5ade5aSArınç ÜNAL              properties:
1599c5ade5aSArınç ÜNAL                groups:
1609c5ade5aSArınç ÜNAL                  enum: [uartf]
1619c5ade5aSArınç ÜNAL
1629c5ade5aSArınç ÜNAL          - if:
1639c5ade5aSArınç ÜNAL              properties:
1649c5ade5aSArınç ÜNAL                function:
1659c5ade5aSArınç ÜNAL                  const: pcm i2s
1669c5ade5aSArınç ÜNAL            then:
1679c5ade5aSArınç ÜNAL              properties:
1689c5ade5aSArınç ÜNAL                groups:
1699c5ade5aSArınç ÜNAL                  enum: [uartf]
1709c5ade5aSArınç ÜNAL
1719c5ade5aSArınç ÜNAL          - if:
1729c5ade5aSArınç ÜNAL              properties:
1739c5ade5aSArınç ÜNAL                function:
1749c5ade5aSArınç ÜNAL                  const: pcm uartf
1759c5ade5aSArınç ÜNAL            then:
1769c5ade5aSArınç ÜNAL              properties:
1779c5ade5aSArınç ÜNAL                groups:
1789c5ade5aSArınç ÜNAL                  enum: [uartf]
1799c5ade5aSArınç ÜNAL
1809c5ade5aSArınç ÜNAL          - if:
1819c5ade5aSArınç ÜNAL              properties:
1829c5ade5aSArınç ÜNAL                function:
1839c5ade5aSArınç ÜNAL                  const: refclk
1849c5ade5aSArınç ÜNAL            then:
1859c5ade5aSArınç ÜNAL              properties:
1869c5ade5aSArınç ÜNAL                groups:
1879c5ade5aSArınç ÜNAL                  enum: [mdio]
1889c5ade5aSArınç ÜNAL
1899c5ade5aSArınç ÜNAL          - if:
1909c5ade5aSArınç ÜNAL              properties:
1919c5ade5aSArınç ÜNAL                function:
1929c5ade5aSArınç ÜNAL                  const: rgmii1
1939c5ade5aSArınç ÜNAL            then:
1949c5ade5aSArınç ÜNAL              properties:
1959c5ade5aSArınç ÜNAL                groups:
1969c5ade5aSArınç ÜNAL                  enum: [rgmii1]
1979c5ade5aSArınç ÜNAL
1989c5ade5aSArınç ÜNAL          - if:
1999c5ade5aSArınç ÜNAL              properties:
2009c5ade5aSArınç ÜNAL                function:
2019c5ade5aSArınç ÜNAL                  const: rgmii2
2029c5ade5aSArınç ÜNAL            then:
2039c5ade5aSArınç ÜNAL              properties:
2049c5ade5aSArınç ÜNAL                groups:
2059c5ade5aSArınç ÜNAL                  enum: [rgmii2]
2069c5ade5aSArınç ÜNAL
2079c5ade5aSArınç ÜNAL          - if:
2089c5ade5aSArınç ÜNAL              properties:
2099c5ade5aSArınç ÜNAL                function:
2109c5ade5aSArınç ÜNAL                  const: sd
2119c5ade5aSArınç ÜNAL            then:
2129c5ade5aSArınç ÜNAL              properties:
2139c5ade5aSArınç ÜNAL                groups:
2149c5ade5aSArınç ÜNAL                  enum: [nd_sd]
2159c5ade5aSArınç ÜNAL
2169c5ade5aSArınç ÜNAL          - if:
2179c5ade5aSArınç ÜNAL              properties:
2189c5ade5aSArınç ÜNAL                function:
2199c5ade5aSArınç ÜNAL                  const: spi
2209c5ade5aSArınç ÜNAL            then:
2219c5ade5aSArınç ÜNAL              properties:
2229c5ade5aSArınç ÜNAL                groups:
2239c5ade5aSArınç ÜNAL                  enum: [spi]
2249c5ade5aSArınç ÜNAL
2259c5ade5aSArınç ÜNAL          - if:
2269c5ade5aSArınç ÜNAL              properties:
2279c5ade5aSArınç ÜNAL                function:
2289c5ade5aSArınç ÜNAL                  const: spi refclk
2299c5ade5aSArınç ÜNAL            then:
2309c5ade5aSArınç ÜNAL              properties:
2319c5ade5aSArınç ÜNAL                groups:
2329c5ade5aSArınç ÜNAL                  enum: [spi refclk]
2339c5ade5aSArınç ÜNAL
2349c5ade5aSArınç ÜNAL          - if:
2359c5ade5aSArınç ÜNAL              properties:
2369c5ade5aSArınç ÜNAL                function:
2379c5ade5aSArınç ÜNAL                  const: uartf
2389c5ade5aSArınç ÜNAL            then:
2399c5ade5aSArınç ÜNAL              properties:
2409c5ade5aSArınç ÜNAL                groups:
2419c5ade5aSArınç ÜNAL                  enum: [uartf]
2429c5ade5aSArınç ÜNAL
2439c5ade5aSArınç ÜNAL          - if:
2449c5ade5aSArınç ÜNAL              properties:
2459c5ade5aSArınç ÜNAL                function:
2469c5ade5aSArınç ÜNAL                  const: uartlite
2479c5ade5aSArınç ÜNAL            then:
2489c5ade5aSArınç ÜNAL              properties:
2499c5ade5aSArınç ÜNAL                groups:
2509c5ade5aSArınç ÜNAL                  enum: [uartlite]
2519c5ade5aSArınç ÜNAL
2529c5ade5aSArınç ÜNAL          - if:
2539c5ade5aSArınç ÜNAL              properties:
2549c5ade5aSArınç ÜNAL                function:
2559c5ade5aSArınç ÜNAL                  const: wdt refclk
2569c5ade5aSArınç ÜNAL            then:
2579c5ade5aSArınç ÜNAL              properties:
2589c5ade5aSArınç ÜNAL                groups:
2599c5ade5aSArınç ÜNAL                  enum: [wdt]
2609c5ade5aSArınç ÜNAL
2619c5ade5aSArınç ÜNAL          - if:
2629c5ade5aSArınç ÜNAL              properties:
2639c5ade5aSArınç ÜNAL                function:
2649c5ade5aSArınç ÜNAL                  const: wdt rst
2659c5ade5aSArınç ÜNAL            then:
2669c5ade5aSArınç ÜNAL              properties:
2679c5ade5aSArınç ÜNAL                groups:
2689c5ade5aSArınç ÜNAL                  enum: [wdt]
2699c5ade5aSArınç ÜNAL
2709c5ade5aSArınç ÜNAL          - if:
2719c5ade5aSArınç ÜNAL              properties:
2729c5ade5aSArınç ÜNAL                function:
2739c5ade5aSArınç ÜNAL                  const: wled
2749c5ade5aSArınç ÜNAL            then:
2759c5ade5aSArınç ÜNAL              properties:
2769c5ade5aSArınç ÜNAL                groups:
2779c5ade5aSArınç ÜNAL                  enum: [wled]
2789c5ade5aSArınç ÜNAL
2799c5ade5aSArınç ÜNALallOf:
2809c5ade5aSArınç ÜNAL  - $ref: pinctrl.yaml#
2819c5ade5aSArınç ÜNAL
2829c5ade5aSArınç ÜNALrequired:
2839c5ade5aSArınç ÜNAL  - compatible
2849c5ade5aSArınç ÜNAL
2859c5ade5aSArınç ÜNALadditionalProperties: false
2869c5ade5aSArınç ÜNAL
2879c5ade5aSArınç ÜNALexamples:
2889c5ade5aSArınç ÜNAL  - |
2899c5ade5aSArınç ÜNAL    pinctrl {
2909c5ade5aSArınç ÜNAL      compatible = "ralink,mt7620-pinctrl";
2919c5ade5aSArınç ÜNAL
2929c5ade5aSArınç ÜNAL      i2c_pins: i2c0-pins {
2939c5ade5aSArınç ÜNAL        pinmux {
2949c5ade5aSArınç ÜNAL          groups = "i2c";
2959c5ade5aSArınç ÜNAL          function = "i2c";
2969c5ade5aSArınç ÜNAL        };
2979c5ade5aSArınç ÜNAL      };
2989c5ade5aSArınç ÜNAL    };
299