| * Freescale i.MX7ULP IOMUX Controller |
| |
| i.MX 7ULP has three IOMUXC instances: IOMUXC0 for M4 ports, IOMUXC1 for A7 |
| ports and IOMUXC DDR for DDR interface. |
| |
| Note: |
| This binding doc is only for the IOMUXC1 support in A7 Domain and it only |
| supports generic pin config. |
| |
| Please also refer pinctrl-bindings.txt in this directory for generic pinctrl |
| binding. |
| |
| === Pin Controller Node === |
| |
| Required properties: |
| - compatible: "fsl,imx7ulp-iomuxc1" |
| - reg: Should contain the base physical address and size of the iomuxc |
| registers. |
| |
| === Pin Configuration Node === |
| - pinmux: One integers array, represents a group of pins mux setting. |
| The format is pinmux = <PIN_FUNC_ID>, PIN_FUNC_ID is a pin working on |
| a specific function. |
| |
| NOTE: i.MX7ULP PIN_FUNC_ID consists of 4 integers as it shares one mux |
| and config register as follows: |
| <mux_conf_reg input_reg mux_mode input_val> |
| |
| Refer to imx7ulp-pinfunc.h in in device tree source folder for all |
| available imx7ulp PIN_FUNC_ID. |
| |
| Optional Properties: |
| - drive-strength Integer. Controls Drive Strength |
| 0: Standard |
| 1: Hi Driver |
| - drive-push-pull Bool. Enable Pin Push-pull |
| - drive-open-drain Bool. Enable Pin Open-drian |
| - slew-rate: Integer. Controls Slew Rate |
| 0: Standard |
| 1: Slow |
| - bias-disable: Bool. Pull disabled |
| - bias-pull-down: Bool. Pull down on pin |
| - bias-pull-up: Bool. Pull up on pin |
| |
| Examples: |
| #include "imx7ulp-pinfunc.h" |
| |
| /* Pin Controller Node */ |
| iomuxc1: iomuxc@40ac0000 { |
| compatible = "fsl,imx7ulp-iomuxc1"; |
| reg = <0x40ac0000 0x1000>; |
| |
| /* Pin Configuration Node */ |
| pinctrl_lpuart4: lpuart4grp { |
| pinmux = < |
| IMX7ULP_PAD_PTC3__LPUART4_RX |
| IMX7ULP_PAD_PTC2__LPUART4_TX |
| >; |
| bias-pull-up; |
| }; |
| }; |