]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Bindings/pinctrl/fsl,imx8mp-pinctrl.yaml
Import DTS files from Linux 5.7
[FreeBSD/FreeBSD.git] / Bindings / pinctrl / fsl,imx8mp-pinctrl.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/pinctrl/fsl,imx8mp-pinctrl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Freescale IMX8MP IOMUX Controller
8
9 maintainers:
10   - Anson Huang <Anson.Huang@nxp.com>
11
12 description:
13   Please refer to fsl,imx-pinctrl.txt and pinctrl-bindings.txt in this directory
14   for common binding part and usage.
15
16 properties:
17   compatible:
18     const: fsl,imx8mp-iomuxc
19
20   reg:
21     maxItems: 1
22
23 # Client device subnode's properties
24 patternProperties:
25   'grp$':
26     type: object
27     description:
28       Pinctrl node's client devices use subnodes for desired pin configuration.
29       Client device subnodes use below standard properties.
30
31     properties:
32       fsl,pins:
33         description:
34           each entry consists of 6 integers and represents the mux and config
35           setting for one pin. The first 5 integers <mux_reg conf_reg input_reg
36           mux_val input_val> are specified using a PIN_FUNC_ID macro, which can
37           be found in <arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h>. The last
38           integer CONFIG is the pad setting value like pull-up on this pin. Please
39           refer to i.MX8M Plus Reference Manual for detailed CONFIG settings.
40         allOf:
41           - $ref: /schemas/types.yaml#/definitions/uint32-matrix
42           - items:
43               items:
44                 - description: |
45                     "mux_reg" indicates the offset of mux register.
46                 - description: |
47                     "conf_reg" indicates the offset of pad configuration register.
48                 - description: |
49                     "input_reg" indicates the offset of select input register.
50                 - description: |
51                     "mux_val" indicates the mux value to be applied.
52                 - description: |
53                     "input_val" indicates the select input value to be applied.
54                 - description: |
55                     "pad_setting" indicates the pad configuration value to be applied.
56
57     required:
58       - fsl,pins
59
60     additionalProperties: false
61
62 required:
63   - compatible
64   - reg
65
66 additionalProperties: false
67
68 examples:
69   # Pinmux controller node
70   - |
71     iomuxc: pinctrl@30330000 {
72         compatible = "fsl,imx8mp-iomuxc";
73         reg = <0x30330000 0x10000>;
74
75         pinctrl_uart2: uart2grp {
76             fsl,pins =
77                 <0x228 0x488 0x5F0 0x0 0x6      0x49>,
78                 <0x228 0x488 0x000 0x0 0x0      0x49>;
79         };
80     };
81
82 ...