114 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/pinctrl/fsl,imx7d-pinctrl.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Freescale IMX7D IOMUX Controller8 9maintainers:10 - Dong Aisheng <aisheng.dong@nxp.com>11 12description:13 Please refer to fsl,imx-pinctrl.txt and pinctrl-bindings.txt in this directory14 for common binding part and usage.15 16properties:17 compatible:18 oneOf:19 - enum:20 - fsl,imx7d-iomuxc21 - fsl,imx7d-iomuxc-lpsr22 23 reg:24 maxItems: 125 26 fsl,input-sel:27 description:28 phandle for main iomuxc controller which shares the input select29 register for daisy chain settings.30 $ref: /schemas/types.yaml#/definitions/phandle31 32# Client device subnode's properties33patternProperties:34 'grp$':35 type: object36 description:37 Pinctrl node's client devices use subnodes for desired pin configuration.38 Client device subnodes use below standard properties.39 40 properties:41 fsl,pins:42 description:43 each entry consists of 6 integers and represents the mux and config44 setting for one pin. The first 5 integers <mux_reg conf_reg input_reg45 mux_val input_val> are specified using a PIN_FUNC_ID macro, which can46 be found in <arch/arm/boot/dts/imx7d-pinfunc.h>. The last integer47 CONFIG is the pad setting value like pull-up on this pin. Please48 refer to i.MX7D Reference Manual for detailed CONFIG settings.49 $ref: /schemas/types.yaml#/definitions/uint32-matrix50 items:51 items:52 - description: |53 "mux_reg" indicates the offset of mux register.54 - description: |55 "conf_reg" indicates the offset of pad configuration register.56 - description: |57 "input_reg" indicates the offset of select input register.58 - description: |59 "mux_val" indicates the mux value to be applied.60 - description: |61 "input_val" indicates the select input value to be applied.62 - description: |63 "pad_setting" indicates the pad configuration value to be applied.64 65 required:66 - fsl,pins67 68 additionalProperties: false69 70allOf:71 - $ref: pinctrl.yaml#72 73required:74 - compatible75 - reg76 77if:78 properties:79 compatible:80 contains:81 enum:82 - fsl,imx7d-iomuxc-lpsr83 84then:85 required:86 - fsl,input-sel87 88additionalProperties: false89 90examples:91 - |92 iomuxc: pinctrl@30330000 {93 compatible = "fsl,imx7d-iomuxc";94 reg = <0x30330000 0x10000>;95 96 pinctrl_uart5: uart5grp {97 fsl,pins =98 <0x0160 0x03D0 0x0714 0x1 0x0 0x7e>,99 <0x0164 0x03D4 0x0000 0x1 0x0 0x76>;100 };101 };102 - |103 iomuxc_lpsr: pinctrl@302c0000 {104 compatible = "fsl,imx7d-iomuxc-lpsr";105 reg = <0x302c0000 0x10000>;106 fsl,input-sel = <&iomuxc>;107 108 pinctrl_gpio_lpsr: gpio1-grp {109 fsl,pins =110 <0x0008 0x0038 0x0000 0x0 0x0 0x59>,111 <0x000C 0x003C 0x0000 0x0 0x0 0x59>;112 };113 };114