# Copyright 2022, NXP # SPDX-License-Identifier: Apache-2.0 description: | RT600/RT500 pin control node. This node defines pin configurations in pin groups, and has the 'pinctrl' node identifier in the SOC's devicetree. Each group within the pin configuration defines a peripheral's pin configuration. Each numbered subgroup represents pins with shared configuration for that peripheral. The 'pinmux' property of each group selects the pins to be configured with these properties. For example, here is a configuration for FLEXCOMM0 pins: pinmux_flexcomm0_usart: pinmux_flexcomm0_usart { group0 { pinmux = , ; slew-rate = "normal"; drive-strength = "normal"; }; }; If only the required properties are supplied, the ICON_PIO register will be assigned the following values: IOCON_FUNC=, IOCON_PUPDENA = 0, IOCON_PUPDSEL = 0, IOCON_IBENA = 0, IOCON_SLEWRATE = , IOCON_FULLDRIVE = , IOCON_AMENA = 0, IOCON_ODENA = 0, IOCON_IIENA = 0, Note the inherited pinctrl properties defined below have the following effects: drive-open-drain: IOCON_ODENA=1 bias-pull-up: IOCON_PUPDENA=1, IOCON_PUPSEL=1 bias-pull-down: IOCON_PUPDENA=1, IOCON_PUPSEL=0 input-enable: IOCON_IBENA=1 compatible: "nxp,rt-iocon-pinctrl" include: base.yaml child-binding: description: iMX RT IOCON pin controller pin group child-binding: description: | iMX RT IOCON pin controller pin configuration node include: - name: pincfg-node.yaml property-allowlist: - drive-open-drain - bias-pull-up - bias-pull-down - input-enable properties: pinmux: required: true type: array description: | Pin mux selection for this group. See the SOC level pinctrl header file in NXP's HAL for a defined list of these options. slew-rate: required: true type: string enum: - "normal" - "slow" description: | Pin output slew rate. Sets the SLEWRATE field in the IOCON register. 0 SLEWRATE_0- normal mode, output slew rate is standard 1 SLEWRATE_1- slow mode, output slew rate is slower drive-strength: required: true type: string enum: - "normal" - "high" description: | Pin output drive strength. Sets the FULLDRIVE field in the IOCON register. 0 FULLDRIVE_0- Normal output drive mode 1 FULLDRIVE_1- Full output drive mode, output strength is twice the drive strength of normal drive mode. nxp,invert: type: boolean description: | Invert the pin input logic level nxp,analog-mode: type: boolean description: | Set the pin to analog mode. Sets AMENA=1