1*ae5de77eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*ae5de77eSEmmanuel Vadot%YAML 1.2 3*ae5de77eSEmmanuel Vadot--- 4*ae5de77eSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/fsl,imx7ulp-iomuxc1.yaml# 5*ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*ae5de77eSEmmanuel Vadot 7*ae5de77eSEmmanuel Vadottitle: Freescale i.MX7ULP IOMUX Controller 8*ae5de77eSEmmanuel Vadot 9*ae5de77eSEmmanuel Vadotdescription: | 10*ae5de77eSEmmanuel Vadot i.MX 7ULP has three IOMUXC instances: IOMUXC0 for M4 ports, IOMUXC1 for A7 11*ae5de77eSEmmanuel Vadot ports and IOMUXC DDR for DDR interface. 12*ae5de77eSEmmanuel Vadot 13*ae5de77eSEmmanuel Vadot Note: This binding doc is only for the IOMUXC1 support in A7 Domain and it 14*ae5de77eSEmmanuel Vadot only supports generic pin config. 15*ae5de77eSEmmanuel Vadot 16*ae5de77eSEmmanuel Vadot Please refer to fsl,imx-pinctrl.txt in this directory for common binding 17*ae5de77eSEmmanuel Vadot part and usage. 18*ae5de77eSEmmanuel Vadot 19*ae5de77eSEmmanuel Vadotmaintainers: 20*ae5de77eSEmmanuel Vadot - Frank Li <Frank.Li@nxp.com> 21*ae5de77eSEmmanuel Vadot 22*ae5de77eSEmmanuel Vadotproperties: 23*ae5de77eSEmmanuel Vadot compatible: 24*ae5de77eSEmmanuel Vadot const: fsl,imx7ulp-iomuxc1 25*ae5de77eSEmmanuel Vadot 26*ae5de77eSEmmanuel Vadot reg: 27*ae5de77eSEmmanuel Vadot maxItems: 1 28*ae5de77eSEmmanuel Vadot 29*ae5de77eSEmmanuel VadotpatternProperties: 30*ae5de77eSEmmanuel Vadot 'grp$': 31*ae5de77eSEmmanuel Vadot type: object 32*ae5de77eSEmmanuel Vadot description: 33*ae5de77eSEmmanuel Vadot Pinctrl node's client devices use subnodes for desired pin configuration. 34*ae5de77eSEmmanuel Vadot Client device subnodes use below standard properties. 35*ae5de77eSEmmanuel Vadot 36*ae5de77eSEmmanuel Vadot properties: 37*ae5de77eSEmmanuel Vadot fsl,pins: 38*ae5de77eSEmmanuel Vadot description: 39*ae5de77eSEmmanuel Vadot Each entry consists of 5 integers which represents the mux 40*ae5de77eSEmmanuel Vadot and config setting for one pin. The first 4 integers 41*ae5de77eSEmmanuel Vadot <mux_conf_reg input_reg mux_mode input_val> are specified 42*ae5de77eSEmmanuel Vadot using a PIN_FUNC_ID macro, which can be found in 43*ae5de77eSEmmanuel Vadot imx7ulp-pinfunc.h in the device tree source folder. 44*ae5de77eSEmmanuel Vadot The last integer CONFIG is the pad setting value like 45*ae5de77eSEmmanuel Vadot pull-up on this pin. 46*ae5de77eSEmmanuel Vadot 47*ae5de77eSEmmanuel Vadot Please refer to i.MX7ULP Reference Manual for detailed 48*ae5de77eSEmmanuel Vadot CONFIG settings. 49*ae5de77eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-matrix 50*ae5de77eSEmmanuel Vadot items: 51*ae5de77eSEmmanuel Vadot items: 52*ae5de77eSEmmanuel Vadot - description: | 53*ae5de77eSEmmanuel Vadot "mux_conf_reg" indicates the offset of mux register. 54*ae5de77eSEmmanuel Vadot - description: | 55*ae5de77eSEmmanuel Vadot "input_reg" indicates the offset of select input register. 56*ae5de77eSEmmanuel Vadot - description: | 57*ae5de77eSEmmanuel Vadot "mux_mode" indicates the mux value to be applied. 58*ae5de77eSEmmanuel Vadot - description: | 59*ae5de77eSEmmanuel Vadot "input_val" indicates the select input value to be applied. 60*ae5de77eSEmmanuel Vadot - description: | 61*ae5de77eSEmmanuel Vadot CONFIG bits definition: 62*ae5de77eSEmmanuel Vadot PAD_CTL_OBE (1 << 17) 63*ae5de77eSEmmanuel Vadot PAD_CTL_IBE (1 << 16) 64*ae5de77eSEmmanuel Vadot PAD_CTL_LK (1 << 16) 65*ae5de77eSEmmanuel Vadot PAD_CTL_DSE_HI (1 << 6) 66*ae5de77eSEmmanuel Vadot PAD_CTL_DSE_STD (0 << 6) 67*ae5de77eSEmmanuel Vadot PAD_CTL_ODE (1 << 5) 68*ae5de77eSEmmanuel Vadot PAD_CTL_PUSH_PULL (0 << 5) 69*ae5de77eSEmmanuel Vadot PAD_CTL_SRE_SLOW (1 << 2) 70*ae5de77eSEmmanuel Vadot PAD_CTL_SRE_STD (0 << 2) 71*ae5de77eSEmmanuel Vadot PAD_CTL_PE (1 << 0) 72*ae5de77eSEmmanuel Vadot 73*ae5de77eSEmmanuel Vadot required: 74*ae5de77eSEmmanuel Vadot - fsl,pins 75*ae5de77eSEmmanuel Vadot 76*ae5de77eSEmmanuel Vadot additionalProperties: false 77*ae5de77eSEmmanuel Vadot 78*ae5de77eSEmmanuel Vadotrequired: 79*ae5de77eSEmmanuel Vadot - compatible 80*ae5de77eSEmmanuel Vadot - reg 81*ae5de77eSEmmanuel Vadot 82*ae5de77eSEmmanuel VadotallOf: 83*ae5de77eSEmmanuel Vadot - $ref: pinctrl.yaml# 84*ae5de77eSEmmanuel Vadot 85*ae5de77eSEmmanuel VadotunevaluatedProperties: false 86*ae5de77eSEmmanuel Vadot 87*ae5de77eSEmmanuel Vadotexamples: 88*ae5de77eSEmmanuel Vadot - | 89*ae5de77eSEmmanuel Vadot pinctrl@40ac0000 { 90*ae5de77eSEmmanuel Vadot compatible = "fsl,imx7ulp-iomuxc1"; 91*ae5de77eSEmmanuel Vadot reg = <0x40ac0000 0x1000>; 92*ae5de77eSEmmanuel Vadot 93*ae5de77eSEmmanuel Vadot lpuart4grp { 94*ae5de77eSEmmanuel Vadot fsl,pins = < 95*ae5de77eSEmmanuel Vadot 0x000c 0x0248 0x4 0x1 0x1 96*ae5de77eSEmmanuel Vadot 0x0008 0x024c 0x4 0x1 0x1 97*ae5de77eSEmmanuel Vadot >; 98*ae5de77eSEmmanuel Vadot }; 99*ae5de77eSEmmanuel Vadot }; 100