162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/pinctrl/fsl,imx7d-pinctrl.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Freescale IMX7D IOMUX Controller 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Dong Aisheng <aisheng.dong@nxp.com> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_cidescription: 1362306a36Sopenharmony_ci Please refer to fsl,imx-pinctrl.txt and pinctrl-bindings.txt in this directory 1462306a36Sopenharmony_ci for common binding part and usage. 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ciproperties: 1762306a36Sopenharmony_ci compatible: 1862306a36Sopenharmony_ci oneOf: 1962306a36Sopenharmony_ci - enum: 2062306a36Sopenharmony_ci - fsl,imx7d-iomuxc 2162306a36Sopenharmony_ci - fsl,imx7d-iomuxc-lpsr 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci reg: 2462306a36Sopenharmony_ci maxItems: 1 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ci fsl,input-sel: 2762306a36Sopenharmony_ci description: 2862306a36Sopenharmony_ci phandle for main iomuxc controller which shares the input select 2962306a36Sopenharmony_ci register for daisy chain settings. 3062306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci# Client device subnode's properties 3362306a36Sopenharmony_cipatternProperties: 3462306a36Sopenharmony_ci 'grp$': 3562306a36Sopenharmony_ci type: object 3662306a36Sopenharmony_ci description: 3762306a36Sopenharmony_ci Pinctrl node's client devices use subnodes for desired pin configuration. 3862306a36Sopenharmony_ci Client device subnodes use below standard properties. 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci properties: 4162306a36Sopenharmony_ci fsl,pins: 4262306a36Sopenharmony_ci description: 4362306a36Sopenharmony_ci each entry consists of 6 integers and represents the mux and config 4462306a36Sopenharmony_ci setting for one pin. The first 5 integers <mux_reg conf_reg input_reg 4562306a36Sopenharmony_ci mux_val input_val> are specified using a PIN_FUNC_ID macro, which can 4662306a36Sopenharmony_ci be found in <arch/arm/boot/dts/imx7d-pinfunc.h>. The last integer 4762306a36Sopenharmony_ci CONFIG is the pad setting value like pull-up on this pin. Please 4862306a36Sopenharmony_ci refer to i.MX7D Reference Manual for detailed CONFIG settings. 4962306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-matrix 5062306a36Sopenharmony_ci items: 5162306a36Sopenharmony_ci items: 5262306a36Sopenharmony_ci - description: | 5362306a36Sopenharmony_ci "mux_reg" indicates the offset of mux register. 5462306a36Sopenharmony_ci - description: | 5562306a36Sopenharmony_ci "conf_reg" indicates the offset of pad configuration register. 5662306a36Sopenharmony_ci - description: | 5762306a36Sopenharmony_ci "input_reg" indicates the offset of select input register. 5862306a36Sopenharmony_ci - description: | 5962306a36Sopenharmony_ci "mux_val" indicates the mux value to be applied. 6062306a36Sopenharmony_ci - description: | 6162306a36Sopenharmony_ci "input_val" indicates the select input value to be applied. 6262306a36Sopenharmony_ci - description: | 6362306a36Sopenharmony_ci "pad_setting" indicates the pad configuration value to be applied. 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci required: 6662306a36Sopenharmony_ci - fsl,pins 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci additionalProperties: false 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ciallOf: 7162306a36Sopenharmony_ci - $ref: pinctrl.yaml# 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_cirequired: 7462306a36Sopenharmony_ci - compatible 7562306a36Sopenharmony_ci - reg 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ciif: 7862306a36Sopenharmony_ci properties: 7962306a36Sopenharmony_ci compatible: 8062306a36Sopenharmony_ci contains: 8162306a36Sopenharmony_ci enum: 8262306a36Sopenharmony_ci - fsl,imx7d-iomuxc-lpsr 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_cithen: 8562306a36Sopenharmony_ci required: 8662306a36Sopenharmony_ci - fsl,input-sel 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ciadditionalProperties: false 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ciexamples: 9162306a36Sopenharmony_ci - | 9262306a36Sopenharmony_ci iomuxc: pinctrl@30330000 { 9362306a36Sopenharmony_ci compatible = "fsl,imx7d-iomuxc"; 9462306a36Sopenharmony_ci reg = <0x30330000 0x10000>; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci pinctrl_uart5: uart5grp { 9762306a36Sopenharmony_ci fsl,pins = 9862306a36Sopenharmony_ci <0x0160 0x03D0 0x0714 0x1 0x0 0x7e>, 9962306a36Sopenharmony_ci <0x0164 0x03D4 0x0000 0x1 0x0 0x76>; 10062306a36Sopenharmony_ci }; 10162306a36Sopenharmony_ci }; 10262306a36Sopenharmony_ci - | 10362306a36Sopenharmony_ci iomuxc_lpsr: pinctrl@302c0000 { 10462306a36Sopenharmony_ci compatible = "fsl,imx7d-iomuxc-lpsr"; 10562306a36Sopenharmony_ci reg = <0x302c0000 0x10000>; 10662306a36Sopenharmony_ci fsl,input-sel = <&iomuxc>; 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci pinctrl_gpio_lpsr: gpio1-grp { 10962306a36Sopenharmony_ci fsl,pins = 11062306a36Sopenharmony_ci <0x0008 0x0038 0x0000 0x0 0x0 0x59>, 11162306a36Sopenharmony_ci <0x000C 0x003C 0x0000 0x0 0x0 0x59>; 11262306a36Sopenharmony_ci }; 11362306a36Sopenharmony_ci }; 114