ti,tiva-c-pinctrl

Description

TI Tiva C Series pin controller.

Device pin configuration should be placed in child nodes of this node.
Each child node specifies a single pinmux value that encodes the port,
pin number, mux function, and peripheral type in one 32-bit integer
(see dt-bindings/pinctrl/tiva-c-pinctrl.h):

  Bits [15:0]  — port index  (0=A … 5=F)
  Bits [18:16] — pin number  (0-7)
  Bits [22:19] — mux function (alternate-function 0-15)
  Bits [25:23] — pin type    (0=GPIO, 1=UART, … 6=PWM)

Use the TIVA_C_PINMUX() helper macro from the dt-bindings header.

Example for UART0 on PA0/PA1:

  #include <dt-bindings/pinctrl/tiva-c-pinctrl.h>

  &pinctrl {
    uart0_rx_pa0: uart0_rx_pa0 {
      pinmux = <TIVA_C_PINMUX(TIVA_C_PORT_A, 0, 1, TIVA_C_TYPE_UART)>;
    };
    uart0_tx_pa1: uart0_tx_pa1 {
      pinmux = <TIVA_C_PINMUX(TIVA_C_PORT_A, 1, 1, TIVA_C_TYPE_UART)>;
    };
  };

Properties

Top level properties

These property descriptions apply to “ti,tiva-c-pinctrl” nodes themselves. This page also describes child node properties in the following sections.

Properties not inherited from the base binding file.

(None)

Child node properties

Name

Type

Details

pinmux

int

32-bit pinmux value built with TIVA_C_PINMUX(port, pin, mux, type).
Encodes port index (lower 16 bits) and pin number, mux function,
and peripheral type (upper 16 bits) in a single value.

This property is required.

bias-disable

boolean

disable any pin bias

bias-pull-up

boolean

enable pull-up resistor

bias-pull-down

boolean

enable pull-down resistor

drive-open-drain

boolean

drive with open drain (hardware AND)