blob: 6068be11dfe28ca4f0538329042dde5a793ab466 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pinctrl/fsl,imx8m-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Freescale IMX8M IOMUX Controller
8
9maintainers:
10 - Peng Fan <peng.fan@nxp.com>
11
12description:
13 Please refer to fsl,imx-pinctrl.txt and pinctrl-bindings.txt in this directory
14 for common binding part and usage.
15
16properties:
17 compatible:
18 enum:
19 - fsl,imx8mm-iomuxc
20 - fsl,imx8mn-iomuxc
21 - fsl,imx8mp-iomuxc
22 - fsl,imx8mq-iomuxc
23
24 reg:
25 maxItems: 1
26
27# Client device subnode's properties
28patternProperties:
29 'grp$':
30 type: object
31 description:
32 Pinctrl node's client devices use subnodes for desired pin configuration.
33 Client device subnodes use below standard properties.
34
35 properties:
36 fsl,pins:
37 description:
38 each entry consists of 6 integers and represents the mux and config
39 setting for one pin. The first 5 integers <mux_reg conf_reg input_reg
40 mux_val input_val> are specified using a PIN_FUNC_ID macro, which can
41 be found in <arch/arm64/boot/dts/freescale/imx8m[m,n,p,q]-pinfunc.h>.
42 The last integer CONFIG is the pad setting value like pull-up on this
43 pin. Please refer to i.MX8M Mini/Nano/Plus/Quad Reference Manual for
44 detailed CONFIG settings.
45 $ref: /schemas/types.yaml#/definitions/uint32-matrix
46 items:
47 items:
48 - description: |
49 "mux_reg" indicates the offset of mux register.
50 - description: |
51 "conf_reg" indicates the offset of pad configuration register.
52 - description: |
53 "input_reg" indicates the offset of select input register.
54 - description: |
55 "mux_val" indicates the mux value to be applied.
56 - description: |
57 "input_val" indicates the select input value to be applied.
58 - description: |
59 "pad_setting" indicates the pad configuration value to be
60 applied.
61
62 required:
63 - fsl,pins
64
65 additionalProperties: false
66
67allOf:
68 - $ref: pinctrl.yaml#
69
70required:
71 - compatible
72 - reg
73
74additionalProperties: false
75
76examples:
77 # Pinmux controller node
78 - |
79 iomuxc: pinctrl@30330000 {
80 compatible = "fsl,imx8mm-iomuxc";
81 reg = <0x30330000 0x10000>;
82
83 pinctrl_uart2: uart2grp {
84 fsl,pins =
85 <0x23C 0x4A4 0x4FC 0x0 0x0 0x140>,
86 <0x240 0x4A8 0x000 0x0 0x0 0x140>;
87 };
88 };
89
90...