xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/ralink,mt7621-pinctrl.yaml (revision e6bfd18d21b225af6a0ed67ceeaf1293b7b9eba5)
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pinctrl/ralink,mt7621-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Ralink MT7621 Pin Controller
8
9maintainers:
10  - Arınç ÜNAL <arinc.unal@arinc9.com>
11  - Sergio Paracuellos <sergio.paracuellos@gmail.com>
12
13description:
14  Ralink MT7621 pin controller for MT7621 SoC.
15  The pin controller can only set the muxing of pin groups. Muxing individual
16  pins is not supported. There is no pinconf support.
17
18properties:
19  compatible:
20    const: ralink,mt7621-pinctrl
21
22patternProperties:
23  '-pins$':
24    type: object
25    patternProperties:
26      '^(.*-)?pinmux$':
27        type: object
28        description: node for pinctrl.
29        $ref: pinmux-node.yaml#
30
31        properties:
32          groups:
33            description: The pin group to select.
34            enum: [i2c, jtag, mdio, pcie, rgmii1, rgmii2, sdhci, spi, uart1,
35                   uart2, uart3, wdt]
36
37          function:
38            description: The mux function to select.
39            enum: [gpio, i2c, i2s, jtag, mdio, nand1, nand2, pcie refclk,
40                   pcie rst, pcm, rgmii1, rgmii2, sdhci, spdif2, spdif3, spi,
41                   uart1, uart2, uart3, wdt refclk, wdt rst]
42
43        required:
44          - groups
45          - function
46
47        additionalProperties: false
48
49    additionalProperties: false
50
51allOf:
52  - $ref: "pinctrl.yaml#"
53
54required:
55  - compatible
56
57additionalProperties: false
58
59examples:
60  # Pinmux controller node
61  - |
62    pinctrl {
63      compatible = "ralink,mt7621-pinctrl";
64
65      i2c_pins: i2c0-pins {
66        pinmux {
67          groups = "i2c";
68          function = "i2c";
69        };
70      };
71    };
72