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