GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / pinctrl / ralink,mt7621-pinctrl.yaml
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
7 title: Ralink MT7621 Pin Controller
8
9 maintainers:
10   - Arınç ÜNAL <arinc.unal@arinc9.com>
11   - Sergio Paracuellos <sergio.paracuellos@gmail.com>
12
13 description:
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
18 properties:
19   compatible:
20     const: ralink,mt7621-pinctrl
21
22 patternProperties:
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
51 allOf:
52   - $ref: "pinctrl.yaml#"
53
54 required:
55   - compatible
56
57 additionalProperties: false
58
59 examples:
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     };